Home
last modified time | relevance | path

Searched refs:TrueVal (Results 1 – 25 of 41) sorted by relevance

12

/openbsd-src/gnu/llvm/llvm/lib/Transforms/InstCombine/
H A DInstCombineSelect.cpp462 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 DInstCombineShifts.cpp554 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 DInstCombineAddSub.cpp2222 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 DInstructionSimplify.cpp78 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 DValueTracking.cpp5951 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 DLazyValueInfo.cpp815 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 DIVDescriptors.cpp734 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 DInlineCost.cpp2274 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 DScalarEvolution.cpp6114 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 DDataflowAnalysisContext.h80 : 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 DProfDataUtils.cpp135 bool extractBranchWeights(const Instruction &I, uint64_t &TrueVal, in extractBranchWeights() argument
150 TrueVal = Weights[0]; in extractBranchWeights()
H A DConstantFold.cpp596 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 DProfDataUtils.h83 bool extractBranchWeights(const Instruction &I, uint64_t &TrueVal,
/openbsd-src/gnu/llvm/llvm/lib/Transforms/Vectorize/
H A DLoopVectorizationPlanner.h154 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 DSROA.h51 using TrueVal = Bitfield::Element<bool, 0, 1>; // Low 0'th bit. variable
/openbsd-src/gnu/llvm/llvm/lib/TableGen/
H A DTGLexer.h62 TrueVal, FalseVal, enumerator
H A DTGLexer.cpp358 .Case("true", tgtok::TrueVal) in LexIdentifier()
/openbsd-src/gnu/llvm/llvm/lib/Target/VE/
H A DVECustomDAG.cpp413 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 DInstructionSimplify.h250 Value *simplifySelectInst(Value *Cond, Value *TrueVal, Value *FalseVal,
H A DScalarEvolution.h1717 Value *TrueVal, Value *FalseVal);
1721 Value *TrueVal,
1728 const SCEV *createNodeForSelectOrPHI(Value *V, Value *Cond, Value *TrueVal,
H A DValueTracking.h762 CmpInst *CmpI, Value *TrueVal, Value *FalseVal, Value *&LHS, Value *&RHS,
/openbsd-src/gnu/llvm/llvm/lib/Target/ARM/
H A DARMISelLowering.cpp5223 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 DLanaiISelLowering.cpp1430 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 DJumpThreading.cpp969 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 DCombinerHelper.h878 bool matchFPSelectToMinMax(Register Dst, Register Cond, Register TrueVal,

12