Lines Matching defs:IC
46 static Value *simplifyValueKnownNonZero(Value *V, InstCombinerImpl &IC,
60 A = IC.Builder.CreateSub(A, B);
61 return IC.Builder.CreateShl(One, A);
68 IC.isKnownToBeAPowerOfTwo(I->getOperand(0), false, 0, &CxtI)) {
71 if (Value *V2 = simplifyValueKnownNonZero(I->getOperand(0), IC, CxtI)) {
72 IC.replaceOperand(*I, 0, V2);
605 auto createPowiExpr = [](BinaryOperator &I, InstCombinerImpl &IC, Value *X,
607 InstCombiner::BuilderTy &Builder = IC.Builder;
1473 InstCombinerImpl &IC) {
1483 Value *NarrowOp = IC.Builder.CreateBinOp(Opcode, X, Y);
1491 Constant *TruncC = IC.getLosslessUnsignedTrunc(C, X->getType());
1497 return new ZExtInst(IC.Builder.CreateBinOp(Opcode, X, TruncC), Ty);
1502 Constant *TruncC = IC.getLosslessUnsignedTrunc(C, X->getType());
1508 return new ZExtInst(IC.Builder.CreateBinOp(Opcode, TruncC, X), Ty);
2008 InstCombinerImpl &IC) {
2065 return IC.replaceInstUsesWith(I, ConstantInt::getNullValue(I.getType()));