reference, declarationdefinition
definition → references, declarations, derived classes, virtual overrides
reference to multiple definitions → definitions
unreferenced

References

lib/Analysis/MemoryBuiltins.cpp
  547       return Builder.CreateSelect(UseZero, ConstantInt::get(ResultType, 0),
 1040   Value *Size = Builder.CreateSelect(I.getCondition(), TrueSide.first,
 1042   Value *Offset = Builder.CreateSelect(I.getCondition(), TrueSide.second,
lib/Analysis/ScalarEvolutionExpander.cpp
 1675     Value *Sel = Builder.CreateSelect(ICmp, LHS, RHS, "smax");
 1700     Value *Sel = Builder.CreateSelect(ICmp, LHS, RHS, "umax");
 1725     Value *Sel = Builder.CreateSelect(ICmp, LHS, RHS, "smin");
 1750     Value *Sel = Builder.CreateSelect(ICmp, LHS, RHS, "umin");
 2279   Value *AbsStep = Builder.CreateSelect(StepCompare, NegStepValue, StepValue);
 2315       Builder.CreateSelect(StepCompare, EndCompareGT, EndCompareLT);
lib/CodeGen/AtomicExpandPass.cpp
  545     return Builder.CreateSelect(NewVal, Loaded, Inc, "new");
  548     return Builder.CreateSelect(NewVal, Loaded, Inc, "new");
  551     return Builder.CreateSelect(NewVal, Loaded, Inc, "new");
  554     return Builder.CreateSelect(NewVal, Loaded, Inc, "new");
lib/CodeGen/CodeGenPrepare.cpp
 5925   Value *NewSel = Builder.CreateSelect(Cond, NewTVal, NewFVal);
lib/CodeGen/ExpandMemCmp.cpp
  518       Builder.CreateSelect(Cmp, ConstantInt::get(Builder.getInt32Ty(), -1),
lib/IR/AutoUpgrade.cpp
  964   return Builder.CreateSelect(Mask, Op0, Op1);
  979   return Builder.CreateSelect(Mask, Op0, Op1);
 1258   Value *Res = Builder.CreateSelect(Cmp, Op0, Neg);
 1271   Value *Res = Builder.CreateSelect(Cmp, Op0, Op1);
 1379   Value* Select = Builder.CreateSelect(Cmp, Extract1, Extract2);
 3429       Rep = Builder.CreateSelect(Cmp, Arg, Neg, "abs");
 3443       Rep = Builder.CreateSelect(Cmp, Arg0, Arg1, "max");
 3451       Rep = Builder.CreateSelect(Cmp, Arg0, Arg1, "min");
lib/IR/Core.cpp
 3860   return wrap(unwrap(B)->CreateSelect(unwrap(If), unwrap(Then), unwrap(Else),
lib/Target/AMDGPU/AMDGPUAtomicOptimizer.cpp
  277   return B.CreateSelect(Cond, LHS, RHS);
  633         LaneOffset = B.CreateSelect(Cond, Identity, V);
lib/Target/AMDGPU/AMDGPUCodeGenPrepare.cpp
  377   ExtRes = Builder.CreateSelect(I.getOperand(0), ExtOp1, ExtOp2);
  715   JQ = Builder.CreateSelect(CV, JQ, Builder.getInt32(0));
  811   Value *ABS_RCP_LO = Builder.CreateSelect(RCP_HI_0_CC, NEG_RCP_LO, RCP_LO);
  824   Value *Tmp0 = Builder.CreateSelect(RCP_HI_0_CC, RCP_A_E, RCP_S_E);
  837   Value *Remainder_GE_Den = Builder.CreateSelect(Rem_GE_Den_CC, MinusOne, Zero);
  841   Value *Remainder_GE_Zero = Builder.CreateSelect(Num_GE_Num_S_Rem_CC,
  857     Value *Div = Builder.CreateSelect(Tmp1_0_CC, Quotient, Quotient_A_One);
  860     Res = Builder.CreateSelect(Num_GE_Num_S_Rem_CC, Div, Quotient_S_One);
  869     Value *Rem = Builder.CreateSelect(Tmp1_0_CC, Remainder, Remainder_S_Den);
  872     Res = Builder.CreateSelect(Num_GE_Num_S_Rem_CC, Rem, Remainder_A_Den);
lib/Target/Hexagon/HexagonLoopIdiomRecognition.cpp
 1637         return B.CreateSelect(Sel->getCondition(),
 1645         return B.CreateSelect(Sel->getCondition(),
 1662           return B.CreateSelect(C, Sel0->getTrueValue(), Sel->getFalseValue());
 1666           return B.CreateSelect(C, Sel->getTrueValue(), Sel1->getFalseValue());
lib/Target/NVPTX/NVPTXGenericToNVVM.cpp
  297     return Builder.CreateSelect(NewOperands[0], NewOperands[1], NewOperands[2]);
lib/Transforms/Coroutines/CoroSplit.cpp
  858     DestroyOrCleanupFn = Builder.CreateSelect(CA, DestroyFn, CleanupFn);
lib/Transforms/InstCombine/InstCombineAndOrXor.cpp
 2179     Value *Select = Builder.CreateSelect(Cond, BitcastC, BitcastD);
lib/Transforms/InstCombine/InstCombineCalls.cpp
  591   Arg0 = Builder.CreateSelect(Builder.CreateICmpSLT(Arg0, MinC), MinC, Arg0);
  592   Arg1 = Builder.CreateSelect(Builder.CreateICmpSLT(Arg1, MinC), MinC, Arg1);
  593   Arg0 = Builder.CreateSelect(Builder.CreateICmpSGT(Arg0, MaxC), MaxC, Arg0);
  594   Arg1 = Builder.CreateSelect(Builder.CreateICmpSGT(Arg1, MaxC), MaxC, Arg1);
 1067     return Builder.CreateSelect(II.getArgOperand(2), LI, II.getArgOperand(3));
 2717           V = Builder.CreateSelect(Mask, V, Passthru);
 3083         Value *Sel = Builder.CreateSelect(BoolVec, CastOp1, CastOp0);
lib/Transforms/InstCombine/InstCombineMulDivRem.cpp
  140     return Builder.CreateSelect(Cond, OtherOp, Builder.CreateNeg(OtherOp));
  146     return Builder.CreateSelect(Cond, Builder.CreateNeg(OtherOp), OtherOp);
  155     return Builder.CreateSelect(Cond, OtherOp, Builder.CreateFNeg(OtherOp));
  165     return Builder.CreateSelect(Cond, Builder.CreateFNeg(OtherOp), OtherOp);
lib/Transforms/InstCombine/InstCombineSelect.cpp
   53   return Builder.CreateSelect(Builder.CreateICmp(Pred, A, B), A, B);
  330         Builder.CreateSelect(Cond, TI->getOperand(0), FI->getOperand(0),
  340     Value *NewSel = Builder.CreateSelect(Cond, X, Y, SI.getName() + ".v", &SI);
  394   Value *NewSI = Builder.CreateSelect(Cond, OtherOpT, OtherOpF,
  447             Value *NewSel = Builder.CreateSelect(SI.getCondition(), OOp, C);
  478             Value *NewSel = Builder.CreateSelect(SI.getCondition(), C, OOp);
 1300       Builder.CreateSelect(ShouldReplaceLow, ReplacementLow, X);
 1608         Builder.CreateSelect(SI->getCondition(), SI->getFalseValue(),
 1717       Value *NewSel = Builder.CreateSelect(CondVal, NewTrueOp, NewFalseOp,
 1772     Value *NewSel = Builder.CreateSelect(Cond, X, TruncCVal, "narrow", &Sel);
 1894     NewSel = Builder.CreateSelect(Cond, A, B, "", &Sel);
 1898     NewSel = Builder.CreateSelect(Cond, B, A, "", &Sel);
 2460         Value *NewSI = Builder.CreateSelect(Cmp, LHS, RHS, SI.getName(), &SI);
lib/Transforms/InstCombine/InstructionCombining.cpp
  781       SI = Builder.CreateSelect(A, V2, V1);
  783       SI = Builder.CreateSelect(A, V2, Builder.CreateBinOp(Opcode, C, E));
  785       SI = Builder.CreateSelect(A, Builder.CreateBinOp(Opcode, B, D), V1);
 1026         InV = Builder.CreateSelect(PN->getIncomingValue(i), TrueVInPred,
lib/Transforms/Instrumentation/AddressSanitizer.cpp
 3288   Value *PartialPadding = IRB.CreateSelect(Cond, Misalign, Zero);
lib/Transforms/Instrumentation/MemorySanitizer.cpp
 2032             Origin = IRB.CreateSelect(Cond, OpOrigin, Origin);
 2974         Value *Origin = IRB.CreateSelect(
 3516     Value *Sa0 = IRB.CreateSelect(B, Sc, Sd);
 3536     Value *Sa = IRB.CreateSelect(Sb, Sa1, Sa0, "_msprop_select");
 3551           &I, IRB.CreateSelect(Sb, getOrigin(I.getCondition()),
 3552                                IRB.CreateSelect(B, getOrigin(I.getTrueValue()),
lib/Transforms/Scalar/LowerAtomic.cpp
   31   Value *Res = Builder.CreateSelect(Equal, Val, Orig);
   74     Res = Builder.CreateSelect(Builder.CreateICmpSLT(Orig, Val),
   78     Res = Builder.CreateSelect(Builder.CreateICmpSLT(Orig, Val),
   82     Res = Builder.CreateSelect(Builder.CreateICmpULT(Orig, Val),
   86     Res = Builder.CreateSelect(Builder.CreateICmpULT(Orig, Val),
lib/Transforms/Scalar/MemCpyOptimizer.cpp
 1055   Value *MemsetLen = Builder.CreateSelect(
lib/Transforms/Scalar/SROA.cpp
 1383     Value *V = IRB.CreateSelect(SI.getCondition(), TL, FL,
 2251   V = IRB.CreateSelect(ConstantVector::get(Mask), V, Old, Name + "blend");
lib/Transforms/Scalar/Scalarizer.cpp
  570       Res[I] = Builder.CreateSelect(Op0[I], Op1[I], Op2[I],
  575       Res[I] = Builder.CreateSelect(Op0, Op1[I], Op2[I],
lib/Transforms/Utils/IntegerDivision.cpp
  260   Value *RetVal      = Builder.CreateSelect(Ret0, Zero, Dividend);
lib/Transforms/Utils/LoopUtils.cpp
  783   Value *Select = Builder.CreateSelect(Cmp, Left, Right, "rdx.minmax.select");
lib/Transforms/Utils/SimplifyCFG.cpp
 1408             Builder.CreateSelect(BI->getCondition(), BB1V, BB2V,
 2098     Value *S = Builder.CreateSelect(
 2132     Value *V = Builder.CreateSelect(
 2426     Value *Sel = Builder.CreateSelect(IfCond, TrueVal, FalseVal, "", InsertPt);
 2512           Builder.CreateSelect(BrCond, TrueValue, FalseValue, "retval", BI);
 3422           Builder.CreateSelect(PBICond, PBIV, BIV, PBIV->getName() + ".mux"));
 4848       SelectValue = Builder.CreateSelect(ValueCompare, ResultVector[1].first,
 4853     return Builder.CreateSelect(ValueCompare, ResultVector[0].first,
lib/Transforms/Utils/SimplifyLibCalls.cpp
  721       return B.CreateSelect(SI->getCondition(),
 1618     Sqrt = B.CreateSelect(FCmp, PosInf, Sqrt);
 2211   return B.CreateSelect(Cond, V, B.getInt32(0));
 2232   return B.CreateSelect(IsNeg, NegX, X);
lib/Transforms/Vectorize/LoopVectorize.cpp
 2639     R = Builder.CreateSelect(IsZero, Step, R);
 3336         NewI = B.CreateSelect(SI->getCondition(),
 4196           Builder.CreateSelect(InvariantCond ? ScalarCond : Cond, Op0, Op1);
 7325             State.Builder.CreateSelect(Cond, In0, Entry[Part], "predphi");
lib/Transforms/Vectorize/SLPVectorizer.cpp
 3931       Value *V = Builder.CreateSelect(Cond, True, False);
 5799         return Builder.CreateSelect(Cmp, LHS, RHS, Name);
 5803         return Builder.CreateSelect(Cmp, LHS, RHS, Name);
 5807         return Builder.CreateSelect(Cmp, LHS, RHS, Name);
 5811         return Builder.CreateSelect(Cmp, LHS, RHS, Name);
lib/Transforms/Vectorize/VPlan.cpp
  322     Value *V = Builder.CreateSelect(Cond, Op1, Op2);
tools/clang/lib/CodeGen/CGBuiltin.cpp
 1342       CGF.Builder.CreateSelect(IsNegative, AbsOfNegative, Signed);
 1366         CGF.Builder.CreateSelect(IsNegative, NegativeResult, UnsignedResult);
 1382     Result = CGF.Builder.CreateSelect(
 1820     Value *Result = Builder.CreateSelect(CmpResult, NegOp, ArgValue, "abs");
 1908     Value *Tmp = Builder.CreateSelect(IsNeg, Inverse, ArgValue);
 1964     Value *Result = Builder.CreateSelect(IsZero, Zero, Tmp, "ffs");
 2263     Value *SignResult = Builder.CreateSelect(IsNeg, NegativeOne, One);
 2264     Value *Result = Builder.CreateSelect(IsInf, SignResult, Zero);
 2345       Builder.CreateSelect(IsNormal, EmitScalarExpr(E->getArg(2)),
 9665   return CGF.Builder.CreateSelect(Mask, Op0, Op1);
 9680   return CGF.Builder.CreateSelect(Mask, Op0, Op1);
 9770   Value *Res = CGF.Builder.CreateSelect(Cmp, Ops[0], Sub);
 9777   Value *Res = CGF.Builder.CreateSelect(Cmp, Ops[0], Ops[1]);
tools/clang/lib/CodeGen/CGCall.cpp
 3271     finalArgument = CGF.Builder.CreateSelect(isNull,
tools/clang/lib/CodeGen/CGExprAgg.cpp
 1026     Select = Builder.CreateSelect(
 1031         Builder.CreateSelect(EmitCmp(CK_Less), EmitCmpRes(CmpInfo.getLess()),
 1033     Select = Builder.CreateSelect(EmitCmp(CK_Equal),
 1037     Value *SelectEq = Builder.CreateSelect(
 1040     Value *SelectGT = Builder.CreateSelect(EmitCmp(CK_Greater),
 1043     Select = Builder.CreateSelect(
tools/clang/lib/CodeGen/CGExprCXX.cpp
  922       size = CGF.Builder.CreateSelect(hasOverflow,
tools/clang/lib/CodeGen/CGExprScalar.cpp
 1449       Result = Builder.CreateSelect(IsNegative, Rounded, Result);
 1482       Result = Builder.CreateSelect(TooHigh, Max, Result, "satmax");
 1491       Result = Builder.CreateSelect(TooLow, Min, Result, "satmin");
 4247     return Builder.CreateSelect(CondV, LHS, RHS, "cond");
 4740           Builder.CreateSelect(PosOrZeroOffset, PosOrZeroValid, NegValid);
tools/clang/lib/CodeGen/CGOpenMPRuntime.cpp
 5082           ? CGF.Builder.CreateSelect(Data.Final.getPointer(),
 6788           NumThreads = CGF.Builder.CreateSelect(
 6797         NumThreads = CGF.Builder.CreateSelect(CondVal, NumThreads,
 6958                            ? Bld.CreateSelect(Bld.CreateICmpULT(NumThreadsVal,
 6966       return Bld.CreateSelect(CondVal, ThreadLimitVal, Bld.getInt32(1));
 7224       LengthVal = CGF.Builder.CreateSelect(
tools/clang/lib/CodeGen/CGOpenMPRuntimeNVPTX.cpp
 2179         Size = Bld.CreateSelect(
 2336               Address(Bld.CreateSelect(IsTTD, SecVarAddr.getPointer(),
 2344             Bld.CreateSelect(I->getSecond().IsInSPMDModeFlag,
tools/clang/lib/CodeGen/CGStmtOpenMP.cpp
 2702     llvm::Value *MinUBGlobalUB = CGF.Builder.CreateSelect(
tools/clang/lib/CodeGen/ItaniumCXXABI.cpp
  866     return Builder.CreateSelect(isNull, src, dst);
tools/clang/lib/CodeGen/MicrosoftCXXABI.cpp
 3120     return Builder.CreateSelect(IsNotNull, Src, DstNull);
 3190       llvm::Value *UndoSrcAdjustment = Builder.CreateSelect(
 3216   NVAdjustField = Builder.CreateSelect(SrcVBIndexEqZero, NVDisp, getZeroInt());
 3250         Builder.CreateSelect(DstVBIndexEqZero, getZeroInt(), DstVBPtrOffset);
 3259       llvm::Value *DoDstAdjustment = Builder.CreateSelect(
tools/polly/lib/CodeGen/IslExprBuilder.cpp
  223     V = Builder.CreateSelect(Cmp, V, OpV);
  434         Builder.CreateSelect(isNegative, Sum2, LHS, "pexp.fdiv_q.3");
  479   return Builder.CreateSelect(Cond, LHS, RHS);
tools/polly/lib/CodeGen/LoopGeneratorsKMP.cpp
  236       UB = Builder.CreateSelect(AdjUBOutOfBounds, UB, AdjustedUB);
unittests/IR/PatternMatch.cpp
  588                   .match(IRB.CreateSelect(IRB.CreateFCmpOLT(L, R), L, R)));
  594                   .match(IRB.CreateSelect(IRB.CreateFCmpOLE(L, R), L, R)));
  600                    .match(IRB.CreateSelect(IRB.CreateFCmpOGE(L, R), L, R)));
  604                    .match(IRB.CreateSelect(IRB.CreateFCmpOGT(L, R), L, R)));
  615                   .match(IRB.CreateSelect(IRB.CreateFCmpOGE(L, R), R, L)));
  617                   .match(IRB.CreateSelect(IRB.CreateFCmpUGE(L, R), R, L)));
  623                   .match(IRB.CreateSelect(IRB.CreateFCmpOGT(L, R), R, L)));
  625                   .match(IRB.CreateSelect(IRB.CreateFCmpUGT(L, R), R, L)));
  638                   .match(IRB.CreateSelect(IRB.CreateFCmpOGT(L, R), L, R)));
  644                   .match(IRB.CreateSelect(IRB.CreateFCmpOGE(L, R), L, R)));
  650                    .match(IRB.CreateSelect(IRB.CreateFCmpOLE(L, R), L, R)));
  654                    .match(IRB.CreateSelect(IRB.CreateFCmpOLT(L, R), L, R)));
  666                    .match(IRB.CreateSelect(IRB.CreateFCmpOLE(L, R), R, L)));
  668                   .match(IRB.CreateSelect(IRB.CreateFCmpULE(L, R), R, L)));
  674                    .match(IRB.CreateSelect(IRB.CreateFCmpOLT(L, R), R, L)));
  676                   .match(IRB.CreateSelect(IRB.CreateFCmpULT(L, R), R, L)));
  689                   .match(IRB.CreateSelect(IRB.CreateFCmpULT(L, R), L, R)));
  695                   .match(IRB.CreateSelect(IRB.CreateFCmpULE(L, R), L, R)));
  701                    .match(IRB.CreateSelect(IRB.CreateFCmpUGE(L, R), L, R)));
  705                    .match(IRB.CreateSelect(IRB.CreateFCmpUGT(L, R), L, R)));
  716                   .match(IRB.CreateSelect(IRB.CreateFCmpUGE(L, R), R, L)));
  718                   .match(IRB.CreateSelect(IRB.CreateFCmpOGE(L, R), R, L)));
  724                   .match(IRB.CreateSelect(IRB.CreateFCmpUGT(L, R), R, L)));
  726                   .match(IRB.CreateSelect(IRB.CreateFCmpOGT(L, R), R, L)));
  739                   .match(IRB.CreateSelect(IRB.CreateFCmpUGT(L, R), L, R)));
  745                   .match(IRB.CreateSelect(IRB.CreateFCmpUGE(L, R), L, R)));
  751                    .match(IRB.CreateSelect(IRB.CreateFCmpULE(L, R), L, R)));
  755                    .match(IRB.CreateSelect(IRB.CreateFCmpULT(L, R), L, R)));
  766                   .match(IRB.CreateSelect(IRB.CreateFCmpULE(L, R), R, L)));
  768                   .match(IRB.CreateSelect(IRB.CreateFCmpOLE(L, R), R, L)));
  774                   .match(IRB.CreateSelect(IRB.CreateFCmpULT(L, R), R, L)));
  776                   .match(IRB.CreateSelect(IRB.CreateFCmpOLT(L, R), R, L)));