Lines Matching refs:LatticeVal

57 class LatticeVal {  class
85 LatticeVal() : Val(nullptr, undefined) {} in LatticeVal() function in __anon10360b9e0111::LatticeVal
160 DenseMap<Value*, LatticeVal> ValueState; // The state each value is in.
165 DenseMap<std::pair<Value*, unsigned>, LatticeVal> StructValueState;
171 DenseMap<GlobalVariable*, LatticeVal> TrackedGlobals;
176 DenseMap<Function*, LatticeVal> TrackedRetVals;
180 DenseMap<std::pair<Function*, unsigned>, LatticeVal> TrackedMultipleRetVals;
231 LatticeVal &IV = TrackedGlobals[GV]; in TrackValueOfGlobalVariable()
246 LatticeVal())); in AddTrackedFunction()
248 TrackedRetVals.insert(std::make_pair(F, LatticeVal())); in AddTrackedFunction()
270 LatticeVal getLatticeValueFor(Value *V) const { in getLatticeValueFor()
271 DenseMap<Value*, LatticeVal>::const_iterator I = ValueState.find(V); in getLatticeValueFor()
278 const DenseMap<Function*, LatticeVal> &getTrackedRetVals() { in getTrackedRetVals()
284 const DenseMap<GlobalVariable*, LatticeVal> &getTrackedGlobals() { in getTrackedGlobals()
308 void markConstant(LatticeVal &IV, Value *V, Constant *C) { in markConstant()
324 LatticeVal &IV = ValueState[V]; in markForcedConstant()
337 void markOverdefined(LatticeVal &IV, Value *V) { in markOverdefined()
349 void mergeInValue(LatticeVal &IV, Value *V, LatticeVal MergeWithV) { in mergeInValue()
360 void mergeInValue(Value *V, LatticeVal MergeWithV) { in mergeInValue()
369 LatticeVal &getValueState(Value *V) { in getValueState()
372 std::pair<DenseMap<Value*, LatticeVal>::iterator, bool> I = in getValueState()
373 ValueState.insert(std::make_pair(V, LatticeVal())); in getValueState()
374 LatticeVal &LV = I.first->second; in getValueState()
392 LatticeVal &getStructValueState(Value *V, unsigned i) { in getStructValueState()
397 std::pair<DenseMap<std::pair<Value*, unsigned>, LatticeVal>::iterator, in getStructValueState()
399 std::make_pair(std::make_pair(V, i), LatticeVal())); in getStructValueState()
400 LatticeVal &LV = I.first->second; in getStructValueState()
527 LatticeVal BCValue = getValueState(BI->getCondition()); in getFeasibleSuccessors()
553 LatticeVal SCValue = getValueState(SI->getCondition()); in getFeasibleSuccessors()
596 LatticeVal BCValue = getValueState(BI->getCondition()); in isEdgeFeasible()
616 LatticeVal SCValue = getValueState(SI->getCondition()); in isEdgeFeasible()
676 LatticeVal IV = getValueState(PN.getIncomingValue(i)); in visitPHINode()
717 DenseMap<Function*, LatticeVal>::iterator TFRVI = in visitReturnInst()
749 LatticeVal OpSt = getValueState(I.getOperand(0)); in visitCastInst()
771 LatticeVal EltVal = getStructValueState(AggVal, i); in visitExtractValueInst()
796 LatticeVal EltVal = getStructValueState(Aggr, i); in visitInsertValueInst()
806 LatticeVal InVal = getValueState(Val); in visitInsertValueInst()
818 LatticeVal CondValue = getValueState(I.getCondition()); in visitSelectInst()
831 LatticeVal TVal = getValueState(I.getTrueValue()); in visitSelectInst()
832 LatticeVal FVal = getValueState(I.getFalseValue()); in visitSelectInst()
848 LatticeVal V1State = getValueState(I.getOperand(0)); in visitBinaryOperator()
849 LatticeVal V2State = getValueState(I.getOperand(1)); in visitBinaryOperator()
851 LatticeVal &IV = ValueState[&I]; in visitBinaryOperator()
869 LatticeVal *NonOverdefVal = nullptr; in visitBinaryOperator()
906 LatticeVal V1State = getValueState(I.getOperand(0)); in visitCmpInst()
907 LatticeVal V2State = getValueState(I.getOperand(1)); in visitCmpInst()
909 LatticeVal &IV = ValueState[&I]; in visitCmpInst()
929 LatticeVal &ValState = getValueState(I.getOperand(0)); in visitExtractElementInst()
930 LatticeVal &IdxState = getValueState(I.getOperand(1)); in visitExtractElementInst()
944 LatticeVal &ValState = getValueState(I.getOperand(0)); in visitInsertElementInst()
945 LatticeVal &EltState = getValueState(I.getOperand(1)); in visitInsertElementInst()
946 LatticeVal &IdxState = getValueState(I.getOperand(2)); in visitInsertElementInst()
968 LatticeVal &V1State = getValueState(I.getOperand(0)); in visitShuffleVectorInst()
969 LatticeVal &V2State = getValueState(I.getOperand(1)); in visitShuffleVectorInst()
970 LatticeVal &MaskState = getValueState(I.getOperand(2)); in visitShuffleVectorInst()
1002 LatticeVal State = getValueState(I.getOperand(i)); in visitGetElementPtrInst()
1028 DenseMap<GlobalVariable*, LatticeVal>::iterator I = TrackedGlobals.find(GV); in visitStoreInst()
1045 LatticeVal PtrVal = getValueState(I.getOperand(0)); in visitLoadInst()
1048 LatticeVal &IV = ValueState[&I]; in visitLoadInst()
1064 DenseMap<GlobalVariable*, LatticeVal>::iterator It = in visitLoadInst()
1102 LatticeVal State = getValueState(*AI); in visitCallSite()
1144 LatticeVal CallArg = getStructValueState(*CAI, i); in visitCallSite()
1164 DenseMap<Function*, LatticeVal>::iterator TFRVI = TrackedRetVals.find(F); in visitCallSite()
1273 LatticeVal &LV = getStructValueState(I, i); in ResolvedUndefsIn()
1280 LatticeVal &LV = getValueState(I); in ResolvedUndefsIn()
1294 LatticeVal Op0LV = getValueState(I->getOperand(0)); in ResolvedUndefsIn()
1295 LatticeVal Op1LV; in ResolvedUndefsIn()
1610 LatticeVal IV = Solver.getLatticeValueFor(Inst); in runOnFunction()
1774 LatticeVal IV = Solver.getLatticeValueFor(AI); in runOnModule()
1818 LatticeVal IV = Solver.getLatticeValueFor(Inst); in runOnModule()
1905 const DenseMap<Function*, LatticeVal> &RV = Solver.getTrackedRetVals(); in runOnModule()
1906 for (DenseMap<Function*, LatticeVal>::const_iterator I = RV.begin(), in runOnModule()
1930 const DenseMap<GlobalVariable*, LatticeVal> &TG = Solver.getTrackedGlobals(); in runOnModule()
1931 for (DenseMap<GlobalVariable*, LatticeVal>::const_iterator I = TG.begin(), in runOnModule()