This is an archive of the discontinued LLVM Phabricator instance.

[X86][clang] Lift _BitInt() supported max width.
ClosedPublic

Authored by FreddyYe on Dec 1 2022, 10:07 PM.

Diff Detail

Event Timeline

FreddyYe created this revision.Dec 1 2022, 10:07 PM
Herald added a project: Restricted Project. · View Herald TranscriptDec 1 2022, 10:07 PM
FreddyYe requested review of this revision.Dec 1 2022, 10:07 PM
Herald added a project: Restricted Project. · View Herald TranscriptDec 1 2022, 10:07 PM
Herald added a subscriber: cfe-commits. · View Herald Transcript

Do other targets not support > 128 bit integers, or is this PR only the first conservative step of lifting the limit?

Do other targets not support > 128 bit integers, or is this PR only the first conservative step of lifting the limit?

I temporary only enabled > 128 bit FP conversion for X86 in https://reviews.llvm.org/D137241, since I highly relied on end-to-end tests to implement that pass and I don't have other targets' environment to verify. So same to this patch, I only lift the limit for X86. Hope other targets will follow us to enable for themselves. WDYT?

Do other targets not support > 128 bit integers, or is this PR only the first conservative step of lifting the limit?

I temporary only enabled > 128 bit FP conversion for X86 in https://reviews.llvm.org/D137241, since I highly relied on end-to-end tests to implement that pass and I don't have other targets' environment to verify. So same to this patch, I only lift the limit for X86. Hope other targets will follow us to enable for themselves. WDYT?

A right, I was confused because I saw llvm/test/CodeGen/AArch64/O0-pipeline.ll running the new pass on AArch64, but actually it doesn't do anything unless it's enabled in llvm/lib/Target/*/*ISelLowering.cpp. Got it, thanks!

mgehre-amd accepted this revision.Dec 2 2022, 12:24 AM
This revision is now accepted and ready to land.Dec 2 2022, 12:24 AM

Do other targets not support > 128 bit integers, or is this PR only the first conservative step of lifting the limit?

I temporary only enabled > 128 bit FP conversion for X86 in https://reviews.llvm.org/D137241, since I highly relied on end-to-end tests to implement that pass and I don't have other targets' environment to verify. So same to this patch, I only lift the limit for X86. Hope other targets will follow us to enable for themselves. WDYT?

A right, I was confused because I saw llvm/test/CodeGen/AArch64/O0-pipeline.ll running the new pass on AArch64, but actually it doesn't do anything unless it's enabled in llvm/lib/Target/*/*ISelLowering.cpp. Got it, thanks!

Yes. Actually, that's the framework you added before. :)

Thanks for working on this! LGTM, but please add a release note when landing so that users know about this improvement!

FreddyYe updated this revision to Diff 480305.Dec 5 2022, 6:18 PM

Rebase and add release note.

THX for review. I'll land!

This revision was landed with ongoing or failed builds.Dec 5 2022, 7:02 PM
This revision was automatically updated to reflect the committed changes.