Instead of loading 0 from a constant pool, it's of course much better to materialize it using an fmov and the zero register.
Thanks to Ahmed Bougacha for the suggestion.
Paths
| Differential D37102
[AArch64] Add FMOVH0: materialize 0 using zero register for f16 values ClosedPublic Authored by SjoerdMeijer on Aug 24 2017, 3:31 AM.
Details Summary Instead of loading 0 from a constant pool, it's of course much better to materialize it using an fmov and the zero register. Thanks to Ahmed Bougacha for the suggestion.
Diff Detail Event TimelineHerald added subscribers: kristof.beyls, javed.absar, aemerson. · View Herald TranscriptAug 24 2017, 3:31 AM
This revision is now accepted and ready to land.Aug 24 2017, 4:22 AM Closed by commit rL311662: [AArch64] Add FMOVH0: materialize 0 using zero register for f16 values (authored by SjoerdMeijer). · Explain WhyAug 24 2017, 7:48 AM This revision was automatically updated to reflect the committed changes.
Revision Contents
Diff 112531 lib/Target/AArch64/AArch64AsmPrinter.cpp
lib/Target/AArch64/AArch64ISelLowering.cpp
lib/Target/AArch64/AArch64InstrInfo.cpp
lib/Target/AArch64/AArch64InstrInfo.td
test/CodeGen/AArch64/f16-imm.ll
|
This code path is not tested.