[PATCH] D97859: [LegalizeDAG] Implement promotion rules for SELECT_CC
Craig Topper via Phabricator via llvm-commits
llvm-commits at lists.llvm.org
Thu Mar 4 09:09:55 PST 2021
craig.topper added inline comments.
================
Comment at: llvm/lib/CodeGen/SelectionDAG/LegalizeDAG.cpp:4727
+ if (NVT.isInteger()) {
+ ExtOp = isSignedIntSetCC(CCCode) ? ISD::SIGN_EXTEND : ISD::ZERO_EXTEND;
+ }
----------------
If NVT is Integer, but operand 0 and 1 are floating point, I'm not sure we should be calling isSignedIntSetCC. The floating point and integer condition codes are shared. So SETGT, SETLT, SETLE, SETGE are also valid for floating point, but they wouldn't mean anything for determining if you should SIGN_EXTEND or ZERO_EXTEND the true/false values of the SELECT_CC.
But I guess since this hasn't worked properly before now maybe this doesn't happen and it doesn't matter.
CHANGES SINCE LAST ACTION
https://reviews.llvm.org/D97859/new/
https://reviews.llvm.org/D97859
More information about the llvm-commits
mailing list