Lines Matching refs:State
29 void taint::printTaint(ProgramStateRef State, raw_ostream &Out, const char *NL, in REGISTER_MAP_WITH_PROGRAMSTATE()
31 TaintMapTy TM = State->get<TaintMap>(); in REGISTER_MAP_WITH_PROGRAMSTATE()
40 void dumpTaint(ProgramStateRef State) { printTaint(State, llvm::errs()); } in dumpTaint() argument
42 ProgramStateRef taint::addTaint(ProgramStateRef State, const Stmt *S, in addTaint() argument
45 return addTaint(State, State->getSVal(S, LCtx), Kind); in addTaint()
48 ProgramStateRef taint::addTaint(ProgramStateRef State, SVal V, in addTaint() argument
52 return addTaint(State, Sym, Kind); in addTaint()
65 State->getStateManager().getStoreManager().getDefaultBinding( in addTaint()
68 return addPartialTaint(State, Sym, LCV->getRegion(), Kind); in addTaint()
73 return addTaint(State, R, Kind); in addTaint()
76 ProgramStateRef taint::addTaint(ProgramStateRef State, const MemRegion *R, in addTaint() argument
79 return addTaint(State, SR->getSymbol(), Kind); in addTaint()
80 return State; in addTaint()
83 ProgramStateRef taint::addTaint(ProgramStateRef State, SymbolRef Sym, in addTaint() argument
90 ProgramStateRef NewState = State->set<TaintMap>(Sym, Kind); in addTaint()
95 ProgramStateRef taint::removeTaint(ProgramStateRef State, SVal V) { in removeTaint() argument
98 return removeTaint(State, Sym); in removeTaint()
101 return removeTaint(State, R); in removeTaint()
104 ProgramStateRef taint::removeTaint(ProgramStateRef State, const MemRegion *R) { in removeTaint() argument
106 return removeTaint(State, SR->getSymbol()); in removeTaint()
107 return State; in removeTaint()
110 ProgramStateRef taint::removeTaint(ProgramStateRef State, SymbolRef Sym) { in removeTaint() argument
116 ProgramStateRef NewState = State->remove<TaintMap>(Sym); in removeTaint()
121 ProgramStateRef taint::addPartialTaint(ProgramStateRef State, in addPartialTaint() argument
126 if (const TaintTagType *T = State->get<TaintMap>(ParentSym)) in addPartialTaint()
128 return State; in addPartialTaint()
132 return addTaint(State, ParentSym, Kind); in addPartialTaint()
134 const TaintedSubRegions *SavedRegs = State->get<DerivedSymTaint>(ParentSym); in addPartialTaint()
135 TaintedSubRegions::Factory &F = State->get_context<TaintedSubRegions>(); in addPartialTaint()
139 ProgramStateRef NewState = State->set<DerivedSymTaint>(ParentSym, Regs); in addPartialTaint()
144 bool taint::isTainted(ProgramStateRef State, const Stmt *S, in isTainted() argument
146 SVal val = State->getSVal(S, LCtx); in isTainted()
147 return isTainted(State, val, Kind); in isTainted()
150 bool taint::isTainted(ProgramStateRef State, SVal V, TaintTagType Kind) { in isTainted() argument
152 return isTainted(State, Sym, Kind); in isTainted()
154 return isTainted(State, Reg, Kind); in isTainted()
158 bool taint::isTainted(ProgramStateRef State, const MemRegion *Reg, in isTainted() argument
166 return isTainted(State, ER->getSuperRegion(), K) || in isTainted()
167 isTainted(State, ER->getIndex(), K); in isTainted()
170 return isTainted(State, SR->getSymbol(), K); in isTainted()
173 return isTainted(State, ER->getSuperRegion(), K); in isTainted()
178 bool taint::isTainted(ProgramStateRef State, SymbolRef Sym, TaintTagType Kind) { in isTainted() argument
189 if (const TaintTagType *Tag = State->get<TaintMap>(*SI)) { in isTainted()
196 if (isTainted(State, SD->getParentSymbol(), Kind)) in isTainted()
203 State->get<DerivedSymTaint>(SD->getParentSymbol())) { in isTainted()
218 if (isTainted(State, SRV->getRegion(), Kind)) in isTainted()
224 if (isTainted(State, SC->getOperand(), Kind)) in isTainted()