Searched refs:ValueLatticeElement (Results 1 – 7 of 7) sorted by relevance
96 static ValueLatticeElement intersect(const ValueLatticeElement &A, in intersect()128 return ValueLatticeElement::getRange( in intersect()880 ValueLatticeElement &Val = *OptVal; in getRangeFor()980 Optional<ValueLatticeElement>1154 static Optional<ValueLatticeElement>1470 ValueLatticeElement Result = ValueLatticeElement::getOverdefined(); in getValueAt()1589 ValueLatticeElement Result = in getConstant()1607 ValueLatticeElement Result = in getConstantRange()1626 ValueLatticeElement Result = in getConstantOnEdge()1645 ValueLatticeElement Result = in getConstantRangeOnEdge()[all …]
12 raw_ostream &operator<<(raw_ostream &OS, const ValueLatticeElement &Val) { in operator <<()
27 class ValueLatticeElement {148 ~ValueLatticeElement() { destroy(); } in ~ValueLatticeElement()150 ValueLatticeElement(const ValueLatticeElement &Other) in ValueLatticeElement() function169 ValueLatticeElement(ValueLatticeElement &&Other) in ValueLatticeElement() function189 ValueLatticeElement &operator=(const ValueLatticeElement &Other) {195 ValueLatticeElement &operator=(ValueLatticeElement &&Other) {202 ValueLatticeElement Res; in get()210 ValueLatticeElement Res; in getNot()221 ValueLatticeElement Res;227 ValueLatticeElement Res;[all …]
50 bool isConstant(const ValueLatticeElement &LV) { in isConstant()73 DenseMap<Value *, ValueLatticeElement>510 ValueLatticeElement LV = It->second; in isStructLatticeConstant()934 ValueLatticeElement &IV = ValueState[&I]; in visitUnaryOperator()961 ValueLatticeElement &IV = ValueState[&I]; in visitBinaryOperator()988 ValueLatticeElement NewV; in visitBinaryOperator()1033 ValueLatticeElement CV; in visitCmpInst()1104 return ValueLatticeElement::getRange( in getValueFromMetadata()1107 return ValueLatticeElement::getNot( in getValueFromMetadata()1129 ValueLatticeElement &IV = ValueState[&I]; in visitLoadInst()[all …]
104 std::vector<ValueLatticeElement> getStructLatticeValueFor(Value *V) const;108 const ValueLatticeElement &getLatticeValueFor(Value *V) const;111 const MapVector<Function *, ValueLatticeElement> &getTrackedRetVals();115 const DenseMap<GlobalVariable *, ValueLatticeElement> &getTrackedGlobals();132 Constant *getConstant(const ValueLatticeElement &LV) const;
87 static bool isConstant(const ValueLatticeElement &LV) { in isConstant()96 static bool isOverdefined(const ValueLatticeElement &LV) { in isOverdefined()103 std::vector<ValueLatticeElement> IVs = Solver.getStructLatticeValueFor(V); in tryToReplaceWithConstant()105 [](const ValueLatticeElement &LV) { return isOverdefined(LV); })) in tryToReplaceWithConstant()110 ValueLatticeElement V = IVs[i]; in tryToReplaceWithConstant()117 const ValueLatticeElement &IV = Solver.getLatticeValueFor(V); in tryToReplaceWithConstant()169 const ValueLatticeElement &IV = Solver.getLatticeValueFor(ExtOp); in simplifyInstsInBlock()323 [](const ValueLatticeElement &LV) { in findReturnsToZap()572 const ValueLatticeElement &ReturnValue = I.second; in runIPSCCP()
72 static bool isOverdefined(const ValueLatticeElement &LV) { in isOverdefined()138 const ValueLatticeElement &IV = Solver.getLatticeValueFor(V); in tryToReplaceWithConstant()