• Home
  • Raw
  • Download

Lines Matching refs:PInfo

445 setStateForVarOrTmp(ConsumedStateMap *StateMap, const PropagationInfo &PInfo,  in setStateForVarOrTmp()  argument
448 assert(PInfo.isVar() || PInfo.isTmp()); in setStateForVarOrTmp()
450 if (PInfo.isVar()) in setStateForVarOrTmp()
451 StateMap->setState(PInfo.getVar(), State); in setStateForVarOrTmp()
453 StateMap->setState(PInfo.getTmp(), State); in setStateForVarOrTmp()
491 void checkCallability(const PropagationInfo &PInfo,
545 PropagationInfo& PInfo = Entry->second; in copyInfo() local
546 ConsumedState CS = PInfo.getAsState(StateMap); in copyInfo()
549 if (NS != CS_None && PInfo.isPointerToValue()) in copyInfo()
550 setStateForVarOrTmp(StateMap, PInfo, NS); in copyInfo()
559 PropagationInfo& PInfo = Entry->second; in getInfo() local
560 return PInfo.getAsState(StateMap); in getInfo()
570 PropagationInfo& PInfo = Entry->second; in setInfo() local
571 if (PInfo.isPointerToValue()) in setInfo()
572 setStateForVarOrTmp(StateMap, PInfo, NS); in setInfo()
580 void ConsumedStmtVisitor::checkCallability(const PropagationInfo &PInfo, in checkCallability() argument
583 assert(!PInfo.isTest()); in checkCallability()
589 if (PInfo.isVar()) { in checkCallability()
590 ConsumedState VarState = StateMap->getState(PInfo.getVar()); in checkCallability()
596 FunDecl->getNameAsString(), PInfo.getVar()->getNameAsString(), in checkCallability()
600 ConsumedState TmpState = PInfo.getAsState(StateMap); in checkCallability()
633 PropagationInfo PInfo = Entry->second; in handleCall() local
637 ConsumedState ParamState = PInfo.getAsState(StateMap); in handleCall()
651 setStateForVarOrTmp(StateMap, PInfo, consumed::CS_Consumed); in handleCall()
653 setStateForVarOrTmp(StateMap, PInfo, mapReturnTypestateAttrState(RT)); in handleCall()
657 setStateForVarOrTmp(StateMap, PInfo, consumed::CS_Unknown); in handleCall()
666 PropagationInfo PInfo = Entry->second; in handleCall() local
667 checkCallability(PInfo, FunD, Call->getExprLoc()); in handleCall()
670 if (PInfo.isVar()) { in handleCall()
671 StateMap->setState(PInfo.getVar(), mapSetTypestateAttrState(STA)); in handleCall()
674 else if (PInfo.isTmp()) { in handleCall()
675 StateMap->setState(PInfo.getTmp(), mapSetTypestateAttrState(STA)); in handleCall()
679 else if (isTestingFunction(FunD) && PInfo.isVar()) { in handleCall()
681 PropagationInfo(PInfo.getVar(), testsFor(FunD)))); in handleCall()
937 PropagationInfo PInfo = VIT->second; in VisitVarDecl() local
938 ConsumedState St = PInfo.getAsState(StateMap); in VisitVarDecl()
972 static void splitVarStateForIfBinOp(const PropagationInfo &PInfo, in splitVarStateForIfBinOp() argument
975 const VarTestResult &LTest = PInfo.getLTest(), in splitVarStateForIfBinOp()
976 &RTest = PInfo.getRTest(); in splitVarStateForIfBinOp()
982 if (PInfo.testEffectiveOp() == EO_And) { in splitVarStateForIfBinOp()
1016 if (PInfo.testEffectiveOp() == EO_And) { in splitVarStateForIfBinOp()
1266 PropagationInfo PInfo; in splitState() local
1273 PInfo = Visitor.getInfo(Cond); in splitState()
1274 if (!PInfo.isValid() && isa<BinaryOperator>(Cond)) in splitState()
1275 PInfo = Visitor.getInfo(cast<BinaryOperator>(Cond)->getRHS()); in splitState()
1277 if (PInfo.isVarTest()) { in splitState()
1280 splitVarStateForIf(IfNode, PInfo.getVarTest(), CurrStates.get(), in splitState()
1283 } else if (PInfo.isBinTest()) { in splitState()
1284 CurrStates->setSource(PInfo.testSourceNode()); in splitState()
1285 FalseStates->setSource(PInfo.testSourceNode()); in splitState()
1286 splitVarStateForIfBinOp(PInfo, CurrStates.get(), FalseStates.get()); in splitState()
1295 PInfo = Visitor.getInfo(BinOp->getLHS()); in splitState()
1296 if (!PInfo.isVarTest()) { in splitState()
1298 PInfo = Visitor.getInfo(BinOp->getRHS()); in splitState()
1300 if (!PInfo.isVarTest()) in splitState()
1311 const VarTestResult &Test = PInfo.getVarTest(); in splitState()