This is an archive of the discontinued LLVM Phabricator instance.

[ARM][MVE] Enable narrow vector length
ClosedPublic

Authored by samparker on Nov 7 2019, 6:29 AM.

Details

Summary

Remove the restriction, from the mve tail predication pass, that the all masked vectors instructions need to be 128-bits. This allows us to supported extending loads and truncating stores.

Diff Detail

Event Timeline

samparker created this revision.Nov 7 2019, 6:29 AM
Herald added a project: Restricted Project. · View Herald TranscriptNov 7 2019, 6:29 AM

All the codegen tests are dlstp.32 loops, but do we have or need to have some tests with size = 8, 16, or 64 too?

Good point! I'll add more.

samparker updated this revision to Diff 229047.Nov 13 2019, 2:57 AM

Added a test for i8 to i16 conversions. I remembered that there's more tests in the parent ticket that handle sizes other than 32.

SjoerdMeijer accepted this revision.Nov 13 2019, 3:14 AM

Okay, thanks, LGTM

This revision is now accepted and ready to land.Nov 13 2019, 3:14 AM
This revision was automatically updated to reflect the committed changes.