This is an archive of the discontinued LLVM Phabricator instance.

[AMDGPURewriteOutArguments] Don't use pointer element type
ClosedPublic

Authored by nikic on Feb 8 2022, 5:35 AM.

Details

Summary

Instead of using the pointer element type, look at how the pointer is actually being used in store instructions, while looking through bitcasts. This makes the transform compatible with opaque pointers and a bit more general.

It's worth noting that I have dropped the 3-vector to 4-vector shufflevector special case, because this is now handled in a different way: If the value is actually used as a 4-vector, then we're directly going to use that type, instead of shuffling to a 3-vector in between.

Diff Detail

Event Timeline

nikic created this revision.Feb 8 2022, 5:35 AM
nikic requested review of this revision.Feb 8 2022, 5:35 AM
Herald added a project: Restricted Project. · View Herald TranscriptFeb 8 2022, 5:35 AM
arsenm accepted this revision.Feb 8 2022, 6:43 AM
This revision is now accepted and ready to land.Feb 8 2022, 6:43 AM
This revision was landed with ongoing or failed builds.Feb 8 2022, 7:10 AM
This revision was automatically updated to reflect the committed changes.