[PATCH] D87790: [ARM] Select f32 constants with vmov.f16
Dave Green via Phabricator via llvm-commits
llvm-commits at lists.llvm.org
Wed Sep 16 13:22:48 PDT 2020
dmgreen created this revision.
dmgreen added reviewers: efriedma, SjoerdMeijer, simon_tatham, ostannard.
Herald added subscribers: danielkiss, hiraditya, kristof.beyls.
Herald added a project: LLVM.
dmgreen requested review of this revision.
This adds lowering for f32 values using the vmov.f16, which zero's the top bits whilst setting the lower bits to a pattern. This range of values does not often come up, except where a f16 constant value has been converted to a f32.
The tablegen pattern was a little tricky to get to work, but it seems happy as it is here.
https://reviews.llvm.org/D87790
Files:
llvm/lib/Target/ARM/ARMISelLowering.cpp
llvm/lib/Target/ARM/ARMInstrVFP.td
llvm/lib/Target/ARM/MCTargetDesc/ARMAddressingModes.h
llvm/test/CodeGen/ARM/cmse-clear-float-hard.ll
llvm/test/CodeGen/ARM/fp16-bitcast.ll
-------------- next part --------------
A non-text attachment was scrubbed...
Name: D87790.292325.patch
Type: text/x-patch
Size: 11722 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20200916/5c56ca64/attachment-0001.bin>
More information about the llvm-commits
mailing list