Lines Matching defs:NewOps

80                                               ArrayRef<Value *> NewOps,
4341 SmallVector<Value *, 8> NewOps;
4346 NewOps.push_back(NewInstOp);
4349 NewOps.push_back(InstOp);
4354 if (isa<UndefValue>(NewOps.back()) && !Q.CanUseUndef)
4371 if (NewOps[0] == ConstantExpr::getBinOpIdentity(Opcode, I->getType()))
4372 return NewOps[1];
4373 if (NewOps[1] == ConstantExpr::getBinOpIdentity(Opcode, I->getType(),
4375 return NewOps[0];
4380 NewOps[0] == NewOps[1]) {
4389 return NewOps[0];
4396 NewOps[0] == NewOps[1] &&
4397 any_of(Ops, [=](const auto &Rep) { return NewOps[0] == Rep.second; }))
4408 if ((NewOps[0] == Absorber || NewOps[1] == Absorber) &&
4417 if (NewOps.size() == 2 && match(NewOps[1], m_Zero()))
4418 return NewOps[0];
4435 ::simplifyInstructionWithOperands(I, NewOps, Q, MaxRecurse));
4441 for (Value *NewOp : NewOps) {
7094 ArrayRef<Value *> NewOps,
7105 if (llvm::all_of(NewOps, [](Value *V) { return isa<Constant>(V); })) {
7106 SmallVector<Constant *, 8> NewConstOps(NewOps.size());
7107 transform(NewOps, NewConstOps.begin(),
7113 return simplifyFNegInst(NewOps[0], I->getFastMathFlags(), Q, MaxRecurse);
7115 return simplifyFAddInst(NewOps[0], NewOps[1], I->getFastMathFlags(), Q,
7119 NewOps[0], NewOps[1], Q.IIQ.hasNoSignedWrap(cast<BinaryOperator>(I)),
7122 return simplifyFSubInst(NewOps[0], NewOps[1], I->getFastMathFlags(), Q,
7126 NewOps[0], NewOps[1], Q.IIQ.hasNoSignedWrap(cast<BinaryOperator>(I)),
7129 return simplifyFMulInst(NewOps[0], NewOps[1], I->getFastMathFlags(), Q,
7133 NewOps[0], NewOps[1], Q.IIQ.hasNoSignedWrap(cast<BinaryOperator>(I)),
7136 return simplifySDivInst(NewOps[0], NewOps[1],
7140 return simplifyUDivInst(NewOps[0], NewOps[1],
7144 return simplifyFDivInst(NewOps[0], NewOps[1], I->getFastMathFlags(), Q,
7147 return simplifySRemInst(NewOps[0], NewOps[1], Q, MaxRecurse);
7149 return simplifyURemInst(NewOps[0], NewOps[1], Q, MaxRecurse);
7151 return simplifyFRemInst(NewOps[0], NewOps[1], I->getFastMathFlags(), Q,
7155 NewOps[0], NewOps[1], Q.IIQ.hasNoSignedWrap(cast<BinaryOperator>(I)),
7158 return simplifyLShrInst(NewOps[0], NewOps[1],
7162 return simplifyAShrInst(NewOps[0], NewOps[1],
7166 return simplifyAndInst(NewOps[0], NewOps[1], Q, MaxRecurse);
7168 return simplifyOrInst(NewOps[0], NewOps[1], Q, MaxRecurse);
7170 return simplifyXorInst(NewOps[0], NewOps[1], Q, MaxRecurse);
7172 return simplifyICmpInst(cast<ICmpInst>(I)->getCmpPredicate(), NewOps[0],
7173 NewOps[1], Q, MaxRecurse);
7175 return simplifyFCmpInst(cast<FCmpInst>(I)->getPredicate(), NewOps[0],
7176 NewOps[1], I->getFastMathFlags(), Q, MaxRecurse);
7178 return simplifySelectInst(NewOps[0], NewOps[1], NewOps[2], Q, MaxRecurse);
7181 return simplifyGEPInst(GEPI->getSourceElementType(), NewOps[0],
7182 ArrayRef(NewOps).slice(1), GEPI->getNoWrapFlags(), Q,
7187 return simplifyInsertValueInst(NewOps[0], NewOps[1], IV->getIndices(), Q,
7191 return simplifyInsertElementInst(NewOps[0], NewOps[1], NewOps[2], Q);
7194 return simplifyExtractValueInst(NewOps[0], EVI->getIndices(), Q,
7198 return simplifyExtractElementInst(NewOps[0], NewOps[1], Q, MaxRecurse);
7201 return simplifyShuffleVectorInst(NewOps[0], NewOps[1],
7206 return simplifyPHINode(cast<PHINode>(I), NewOps, Q);
7209 cast<CallInst>(I), NewOps.back(),
7210 NewOps.drop_back(1 + cast<CallInst>(I)->getNumTotalBundleOperands()), Q);
7212 return llvm::simplifyFreezeInst(NewOps[0], Q);
7216 return simplifyCastInst(I->getOpcode(), NewOps[0], I->getType(), Q,
7222 return simplifyLoadInst(cast<LoadInst>(I), NewOps[0], Q);
7227 ArrayRef<Value *> NewOps,
7229 assert(NewOps.size() == I->getNumOperands() &&
7231 return ::simplifyInstructionWithOperands(I, NewOps, SQ, RecursionLimit);