[llvm] 5fb990a - [SelectionDAG] Use isNullConstant (NFC)
Kazu Hirata via llvm-commits
llvm-commits at lists.llvm.org
Sat Sep 2 09:33:01 PDT 2023
Author: Kazu Hirata
Date: 2023-09-02T09:32:43-07:00
New Revision: 5fb990ac514ee33acbf21973e1ac36ce6ef56b35
URL: https://github.com/llvm/llvm-project/commit/5fb990ac514ee33acbf21973e1ac36ce6ef56b35
DIFF: https://github.com/llvm/llvm-project/commit/5fb990ac514ee33acbf21973e1ac36ce6ef56b35.diff
LOG: [SelectionDAG] Use isNullConstant (NFC)
Added:
Modified:
llvm/lib/CodeGen/SelectionDAG/TargetLowering.cpp
Removed:
################################################################################
diff --git a/llvm/lib/CodeGen/SelectionDAG/TargetLowering.cpp b/llvm/lib/CodeGen/SelectionDAG/TargetLowering.cpp
index cc7f29e686077a..bd1940994a87f0 100644
--- a/llvm/lib/CodeGen/SelectionDAG/TargetLowering.cpp
+++ b/llvm/lib/CodeGen/SelectionDAG/TargetLowering.cpp
@@ -2730,7 +2730,7 @@ bool TargetLowering::SimplifyDemandedBits(
// neg x with only low bit demanded is simply x.
if (Op.getOpcode() == ISD::SUB && DemandedBits.isOne() &&
- isa<ConstantSDNode>(Op0) && cast<ConstantSDNode>(Op0)->isZero())
+ isNullConstant(Op0))
return TLO.CombineTo(Op, Op1);
// Attempt to avoid multi-use ops if we don't need anything from them.
@@ -9738,20 +9738,18 @@ SDValue TargetLowering::lowerCmpEqZeroToCtlzSrl(SDValue Op,
return SDValue();
ISD::CondCode CC = cast<CondCodeSDNode>(Op.getOperand(2))->get();
SDLoc dl(Op);
- if (ConstantSDNode *C = dyn_cast<ConstantSDNode>(Op.getOperand(1))) {
- if (C->isZero() && CC == ISD::SETEQ) {
- EVT VT = Op.getOperand(0).getValueType();
- SDValue Zext = Op.getOperand(0);
- if (VT.bitsLT(MVT::i32)) {
- VT = MVT::i32;
- Zext = DAG.getNode(ISD::ZERO_EXTEND, dl, VT, Op.getOperand(0));
- }
- unsigned Log2b = Log2_32(VT.getSizeInBits());
- SDValue Clz = DAG.getNode(ISD::CTLZ, dl, VT, Zext);
- SDValue Scc = DAG.getNode(ISD::SRL, dl, VT, Clz,
- DAG.getConstant(Log2b, dl, MVT::i32));
- return DAG.getNode(ISD::TRUNCATE, dl, MVT::i32, Scc);
- }
+ if (isNullConstant(Op.getOperand(1)) && CC == ISD::SETEQ) {
+ EVT VT = Op.getOperand(0).getValueType();
+ SDValue Zext = Op.getOperand(0);
+ if (VT.bitsLT(MVT::i32)) {
+ VT = MVT::i32;
+ Zext = DAG.getNode(ISD::ZERO_EXTEND, dl, VT, Op.getOperand(0));
+ }
+ unsigned Log2b = Log2_32(VT.getSizeInBits());
+ SDValue Clz = DAG.getNode(ISD::CTLZ, dl, VT, Zext);
+ SDValue Scc = DAG.getNode(ISD::SRL, dl, VT, Clz,
+ DAG.getConstant(Log2b, dl, MVT::i32));
+ return DAG.getNode(ISD::TRUNCATE, dl, MVT::i32, Scc);
}
return SDValue();
}
More information about the llvm-commits
mailing list