[PATCH] D136447: [ARM] Fix vector ule zero lowering
Aaron Puchert via Phabricator via llvm-commits
llvm-commits at lists.llvm.org
Wed Nov 2 08:57:25 PDT 2022
aaronpuchert added inline comments.
================
Comment at: llvm/lib/Target/ARM/ARMISelLowering.cpp:15209-15218
// vcmp X, 0, cc -> vcmpz X, cc
if (isZeroVector(Op1))
return DAG.getNode(ARMISD::VCMPZ, dl, VT, Op0, N->getOperand(2));
unsigned SwappedCond = getSwappedCondition(Cond);
if (isValidMVECond(SwappedCond, VT.isFloatingPoint())) {
// vcmp 0, X, cc -> vcmpz X, reversed(cc)
----------------
dmgreen wrote:
> aaronpuchert wrote:
> > Does something need to be done here?
> Hmm. Don't think so. What kind of thing do you mean?
It seems to me that we're also creating `ARMISD::VCMPZ` nodes here, and it doesn't seem obvious to me that we're excluding the problematic `ARMCC::CondCodes`. But I'm probably missing something, just wanted to make sure you're aware of this function.
CHANGES SINCE LAST ACTION
https://reviews.llvm.org/D136447/new/
https://reviews.llvm.org/D136447
More information about the llvm-commits
mailing list