This is an archive of the discontinued LLVM Phabricator instance.

[MVE] VMOVX patterns
ClosedPublic

Authored by dmgreen on Aug 27 2019, 2:42 AM.

Details

Summary

This adds fp16 VMOVX patterns, using the same patterns as rL362482 with some adjustments for MVE. It allows us to move fp16 registers without going into and out of gprs.

VMOVX is able to move the top bits from a fp16 in a fp reg into the bottom bits of another register, zeroing the rest. This can be used for odd MVE register lanes. The top bits are not read by fp16 instructions, so no move is required there if we are dealing with even lanes.

Diff Detail

Repository
rL LLVM

Event Timeline

dmgreen created this revision.Aug 27 2019, 2:42 AM
Herald added a project: Restricted Project. · View Herald TranscriptAug 27 2019, 2:42 AM
This revision is now accepted and ready to land.Aug 27 2019, 5:33 AM
This revision was automatically updated to reflect the committed changes.