[llvm] [SelectionDAG] Fold (icmp eq/ne (shift X, C), 0) -> (icmp eq/ne X, 0) (PR #88801)
Matt Arsenault via llvm-commits
llvm-commits at lists.llvm.org
Tue May 7 02:18:49 PDT 2024
================
@@ -4282,6 +4282,38 @@ SelectionDAG::computeOverflowForSignedMul(SDValue N0, SDValue N1) const {
return OFK_Sometime;
}
+SDNodeFlags SelectionDAG::computeShiftFlags(SDValue Op) const {
+ assert((Op.getOpcode() == ISD::SRL || Op.getOpcode() == ISD::SRA ||
+ Op.getOpcode() == ISD::SHL) &&
+ "Expecting an SHL/SRL/SRA operation.");
+ SDValue Op0 = Op.getOperand(0);
+ SDNodeFlags Flags = Op->getFlags();
+
----------------
arsenm wrote:
Skip doing anything if the flags are already set?
https://github.com/llvm/llvm-project/pull/88801
More information about the llvm-commits
mailing list