This is an archive of the discontinued LLVM Phabricator instance.

[AMDGPU][FIX] Proper load-store-vectorizer result with opaque pointers
ClosedPublic

Authored by jdoerfert on Apr 13 2022, 10:39 AM.

Details

Summary

The original code relied on the fact that we needed a bitcast
instruction (for non constant base objects). With opaque pointers there
might not be a bitcast. Always check if reordering is required instead.

Fixes: https://github.com/llvm/llvm-project/issues/54896

Diff Detail

Event Timeline

jdoerfert created this revision.Apr 13 2022, 10:39 AM
Herald added a project: Restricted Project. · View Herald TranscriptApr 13 2022, 10:39 AM
jdoerfert requested review of this revision.Apr 13 2022, 10:39 AM
Herald added a project: Restricted Project. · View Herald TranscriptApr 13 2022, 10:39 AM
Herald added a subscriber: wdng. · View Herald Transcript

Clang format

arsenm accepted this revision.Apr 13 2022, 10:41 AM

LGTM with commit message fixed

This revision is now accepted and ready to land.Apr 13 2022, 10:41 AM

Make sure also the non-opaque case works properly

jdoerfert retitled this revision from [AMDGPU][FIX] Let load-store-vectorizer is working with opaque pointers to [AMDGPU][FIX] Proper load-store-vectorizer result with opaque pointers.Apr 13 2022, 11:02 AM
arsenm accepted this revision.Apr 13 2022, 11:05 AM
This revision was landed with ongoing or failed builds.Apr 15 2022, 11:44 AM
This revision was automatically updated to reflect the committed changes.