This is an archive of the discontinued LLVM Phabricator instance.

AArch64/GlobalISel: Narrow stack passed argument access size
ClosedPublic

Authored by arsenm on Sep 25 2020, 7:51 AM.

Details

Summary

This fixes a verifier error in the testcase from bug 47619.

The stack passed s3 value was widened to 4-bytes, and producing a
4-byte memory access with a < 1 byte result type. We need to either
widen the result type or narrow the access size. This copies the code
directly from the AMDGPU handling, which narrows the load size. I
don't like that every target has to handle this, but this is currently
broken on the 11 release branch and this is the simplest fix.

This reverts commit 42bfa7c63b85e76fe16521d1671afcafaf8f64ed.

Diff Detail

Event Timeline

arsenm created this revision.Sep 25 2020, 7:51 AM
arsenm requested review of this revision.Sep 25 2020, 7:51 AM
aemerson accepted this revision.Sep 25 2020, 9:58 AM

LGTM.

This revision is now accepted and ready to land.Sep 25 2020, 9:58 AM