@@ -702,11 +702,6 @@ static void computeKnownBitsFromCmp(const Value *V, CmpInst::Predicate Pred,
702702 Known.Zero |= ~*C;
703703 if (match (Y, m_APInt (Mask)))
704704 Known.One |= *C & ~*Mask;
705- // assume(V ^ Mask = C)
706- } else if (match (LHS, m_Xor (m_V, m_APInt (Mask))) &&
707- match (RHS, m_APInt (C))) {
708- // Equivalent to assume(V == Mask ^ C)
709- Known = Known.unionWith (KnownBits::makeConstant (*C ^ *Mask));
710705 // assume(V << ShAmt = C)
711706 } else if (match (LHS, m_Shl (m_V, m_ConstantInt (ShAmt))) &&
712707 match (RHS, m_APInt (C)) && ShAmt < BitWidth) {
@@ -10217,10 +10212,9 @@ void llvm::findValuesAffectedByCondition(
1021710212 if (ICmpInst::isEquality (Pred)) {
1021810213 if (HasRHSC) {
1021910214 Value *Y;
10220- // (X & C) or (X | C) or (X ^ C) .
10215+ // (X & C) or (X | C).
1022110216 // (X << C) or (X >>_s C) or (X >>_u C).
10222- if (match (A, m_BitwiseLogic (m_Value (X), m_ConstantInt ())) ||
10223- match (A, m_Shift (m_Value (X), m_ConstantInt ())))
10217+ if (match (A, m_Shift (m_Value (X), m_ConstantInt ())))
1022410218 AddAffected (X);
1022510219 else if (match (A, m_And (m_Value (X), m_Value (Y))) ||
1022610220 match (A, m_Or (m_Value (X), m_Value (Y)))) {
0 commit comments