|
reference, declaration → definition
definition → references, declarations, derived classes, virtual overrides
reference to multiple definitions → definitions
unreferenced
|
References
include/llvm/CodeGen/BasicTTIImpl.h 1140 Cost += ConcreteTTI->getArithmeticInstrCost(BinaryOperator::Sub, RetTy);
1389 : BinaryOperator::Sub;
1415 : BinaryOperator::Sub;
include/llvm/IR/IRBuilder.h 1155 return CreateInsertNUWNSWBinOp(Instruction::Sub, LHS, RHS, Name,
include/llvm/IR/InstrTypes.h 362 DEFINE_HELPERS(Sub, NSW) // CreateNSWSub
363 DEFINE_HELPERS(Sub, NUW) // CreateNUWSub
include/llvm/IR/Operator.h 101 I->getOpcode() == Instruction::Sub ||
107 CE->getOpcode() == Instruction::Sub ||
425 : public ConcreteOperator<OverflowingBinaryOperator, Instruction::Sub> {
include/llvm/IR/PatternMatch.h 771 inline BinaryOp_match<LHS, RHS, Instruction::Sub> m_Sub(const LHS &L,
773 return BinaryOp_match<LHS, RHS, Instruction::Sub>(L, R);
943 inline OverflowingBinaryOp_match<LHS, RHS, Instruction::Sub,
946 return OverflowingBinaryOp_match<LHS, RHS, Instruction::Sub,
976 inline OverflowingBinaryOp_match<LHS, RHS, Instruction::Sub,
979 return OverflowingBinaryOp_match<LHS, RHS, Instruction::Sub,
1849 inline BinaryOp_match<cst_pred_ty<is_zero_int>, ValTy, Instruction::Sub>
lib/Analysis/BasicAliasAnalysis.cpp 330 case Instruction::Sub:
lib/Analysis/CFLGraph.h 563 case Instruction::Sub:
lib/Analysis/ConstantFolding.cpp 743 if (Opc == Instruction::Sub) {
853 if (CE && CE->getOpcode() == Instruction::Sub &&
lib/Analysis/DemandedBits.cpp 175 case Instruction::Sub:
lib/Analysis/IVDescriptors.cpp 568 case Instruction::Sub:
lib/Analysis/InstructionSimplify.cpp 698 if (Constant *C = foldOrCommuteConstant(Instruction::Sub, Op0, Op1, Q))
737 if (Value *V = SimplifyBinOp(Instruction::Sub, Y, Z, Q, MaxRecurse-1))
745 if (Value *V = SimplifyBinOp(Instruction::Sub, X, Z, Q, MaxRecurse-1))
759 if (Value *V = SimplifyBinOp(Instruction::Sub, X, Y, Q, MaxRecurse-1))
761 if (Value *W = SimplifyBinOp(Instruction::Sub, V, Z, Q, MaxRecurse-1)) {
767 if (Value *V = SimplifyBinOp(Instruction::Sub, X, Z, Q, MaxRecurse-1))
769 if (Value *W = SimplifyBinOp(Instruction::Sub, V, Y, Q, MaxRecurse-1)) {
781 if (Value *V = SimplifyBinOp(Instruction::Sub, Z, X, Q, MaxRecurse-1))
794 if (Value *V = SimplifyBinOp(Instruction::Sub, X, Y, Q, MaxRecurse-1))
4774 case Instruction::Sub:
4910 if (LoadedCE->getOpcode() != Instruction::Sub)
5264 case Instruction::Sub:
lib/Analysis/LoopInfo.cpp 355 IndDesc.getInductionOpcode() != Instruction::Sub)
lib/Analysis/ObjCARCInstKind.cpp 254 case Instruction::Sub:
lib/Analysis/ScalarEvolution.cpp 4509 case Instruction::Sub:
6183 if (BO->Opcode == Instruction::Sub)
6191 if (BO->Opcode == Instruction::Sub)
6198 NewBO->Opcode != Instruction::Sub)) {
6240 case Instruction::Sub: {
6462 if (BO->Opcode == Instruction::Sub && BO->IsNSW) {
lib/Analysis/ScalarEvolutionExpander.cpp 742 Sum = InsertBinop(Instruction::Sub, Sum, W, SCEV::FlagAnyWrap,
825 Prod = InsertBinop(Instruction::Sub, Constant::getNullValue(Ty), Prod,
945 case Instruction::Sub: {
lib/Analysis/TargetTransformInfo.cpp 1156 case Instruction::Sub:
lib/Analysis/ValueTracking.cpp 1221 case Instruction::Sub: {
1364 Opcode == Instruction::Sub ||
1408 else if (Opcode == Instruction::Sub && LL == I) {
2534 case Instruction::Sub:
4324 case Instruction::Sub:
lib/AsmParser/LLLexer.cpp 842 INSTKEYWORD(sub, Sub); INSTKEYWORD(fsub, FSub);
lib/AsmParser/LLParser.cpp 3461 if (Opc == Instruction::Add || Opc == Instruction::Sub ||
3486 case Instruction::Sub:
lib/Bitcode/Reader/BitcodeReader.cpp 1083 return IsFP ? Instruction::FSub : Instruction::Sub;
2543 Opc == Instruction::Sub ||
3901 Opc == Instruction::Sub ||
lib/Bitcode/Writer/BitcodeWriter.cpp 532 case Instruction::Sub:
lib/CodeGen/AsmPrinter/AsmPrinter.cpp 2263 case Instruction::Sub: {
2304 case Instruction::Sub: return MCBinaryExpr::createSub(LHS, RHS, Ctx);
lib/CodeGen/SelectionDAG/FastISel.cpp 1797 case Instruction::Sub:
lib/CodeGen/TargetLoweringBase.cpp 1594 case Sub: return ISD::SUB;
lib/ExecutionEngine/ExecutionEngine.cpp 780 case Instruction::Sub:
800 case Instruction::Sub: GV.IntVal = LHS.IntVal - RHS.IntVal; break;
lib/ExecutionEngine/Interpreter/Execution.cpp 787 case Instruction::Sub: INTEGER_VECTOR_OPERATION(-) break;
824 case Instruction::Sub: R.IntVal = Src1.IntVal - Src2.IntVal; break;
2074 case Instruction::Sub: Dest.IntVal = Op0.IntVal - Op1.IntVal; break;
lib/FuzzMutate/Operations.cpp 20 Ops.push_back(binOpDescriptor(1, Instruction::Sub));
98 case Instruction::Sub:
lib/IR/ConstantFold.cpp 1003 case Instruction::Sub:
1105 case Instruction::Sub:
1228 case Instruction::Sub:
1349 case Instruction::Sub:
lib/IR/ConstantRange.cpp 255 case Instruction::Sub: {
783 case Instruction::Sub:
lib/IR/Constants.cpp 521 if (CE->getOpcode() == Instruction::Sub) {
1879 case Instruction::Sub:
2265 return get(Instruction::Sub, C1, C2, Flags);
2368 case Instruction::Sub: // X - 0 = X
lib/IR/Globals.cpp 450 case Instruction::Sub: {
lib/IR/Instruction.cpp 123 case Instruction::Sub:
314 case Sub: return "sub";
lib/IR/Instructions.cpp 2277 case Add: case Sub:
2357 return new BinaryOperator(Instruction::Sub,
2365 return new BinaryOperator(Instruction::Sub,
lib/IR/IntrinsicInst.cpp 237 return Instruction::Sub;
lib/IR/Verifier.cpp 3166 case Instruction::Sub:
lib/Target/AArch64/AArch64FastISel.cpp 700 case Instruction::Sub: {
1937 case Instruction::Sub:
5154 case Instruction::Sub:
lib/Target/AArch64/AArch64ISelLowering.cpp 8701 case Instruction::Sub:
lib/Target/AArch64/AArch64TargetTransformInfo.cpp 106 case Instruction::Sub:
222 case Instruction::Sub: // USUBL(2), SSUBL(2), USUBW(2), SSUBW(2).
511 Cost += getArithmeticInstrCost(Instruction::Sub, Ty, Opd1Info, Opd2Info,
lib/Target/AMDGPU/AMDGPUAtomicOptimizer.cpp 255 return B.CreateBinOp(Instruction::Sub, LHS, RHS);
lib/Target/AMDGPU/AMDGPUCodeGenPrepare.cpp 250 case Instruction::Sub:
266 case Instruction::Sub:
lib/Target/ARM/ARMCodeGenPrepare.cpp 342 if (Opc != Instruction::Add && Opc != Instruction::Sub)
352 bool IsDecreasing = ((Opc == Instruction::Sub) && !NegImm) ||
438 case Instruction::Sub:
866 if (I->getOpcode() != Instruction::Add && I->getOpcode() != Instruction::Sub)
lib/Target/ARM/ARMFastISel.cpp 2848 case Instruction::Sub:
lib/Target/ARM/ARMISelLowering.cpp14758 case Instruction::Sub:
14779 case Instruction::Sub:
lib/Target/PowerPC/PPCFastISel.cpp 1964 case Instruction::Sub:
lib/Target/PowerPC/PPCTargetTransformInfo.cpp 153 case Instruction::Sub:
lib/Target/RISCV/RISCVTargetTransformInfo.cpp 59 case Instruction::Sub:
lib/Target/SystemZ/SystemZTargetTransformInfo.cpp 109 case Instruction::Sub:
933 if ((UserI->getOpcode() == Instruction::Sub ||
944 case Instruction::Sub:
lib/Target/WebAssembly/WebAssemblyFastISel.cpp 355 case Instruction::Sub: {
lib/Target/X86/X86TargetTransformInfo.cpp 271 Cost += getArithmeticInstrCost(Instruction::Sub, Ty, Op1Info, Op2Info);
3006 case Instruction::Sub:
lib/Target/XCore/XCoreLowerThreadLocal.cpp 89 case Instruction::Sub:
lib/Transforms/AggressiveInstCombine/TruncInstCombine.cpp 51 case Instruction::Sub:
113 case Instruction::Sub:
344 case Instruction::Sub:
lib/Transforms/InstCombine/InstCombineAddSub.cpp 1105 I.getOpcode() == Instruction::Sub) &&
1119 if (I.getOpcode() == Instruction::Sub && I.getOperand(1) != Select)
1147 if (I.getOpcode() == Instruction::Sub)
1186 if (I.getOpcode() == Instruction::Sub
1691 assert(BO->getOpcode() == Instruction::Sub &&
lib/Transforms/InstCombine/InstCombineAndOrXor.cpp 1715 Value *NewBO = Opc == Instruction::Sub ? Builder.CreateBinOp(Opc, NewC, X)
1823 case Instruction::Sub:
lib/Transforms/InstCombine/InstCombineCasts.cpp 177 case Instruction::Sub:
352 case Instruction::Sub:
596 case Instruction::Sub:
1001 case Instruction::Sub:
1330 case Instruction::Sub:
lib/Transforms/InstCombine/InstCombineCompares.cpp 2863 case Instruction::Sub:
2964 case Instruction::Sub:
3847 if (BO0 && BO0->getOpcode() == Instruction::Sub) {
3851 if (BO1 && BO1->getOpcode() == Instruction::Sub) {
3932 case Instruction::Sub:
4439 case Instruction::Sub:
4457 case Instruction::Sub:
lib/Transforms/InstCombine/InstCombineInternal.h 204 BO->getOpcode() == Instruction::Sub)
275 case Instruction::Sub: // 0 - X (doesn't simplify, but it is safe)
590 case Instruction::Sub: return willNotOverflowSub(LHS, RHS, CxtI, IsSigned);
lib/Transforms/InstCombine/InstCombineSelect.cpp 251 case Instruction::Sub: // Can only fold on the amount subtracted.
267 case Instruction::Sub:
1676 if ((TI->getOpcode() == Instruction::Sub &&
1682 } else if ((FI->getOpcode() == Instruction::Sub &&
2066 else if (AddSub->getOpcode() == Instruction::Sub)
lib/Transforms/InstCombine/InstCombineShifts.cpp 724 case Instruction::Sub: {
782 if (isLeftShift && Op0BO->getOpcode() == Instruction::Sub &&
lib/Transforms/InstCombine/InstCombineSimplifyDemanded.cpp 426 case Instruction::Sub: {
lib/Transforms/InstCombine/InstCombineVectorOps.cpp 1155 case Instruction::Sub:
1219 case Instruction::Sub:
1317 case Instruction::Sub:
lib/Transforms/InstCombine/InstructionCombining.cpp 210 if (Opcode != Instruction::Add && Opcode != Instruction::Sub)
487 return ROp == Instruction::Add || ROp == Instruction::Sub;
527 if (TopOpcode == Instruction::Add || TopOpcode == Instruction::Sub) {
1571 if (BO.getOpcode() == Instruction::Sub)
1598 if (BO.getOpcode() == Instruction::Sub)
lib/Transforms/Instrumentation/AddressSanitizer.cpp 1460 if (BO->getOpcode() != Instruction::Sub)
lib/Transforms/Instrumentation/PoisonChecking.cpp 128 case Instruction::Sub: {
lib/Transforms/Scalar/CorrelatedValuePropagation.cpp 453 case Instruction::Sub:
877 case Instruction::Sub:
lib/Transforms/Scalar/Float2Int.cpp 114 case Instruction::FSub: return Instruction::Sub;
lib/Transforms/Scalar/GVN.cpp 499 case Instruction::Sub:
lib/Transforms/Scalar/GVNSink.cpp 447 case Instruction::Sub:
lib/Transforms/Scalar/IndVarSimplify.cpp 1096 case Instruction::Sub:
1197 case Instruction::Sub:
1241 if (OpCode == Instruction::Sub)
1258 if (OpCode != Instruction::Add && OpCode != Instruction::Sub &&
1422 if (OpCode != Instruction::Add && OpCode != Instruction::Sub &&
2027 case Instruction::Sub:
lib/Transforms/Scalar/LoopIdiomRecognize.cpp 1326 !((SubOneOp->getOpcode() == Instruction::Sub && Dec->isOne()) ||
lib/Transforms/Scalar/LoopRerollPass.cpp 747 case Instruction::Sub:
lib/Transforms/Scalar/LoopStrengthReduce.cpp 2146 && Incr->getOpcode() != Instruction::Sub)
lib/Transforms/Scalar/NewGVN.cpp 2002 case Instruction::Sub:
lib/Transforms/Scalar/Reassociate.cpp 904 if (TheNeg->getOpcode() == Instruction::Sub) {
935 isReassociableOp(V0, Instruction::Sub, Instruction::FSub))
939 isReassociableOp(V1, Instruction::Sub, Instruction::FSub))
944 isReassociableOp(VB, Instruction::Sub, Instruction::FSub)))
2114 if (I->getOpcode() == Instruction::Sub) {
2187 cast<Instruction>(BO->user_back())->getOpcode() == Instruction::Sub)
lib/Transforms/Scalar/SCCP.cpp 1514 case Instruction::Sub:
lib/Transforms/Scalar/SeparateConstOffsetFromGEP.cpp 491 BO->getOpcode() != Instruction::Sub &&
538 BO->getOpcode() == Instruction::Sub) {
565 if (BO->getOpcode() == Instruction::Sub)
703 if (CI->isZero() && !(BO->getOpcode() == Instruction::Sub && OpNo == 0))
1272 if ((opc == Instruction::Add || opc == Instruction::Sub) &&
lib/Transforms/Scalar/SpeculativeExecution.cpp 221 case Instruction::Sub:
lib/Transforms/Utils/Local.cpp 1695 case Instruction::Sub:
lib/Transforms/Utils/LoopRotationUtils.cpp 548 case Instruction::Sub:
lib/Transforms/Utils/SimplifyIndVar.cpp 415 case Instruction::Sub:
736 BO->getOpcode() != Instruction::Sub &&
lib/Transforms/Vectorize/LoopVectorize.cpp 4142 case Instruction::Sub:
6188 case Instruction::Sub:
6876 case Instruction::Sub:
lib/Transforms/Vectorize/SLPVectorizer.cpp 2569 case Instruction::Sub:
3083 case Instruction::Sub:
3967 case Instruction::Sub:
5014 case Instruction::Sub:
tools/clang/lib/CodeGen/CGAtomic.cpp 583 PostOp = llvm::Instruction::Sub;
1094 PostOp = llvm::Instruction::Sub;
tools/clang/lib/CodeGen/CGBuiltin.cpp 2777 llvm::Instruction::Sub);
tools/clang/lib/CodeGen/CGExprScalar.cpp 2387 llvm::Instruction::Sub;
tools/lldb/source/Expression/IRInterpreter.cpp 588 case Instruction::Sub:
698 case Instruction::Sub:
753 case Instruction::Sub:
tools/llvm-stress/llvm-stress.cpp 396 case 1:{Op = (isFloat?Instruction::FSub : Instruction::Sub); break; }
tools/polly/lib/CodeGen/IslExprBuilder.cpp 106 case Instruction::Sub:
122 case Instruction::Sub:
157 return createBinOp(Instruction::Sub, LHS, RHS, Name);
unittests/IR/ConstantRangeTest.cpp 1413 Instruction::Sub, C, OBO::NoUnsignedWrap);
1418 Instruction::Sub, C, OBO::NoSignedWrap);
1444 Instruction::Sub, ConstantRange(32, /* isFullSet = */ true),
1456 Instruction::Sub, ConstantRange(32, /* isFullSet = */ true),
1466 Instruction::Sub, APInt(32, 0), OBO::NoUnsignedWrap).isFullSet());
1468 Instruction::Sub, APInt(32, 0), OBO::NoSignedWrap).isFullSet());
1479 Instruction::Sub, OneToFive, OBO::NoSignedWrap),
1483 Instruction::Sub, OneToFive, OBO::NoUnsignedWrap),
1495 Instruction::Sub, MinusFiveToMinusTwo, OBO::NoSignedWrap),
1499 Instruction::Sub, MinusFiveToMinusTwo, OBO::NoUnsignedWrap),
1512 Instruction::Sub, MinusOneToOne, OBO::NoSignedWrap),
1516 Instruction::Sub, MinusOneToOne, OBO::NoUnsignedWrap),
1529 Instruction::Sub, One, OBO::NoSignedWrap),
1533 Instruction::Sub, One, OBO::NoUnsignedWrap),
1649 Instruction::Sub, OverflowingBinaryOperator::NoUnsignedWrap,
1656 Instruction::Sub, OverflowingBinaryOperator::NoSignedWrap,
unittests/Transforms/Utils/CloningTest.cpp 71 BinaryOperator *Sub = BinaryOperator::Create(Instruction::Sub, V, V);
unittests/Transforms/Utils/IntegerDivisionTest.cpp 49 EXPECT_TRUE(Quotient && Quotient->getOpcode() == Instruction::Sub);
109 EXPECT_TRUE(Remainder && Remainder->getOpcode() == Instruction::Sub);
139 EXPECT_TRUE(Remainder && Remainder->getOpcode() == Instruction::Sub);
170 EXPECT_TRUE(Quotient && Quotient->getOpcode() == Instruction::Sub);
230 EXPECT_TRUE(Remainder && Remainder->getOpcode() == Instruction::Sub);
260 EXPECT_TRUE(Remainder && Remainder->getOpcode() == Instruction::Sub);