[PATCH] D70667: [ARM] Fix instruction selection for ARMISD::CMOV with f16 type
Dave Green via Phabricator via llvm-commits
llvm-commits at lists.llvm.org
Wed Nov 27 09:50:38 PST 2019
dmgreen accepted this revision.
dmgreen added a comment.
This revision is now accepted and ready to land.
Yeah I think ran into this on one or two of the MVE cases.
Looks sensible to me, with a minor point about HasFPRegs.
================
Comment at: llvm/lib/Target/ARM/ARMInstrVFP.td:2287
+ (ARMcmov HPR:$Sn, HPR:$Sm, cmovpred:$p))]>,
+ RegConstraint<"$Sd = $Sn">, Requires<[HasFPRegs16]>;
} // hasSideEffects
----------------
If this is ending up as a VMOVS, it can actually be HasFPRegs? I guess it shouldn't matter though, if we are not ever selecting the ARMcmov for an fp16.
The itinerary could also be IIC_fpUNA32, but I don't think they will really be used anywhere or make much of a difference.
If HasFPRegs looks like it will cause problems in any way, then HasFPRegs16 would be fine too.
Repository:
rG LLVM Github Monorepo
CHANGES SINCE LAST ACTION
https://reviews.llvm.org/D70667/new/
https://reviews.llvm.org/D70667
More information about the llvm-commits
mailing list