Lines Matching refs:AndCst
199 /// If AndCst is non-null, then the loaded value is masked with that constant
203 CmpInst &ICI, ConstantInt *AndCst) {
289 if (AndCst) Elt = ConstantExpr::getAnd(Elt, AndCst);
1102 case Instruction::And: // (icmp pred (and X, AndCST), RHS)
1105 ConstantInt *AndCST = cast<ConstantInt>(LHSI->getOperand(1));
1116 (!AndCST->isNegative() && RHSV.isNonNegative())) {
1119 ConstantExpr::getZExt(AndCST, Cast->getSrcTy()));
1135 ConstantExpr::getTrunc(AndCST, Ty));
1153 Type *AndTy = AndCST->getType(); // Type of the and.
1168 AndCST->getValue()) == 0)
1196 NewAndCST = ConstantExpr::getLShr(AndCST, ShAmt);
1198 NewAndCST = ConstantExpr::getShl(AndCST, ShAmt);
1216 NS = Builder->CreateShl(AndCST, Shift->getOperand(1));
1219 NS = Builder->CreateLShr(AndCST, Shift->getOperand(1));
1230 // Replace ((X & AndCST) > RHSV) with ((X & AndCST) != 0), if any
1231 // bit set in (X & AndCST) will produce a result greater than RHSV.
1233 unsigned NTZ = AndCST->getValue().countTrailingZeros();
1234 if ((NTZ < AndCST->getBitWidth()) &&
1235 APInt::getOneBitSet(AndCST->getBitWidth(), NTZ).ugt(RHSV))