Home | History | Annotate | Download | only in Scalar

Lines Matching refs:Opnd1

175     bool CombineXorOpnd(Instruction *I, XorOpnd *Opnd1, APInt &ConstOpnd,
177 bool CombineXorOpnd(Instruction *I, XorOpnd *Opnd1, XorOpnd *Opnd2,
1253 // Helper function of OptimizeXor(). It tries to simplify "Opnd1 ^ ConstOpnd"
1260 bool Reassociate::CombineXorOpnd(Instruction *I, XorOpnd *Opnd1,
1266 if (Opnd1->isOrExpr() && Opnd1->getConstPart() != 0) {
1267 if (!Opnd1->getValue()->hasOneUse())
1270 const APInt &C1 = Opnd1->getConstPart();
1274 Value *X = Opnd1->getSymbolicPart();
1279 if (Instruction *T = dyn_cast<Instruction>(Opnd1->getValue()))
1288 // "Opnd1 ^ Opnd2 ^ ConstOpnd" into "R ^ C", where C would be 0, and R is a
1295 bool Reassociate::CombineXorOpnd(Instruction *I, XorOpnd *Opnd1, XorOpnd *Opnd2,
1297 Value *X = Opnd1->getSymbolicPart();
1301 // This many instruction become dead.(At least "Opnd1 ^ Opnd2" will die.)
1303 if (Opnd1->getValue()->hasOneUse())
1314 if (Opnd1->isOrExpr() != Opnd2->isOrExpr()) {
1316 std::swap(Opnd1, Opnd2);
1318 const APInt &C1 = Opnd1->getConstPart();
1332 } else if (Opnd1->isOrExpr()) {
1335 const APInt &C1 = Opnd1->getConstPart();
1351 const APInt &C1 = Opnd1->getConstPart();
1359 if (Instruction *T = dyn_cast<Instruction>(Opnd1->getValue()))