| /openbsd-src/gnu/llvm/llvm/lib/Transforms/InstCombine/ |
| H A D | InstCombineSelect.cpp | 462 Instruction *InstCombinerImpl::foldSelectIntoOp(SelectInst &SI, Value *TrueVal, in foldSelectIntoOp() argument 466 auto TryFoldSelectIntoOp = [&](SelectInst &SI, Value *TrueVal, in foldSelectIntoOp() 469 auto *TVI = dyn_cast<BinaryOperator>(TrueVal); in foldSelectIntoOp() 511 if (Instruction *R = TryFoldSelectIntoOp(SI, TrueVal, FalseVal, false)) in foldSelectIntoOp() 514 if (Instruction *R = TryFoldSelectIntoOp(SI, FalseVal, TrueVal, true)) in foldSelectIntoOp() 576 static Value *foldSelectICmpLshrAshr(const ICmpInst *IC, Value *TrueVal, in foldSelectICmpLshrAshr() argument 597 std::swap(TrueVal, FalseVal); in foldSelectICmpLshrAshr() 599 if (match(TrueVal, m_LShr(m_Value(X), m_Value(Y))) && in foldSelectICmpLshrAshr() 604 bool IsExact = Ashr->isExact() && cast<Instruction>(TrueVal)->isExact(); in foldSelectICmpLshrAshr() 624 static Value *foldSelectICmpAndOr(const ICmpInst *IC, Value *TrueVal, in foldSelectICmpAndOr() argument [all …]
|
| H A D | InstCombineShifts.cpp | 554 Value *TrueVal = SI->getTrueValue(); in canEvaluateShifted() local 556 return canEvaluateShifted(TrueVal, NumBits, IsLeftShift, IC, SI) && in canEvaluateShifted() 823 Value *TrueVal; in FoldShiftByConstant() local 824 if (match(Op0, m_Select(m_Value(Cond), m_Value(TrueVal), in FoldShiftByConstant() 827 if (!isa<Constant>(TrueVal) && FBO->getOperand(0) == TrueVal && in FoldShiftByConstant() 833 Value *NewShift = Builder.CreateBinOp(I.getOpcode(), TrueVal, C1); in FoldShiftByConstant()
|
| H A D | InstCombineAddSub.cpp | 2222 Value *Cond, *TrueVal, *FalseVal; in visitSub() local 2223 if (!match(Select, m_OneUse(m_Select(m_Value(Cond), m_Value(TrueVal), in visitSub() 2226 if (OtherHandOfSub != TrueVal && OtherHandOfSub != FalseVal) in visitSub() 2231 bool OtherHandOfSubIsTrueVal = OtherHandOfSub == TrueVal; in visitSub() 2232 Value *NewSub = SubBuilder(OtherHandOfSubIsTrueVal ? FalseVal : TrueVal); in visitSub()
|
| /openbsd-src/gnu/llvm/llvm/lib/Analysis/ |
| H A D | InstructionSimplify.cpp | 78 static Value *foldSelectWithBinaryOp(Value *Cond, Value *TrueVal, in foldSelectWithBinaryOp() argument 108 if (!match(Cond, m_c_BinOp(m_c_ICmp(Pred1, m_Specific(TrueVal), in foldSelectWithBinaryOp() 114 if (X == TrueVal || X == FalseVal || Y == TrueVal || Y == FalseVal) in foldSelectWithBinaryOp() 115 return BinOpCode == BinaryOperator::Or ? TrueVal : FalseVal; in foldSelectWithBinaryOp() 4289 static Value *simplifySelectBitTest(Value *TrueVal, Value *FalseVal, Value *X, in simplifySelectBitTest() argument 4295 if (FalseVal == X && match(TrueVal, m_And(m_Specific(X), m_APInt(C))) && in simplifySelectBitTest() 4297 return TrueWhenUnset ? FalseVal : TrueVal; in simplifySelectBitTest() 4301 if (TrueVal == X && match(FalseVal, m_And(m_Specific(X), m_APInt(C))) && in simplifySelectBitTest() 4303 return TrueWhenUnset ? FalseVal : TrueVal; in simplifySelectBitTest() 4308 if (FalseVal == X && match(TrueVal, m_Or(m_Specific(X), m_APInt(C))) && in simplifySelectBitTest() [all …]
|
| H A D | ValueTracking.cpp | 5951 Value *TrueVal, Value *FalseVal, in matchFastFloatClamp() argument 5960 std::swap(TrueVal, FalseVal); in matchFastFloatClamp() 5965 LHS = TrueVal; in matchFastFloatClamp() 5969 if (CmpRHS != TrueVal || !match(CmpRHS, m_APFloat(FC1)) || !FC1->isFinite()) in matchFastFloatClamp() 6005 Value *TrueVal, Value *FalseVal) { in matchClamp() argument 6007 if (CmpRHS != TrueVal) { in matchClamp() 6009 std::swap(TrueVal, FalseVal); in matchClamp() 6012 if (CmpRHS == TrueVal && match(CmpRHS, m_APInt(C1))) { in matchClamp() 6150 Value *TrueVal, Value *FalseVal, in matchMinMax() argument 6154 LHS = TrueVal; in matchMinMax() [all …]
|
| H A D | LazyValueInfo.cpp | 815 ValueLatticeElement &TrueVal = *OptTrueVal; in solveBlockValueSelect() local 823 if (TrueVal.isConstantRange() || FalseVal.isConstantRange()) { in solveBlockValueSelect() 825 getConstantRangeOrFull(TrueVal, SI->getType(), DL); in solveBlockValueSelect() 851 ResultCR, TrueVal.isConstantRangeIncludingUndef() || in solveBlockValueSelect() 858 TrueCR.abs(), TrueVal.isConstantRangeIncludingUndef()); in solveBlockValueSelect() 879 TrueVal = intersect(TrueVal, in solveBlockValueSelect() 884 ValueLatticeElement Result = TrueVal; in solveBlockValueSelect()
|
| H A D | IVDescriptors.cpp | 734 Value *TrueVal = SI->getTrueValue(); in isConditionalRdxPattern() local 738 if ((isa<PHINode>(*TrueVal) && isa<PHINode>(*FalseVal)) || in isConditionalRdxPattern() 739 (!isa<PHINode>(*TrueVal) && !isa<PHINode>(*FalseVal))) in isConditionalRdxPattern() 743 isa<PHINode>(*TrueVal) ? dyn_cast<Instruction>(FalseVal) in isConditionalRdxPattern() 744 : dyn_cast<Instruction>(TrueVal); in isConditionalRdxPattern()
|
| H A D | InlineCost.cpp | 2274 Value *TrueVal = SI.getTrueValue(); in visitSelectInst() local 2277 Constant *TrueC = dyn_cast<Constant>(TrueVal); in visitSelectInst() 2279 TrueC = SimplifiedValues.lookup(TrueVal); in visitSelectInst() 2297 ConstantOffsetPtrs.lookup(TrueVal); in visitSelectInst() 2303 if (auto *SROAArg = getSROAArgForValueOrNull(TrueVal)) in visitSelectInst() 2312 Value *SelectedV = CondC->isAllOnesValue() ? TrueVal in visitSelectInst()
|
| H A D | ScalarEvolution.cpp | 6114 Value *TrueVal, in createNodeForSelectOrPHIInstWithICmpInstCond() argument 6137 const SCEV *LA = getSCEV(TrueVal); in createNodeForSelectOrPHIInstWithICmpInstCond() 6180 std::swap(TrueVal, FalseVal); in createNodeForSelectOrPHIInstWithICmpInstCond() 6187 const SCEV *TrueValExpr = getSCEV(TrueVal); // C+y in createNodeForSelectOrPHIInstWithICmpInstCond() 6199 isa<ConstantInt>(TrueVal) && cast<ConstantInt>(TrueVal)->isZero()) { in createNodeForSelectOrPHIInstWithICmpInstCond() 6252 createNodeForSelectViaUMinSeq(ScalarEvolution *SE, Value *Cond, Value *TrueVal, in createNodeForSelectViaUMinSeq() argument 6254 if (!isa<ConstantInt>(TrueVal) && !isa<ConstantInt>(FalseVal)) in createNodeForSelectViaUMinSeq() 6258 const auto *SETrue = SE->getSCEV(TrueVal); in createNodeForSelectViaUMinSeq() 6264 Value *V, Value *Cond, Value *TrueVal, Value *FalseVal) { in createNodeForSelectOrPHIViaUMinSeq() argument 6266 assert(TrueVal->getType() == FalseVal->getType() && in createNodeForSelectOrPHIViaUMinSeq() [all …]
|
| /openbsd-src/gnu/llvm/clang/include/clang/Analysis/FlowSensitive/ |
| H A D | DataflowAnalysisContext.h | 80 : S(std::move(S)), TrueVal(createAtomicBoolValue()), in S() 165 return Value ? TrueVal : FalseVal; in getBoolLiteralValue() 358 AtomicBoolValue &TrueVal; variable
|
| /openbsd-src/gnu/llvm/llvm/lib/IR/ |
| H A D | ProfDataUtils.cpp | 135 bool extractBranchWeights(const Instruction &I, uint64_t &TrueVal, in extractBranchWeights() argument 150 TrueVal = Weights[0]; in extractBranchWeights()
|
| H A D | ConstantFold.cpp | 596 if (ConstantExpr *TrueVal = dyn_cast<ConstantExpr>(V1)) { in ConstantFoldSelectInstruction() local 597 if (TrueVal->getOpcode() == Instruction::Select) in ConstantFoldSelectInstruction() 598 if (TrueVal->getOperand(0) == Cond) in ConstantFoldSelectInstruction() 599 return ConstantExpr::getSelect(Cond, TrueVal->getOperand(1), V2); in ConstantFoldSelectInstruction()
|
| /openbsd-src/gnu/llvm/llvm/include/llvm/IR/ |
| H A D | ProfDataUtils.h | 83 bool extractBranchWeights(const Instruction &I, uint64_t &TrueVal,
|
| /openbsd-src/gnu/llvm/llvm/lib/Transforms/Vectorize/ |
| H A D | LoopVectorizationPlanner.h | 154 VPValue *createSelect(VPValue *Cond, VPValue *TrueVal, VPValue *FalseVal, 156 return createNaryOp(Instruction::Select, {Cond, TrueVal, FalseVal}, DL,
|
| /openbsd-src/gnu/llvm/llvm/include/llvm/Transforms/Scalar/ |
| H A D | SROA.h | 51 using TrueVal = Bitfield::Element<bool, 0, 1>; // Low 0'th bit. variable
|
| /openbsd-src/gnu/llvm/llvm/lib/TableGen/ |
| H A D | TGLexer.h | 62 TrueVal, FalseVal, enumerator
|
| H A D | TGLexer.cpp | 358 .Case("true", tgtok::TrueVal) in LexIdentifier()
|
| /openbsd-src/gnu/llvm/llvm/lib/Target/VE/ |
| H A D | VECustomDAG.cpp | 413 auto TrueVal = DAG.getConstant(-1, DL, MVT::i32); in getConstantMask() local 415 auto Res = getNode(VEISD::VEC_BROADCAST, MaskVT, {TrueVal, AVL}); in getConstantMask()
|
| /openbsd-src/gnu/llvm/llvm/include/llvm/Analysis/ |
| H A D | InstructionSimplify.h | 250 Value *simplifySelectInst(Value *Cond, Value *TrueVal, Value *FalseVal,
|
| H A D | ScalarEvolution.h | 1717 Value *TrueVal, Value *FalseVal); 1721 Value *TrueVal, 1728 const SCEV *createNodeForSelectOrPHI(Value *V, Value *Cond, Value *TrueVal,
|
| H A D | ValueTracking.h | 762 CmpInst *CmpI, Value *TrueVal, Value *FalseVal, Value *&LHS, Value *&RHS,
|
| /openbsd-src/gnu/llvm/llvm/lib/Target/ARM/ |
| H A D | ARMISelLowering.cpp | 5223 SDValue TrueVal, SDValue ARMcc, SDValue CCR, in getCMOV() argument 5228 TrueVal = DAG.getNode(ARMISD::VMOVRRD, dl, in getCMOV() 5229 DAG.getVTList(MVT::i32, MVT::i32), TrueVal); in getCMOV() 5231 SDValue TrueLow = TrueVal.getValue(0); in getCMOV() 5232 SDValue TrueHigh = TrueVal.getValue(1); in getCMOV() 5243 return DAG.getNode(ARMISD::CMOV, dl, VT, FalseVal, TrueVal, ARMcc, CCR, in getCMOV() 5263 const SDValue TrueVal, const SDValue FalseVal, in isLowerSaturate() argument 5266 ((K == LHS && K == TrueVal) || (K == RHS && K == FalseVal))) || in isLowerSaturate() 5268 ((K == RHS && K == TrueVal) || (K == LHS && K == FalseVal))); in isLowerSaturate() 5360 SDValue TrueVal = Op.getOperand(2); in isLowerSaturatingConditional() local [all …]
|
| /openbsd-src/gnu/llvm/llvm/lib/Target/Lanai/ |
| H A D | LanaiISelLowering.cpp | 1430 SDValue TrueVal = OtherOp; in combineSelectAndUse() local 1435 std::swap(TrueVal, FalseVal); in combineSelectAndUse() 1437 return DAG.getNode(ISD::SELECT, SDLoc(N), VT, CCOp, TrueVal, FalseVal); in combineSelectAndUse()
|
| /openbsd-src/gnu/llvm/llvm/lib/Transforms/Scalar/ |
| H A D | JumpThreading.cpp | 969 Constant *TrueVal = getKnownConstant(SI->getTrueValue(), Preference); in computeValueKnownInPredecessorsImpl() local 972 if ((TrueVal || FalseVal) && in computeValueKnownInPredecessorsImpl() 988 KnownCond = (TrueVal != nullptr); in computeValueKnownInPredecessorsImpl() 992 if (Constant *Val = KnownCond ? TrueVal : FalseVal) in computeValueKnownInPredecessorsImpl()
|
| /openbsd-src/gnu/llvm/llvm/include/llvm/CodeGen/GlobalISel/ |
| H A D | CombinerHelper.h | 878 bool matchFPSelectToMinMax(Register Dst, Register Cond, Register TrueVal,
|