Lines Matching refs:IV

166     const ValueLatticeElement &IV = Solver.getLatticeValueFor(V);  in replaceSignedInst()  local
167 return IV.isConstantRange(/*UndefAllowed=*/false) && in replaceSignedInst()
168 IV.getConstantRange().isAllNonNegative(); in replaceSignedInst()
409 ConstantInt *getConstantInt(const ValueLatticeElement &IV, Type *Ty) const { in getConstantInt() argument
410 return dyn_cast_or_null<ConstantInt>(getConstant(IV, Ty)); in getConstantInt()
414 void pushToWorkList(ValueLatticeElement &IV, Value *V);
418 void pushToWorkListMsg(ValueLatticeElement &IV, Value *V);
423 bool markConstant(ValueLatticeElement &IV, Value *V, Constant *C,
434 bool markOverdefined(ValueLatticeElement &IV, Value *V);
438 bool mergeInValue(ValueLatticeElement &IV, Value *V,
690 ValueLatticeElement &IV = TrackedGlobals[GV]; in trackValueOfGlobalVariable() local
691 IV.markConstant(GV->getInitializer()); in trackValueOfGlobalVariable()
852 void SCCPInstVisitor::pushToWorkList(ValueLatticeElement &IV, Value *V) { in pushToWorkList() argument
853 if (IV.isOverdefined()) { in pushToWorkList()
862 void SCCPInstVisitor::pushToWorkListMsg(ValueLatticeElement &IV, Value *V) { in pushToWorkListMsg() argument
863 LLVM_DEBUG(dbgs() << "updated " << IV << ": " << *V << '\n'); in pushToWorkListMsg()
864 pushToWorkList(IV, V); in pushToWorkListMsg()
867 bool SCCPInstVisitor::markConstant(ValueLatticeElement &IV, Value *V, in markConstant() argument
869 if (!IV.markConstant(C, MayIncludeUndef)) in markConstant()
872 pushToWorkList(IV, V); in markConstant()
876 bool SCCPInstVisitor::markOverdefined(ValueLatticeElement &IV, Value *V) { in markOverdefined() argument
877 if (!IV.markOverdefined()) in markOverdefined()
885 pushToWorkList(IV, V); in markOverdefined()
989 bool SCCPInstVisitor::mergeInValue(ValueLatticeElement &IV, Value *V, in mergeInValue() argument
992 if (IV.mergeIn(MergeWithV, Opts)) { in mergeInValue()
993 pushToWorkList(IV, V); in mergeInValue()
995 << IV << "\n"); in mergeInValue()
1173 ValueLatticeElement IV = getValueState(PN.getIncomingValue(i)); in visitPHINode() local
1174 PhiState.mergeIn(IV); in visitPHINode()
1401 ValueLatticeElement &IV = ValueState[&I]; in visitUnaryOperator() local
1404 if (SCCPSolver::isOverdefined(IV)) in visitUnaryOperator()
1414 return (void)markConstant(IV, &I, C); in visitUnaryOperator()
1426 ValueLatticeElement &IV = ValueState[&I]; in visitFreezeInst() local
1429 if (SCCPSolver::isOverdefined(IV)) in visitFreezeInst()
1438 return (void)markConstant(IV, &I, getConstant(V0State, I.getType())); in visitFreezeInst()
1448 ValueLatticeElement &IV = ValueState[&I]; in visitBinaryOperator() local
1449 if (IV.isOverdefined()) in visitBinaryOperator()
1605 ValueLatticeElement &IV = ValueState[&I]; in visitLoadInst() local
1613 return (void)markOverdefined(IV, &I); in visitLoadInst()
1624 mergeInValue(IV, &I, It->second, getMaxWidenStepsOpts()); in visitLoadInst()
1632 return (void)markConstant(IV, &I, C); in visitLoadInst()
1748 ValueLatticeElement &IV = ValueState[&CB]; in handleCallResult() local
1775 IV, &CB, in handleCallResult()
1783 mergeInValue(IV, &CB, CondVal); in handleCallResult()
1788 mergeInValue(IV, &CB, in handleCallResult()
1793 return (void)mergeInValue(IV, &CB, CopyOfVal); in handleCallResult()