This is an archive of the discontinued LLVM Phabricator instance.

[AArch64][SVE] Fix range for DUP immediates (16bit elts)
ClosedPublic

Authored by sdesmalen on Jun 1 2018, 12:33 AM.

Details

Summary

For immediates used in DUP instructions that have the range
-128 to 127, or a multiple of 256 in the range -32768 to 32512,
one could argue that when the result element size is 16bits (.h),
the value can be considered both signed and unsigned.

Diff Detail

Repository
rL LLVM

Event Timeline

sdesmalen created this revision.Jun 1 2018, 12:33 AM
fhahn accepted this revision.Jun 1 2018, 3:29 AM

LGTM. AFAIK this is consistent with the interpretation of GAS too.

test/MC/AArch64/SVE/mov.s
201 ↗(On Diff #149404)

Maybe also add a case with the maximum supported immediate 65280 ?

This revision is now accepted and ready to land.Jun 1 2018, 3:29 AM
sdesmalen marked an inline comment as done.Jun 4 2018, 12:27 AM
This revision was automatically updated to reflect the committed changes.