Lines Matching refs:AndRHS
152 ConstantInt *AndRHS, in OptAndOp() argument
157 Together = ConstantExpr::getAnd(AndRHS, OpRHS); in OptAndOp()
163 Value *And = Builder->CreateAnd(X, AndRHS); in OptAndOp()
174 return BinaryOperator::CreateAnd(Or, AndRHS); in OptAndOp()
182 Together = ConstantExpr::getXor(AndRHS, Together); in OptAndOp()
195 const APInt &AndRHSV = AndRHS->getValue(); in OptAndOp()
215 Value *NewAnd = Builder->CreateAnd(X, AndRHS); in OptAndOp()
217 return BinaryOperator::CreateXor(NewAnd, AndRHS); in OptAndOp()
228 uint32_t BitWidth = AndRHS->getType()->getBitWidth(); in OptAndOp()
231 ConstantInt *CI = Builder->getInt(AndRHS->getValue() & ShlMask); in OptAndOp()
237 if (CI != AndRHS) { // Reducing bits set in and. in OptAndOp()
248 uint32_t BitWidth = AndRHS->getType()->getBitWidth(); in OptAndOp()
251 ConstantInt *CI = Builder->getInt(AndRHS->getValue() & ShrMask); in OptAndOp()
257 if (CI != AndRHS) { in OptAndOp()
268 uint32_t BitWidth = AndRHS->getType()->getBitWidth(); in OptAndOp()
271 Constant *C = Builder->getInt(AndRHS->getValue() & ShrMask); in OptAndOp()
272 if (C == AndRHS) { // Masking out bits shifted in. in OptAndOp()
277 return BinaryOperator::CreateAnd(ShVal, AndRHS, TheAnd.getName()); in OptAndOp()
1330 if (ConstantInt *AndRHS = dyn_cast<ConstantInt>(Op1)) { in visitAnd() local
1331 const APInt &AndRHSMask = AndRHS->getValue(); in visitAnd()
1347 Value *NewRHS = Builder->CreateAnd(Op0RHS, AndRHS, in visitAnd()
1354 Value *NewLHS = Builder->CreateAnd(Op0LHS, AndRHS, in visitAnd()
1365 if (Value *V = FoldLogicalPlusAnd(Op0LHS, Op0RHS, AndRHS, false, I)) in visitAnd()
1366 return BinaryOperator::CreateAnd(V, AndRHS); in visitAnd()
1367 if (Value *V = FoldLogicalPlusAnd(Op0RHS, Op0LHS, AndRHS, false, I)) in visitAnd()
1368 return BinaryOperator::CreateAnd(V, AndRHS); // Add commutes in visitAnd()
1375 if (Value *V = FoldLogicalPlusAnd(Op0LHS, Op0RHS, AndRHS, true, I)) in visitAnd()
1376 return BinaryOperator::CreateAnd(V, AndRHS); in visitAnd()
1380 return BinaryOperator::CreateAnd(Op0RHS, AndRHS); in visitAnd()
1391 return BinaryOperator::CreateAnd(NewNeg, AndRHS); in visitAnd()
1400 if (AndRHSMask == 1 && Op0LHS == AndRHS) { in visitAnd()
1409 if (Instruction *Res = OptAndOp(Op0I, Op0CI, AndRHS, I)) in visitAnd()
1424 C3 = ConstantExpr::getAnd(C3, AndRHS); in visitAnd()