|
SVF
|
#include <MTAResultValidator.h>
Public Types | |
| typedef int | INTERLEV_FLAG |
Public Member Functions | |
| MTAResultValidator (MHP *mh) | |
| ~MTAResultValidator () | |
| void | analyze () |
Protected Member Functions | |
| std::vector< std::string > & | split (const std::string &s, char delim, std::vector< std::string > &elems) |
| std::vector< std::string > | split (const std::string &s, char delim) |
| NodeID | getIntArg (const Instruction *inst, unsigned int arg_num) |
| std::vector< std::string > | getStringArg (const Instruction *inst, unsigned int arg_num) |
| CallStrCxt | getCxtArg (const Instruction *inst, unsigned int arg_num) |
| const Instruction * | getPreviousMemoryAccessInst (const Instruction *I) |
| bool | matchCxt (const CallStrCxt cxt1, const CallStrCxt cxt2) const |
| void | dumpCxt (const CallStrCxt &cxt) const |
| void | dumpInterlev (NodeBS &lev) |
| std::string | getOutput (const char *scenario, bool analysisRes) |
| std::string | getOutputforInterlevAnalysis (const char *scenario, INTERLEV_FLAG analysisRes) |
| bool | collectCallsiteTargets () |
| bool | collectCxtThreadTargets () |
| bool | collectTCTTargets () |
| bool | collectInterleavingTargets () |
| bool | validateCxtThread () |
| bool | validateTCT () |
| INTERLEV_FLAG | validateInterleaving () |
Private Attributes | |
| Map< NodeID, const CallInst * > | csnumToInstMap |
| Map< NodeID, CallStrCxt > | vthdToCxt |
| Map< NodeID, NodeID > | vthdTorthd |
| Map< NodeID, NodeID > | rthdTovthd |
| Map< NodeID, Set< NodeID > > | rthdToChildren |
| MHP::InstToThreadStmtSetMap | instToTSMap |
| MHP::ThreadStmtToThreadInterleav | threadStmtToInterLeaving |
| ThreadAPI * | tdAPI |
| ThreadCallGraph * | tcg |
| MHP * | mhp |
Static Private Attributes | |
| static constexpr char const * | CXT_THREAD = "CXT_THREAD" |
| Map a statement to its thread interleavings. More... | |
| static constexpr char const * | INTERLEV_ACCESS = "INTERLEV_ACCESS" |
| static constexpr char const * | TCT_ACCESS = "TCT_ACCESS" |
| static const INTERLEV_FLAG | INTERLEV_TRUE = 0x01 |
| Constant INTERLEV_FLAG values. More... | |
| static const INTERLEV_FLAG | INTERLEV_IMPRECISE = 0x02 |
| static const INTERLEV_FLAG | INTERLEV_UNSOUND = 0x04 |
Validate the result of context-sensitive analysis, including context-sensitive thread detection and thread interleaving.
Definition at line 21 of file MTAResultValidator.h.
| typedef int MTAResultValidator::INTERLEV_FLAG |
Definition at line 25 of file MTAResultValidator.h.
|
inline |
Definition at line 26 of file MTAResultValidator.h.
|
inline |
Definition at line 33 of file MTAResultValidator.h.
| void MTAResultValidator::analyze | ( | ) |
Definition at line 18 of file MTAResultValidator.cpp.
|
protected |
Definition at line 183 of file MTAResultValidator.cpp.
|
protected |
Definition at line 213 of file MTAResultValidator.cpp.
|
protected |
Definition at line 265 of file MTAResultValidator.cpp.
|
protected |
Definition at line 239 of file MTAResultValidator.cpp.
|
protected |
Definition at line 157 of file MTAResultValidator.cpp.
|
protected |
Definition at line 172 of file MTAResultValidator.cpp.
|
protected |
Definition at line 84 of file MTAResultValidator.cpp.
|
protected |
Definition at line 58 of file MTAResultValidator.cpp.
|
inlineprotected |
Definition at line 117 of file MTAResultValidator.cpp.
|
inlineprotected |
Definition at line 129 of file MTAResultValidator.cpp.
|
protected |
Definition at line 105 of file MTAResultValidator.cpp.
|
protected |
Definition at line 67 of file MTAResultValidator.cpp.
|
protected |
Definition at line 150 of file MTAResultValidator.cpp.
|
protected |
Definition at line 41 of file MTAResultValidator.cpp.
|
protected |
Definition at line 52 of file MTAResultValidator.cpp.
|
protected |
Definition at line 302 of file MTAResultValidator.cpp.
|
protected |
Definition at line 425 of file MTAResultValidator.cpp.
|
protected |
Definition at line 374 of file MTAResultValidator.cpp.
|
private |
Definition at line 116 of file MTAResultValidator.h.
|
staticprivate |
Map a statement to its thread interleavings.
Definition at line 126 of file MTAResultValidator.h.
|
private |
Definition at line 123 of file MTAResultValidator.h.
|
staticprivate |
Definition at line 127 of file MTAResultValidator.h.
|
staticprivate |
Definition at line 137 of file MTAResultValidator.h.
|
staticprivate |
Constant INTERLEV_FLAG values.
Definition at line 136 of file MTAResultValidator.h.
|
staticprivate |
Definition at line 138 of file MTAResultValidator.h.
|
private |
Definition at line 132 of file MTAResultValidator.h.
|
private |
Definition at line 121 of file MTAResultValidator.h.
|
private |
Definition at line 119 of file MTAResultValidator.h.
|
private |
Definition at line 131 of file MTAResultValidator.h.
|
staticprivate |
Definition at line 128 of file MTAResultValidator.h.
|
private |
Definition at line 130 of file MTAResultValidator.h.
|
private |
Definition at line 124 of file MTAResultValidator.h.
|
private |
Definition at line 117 of file MTAResultValidator.h.
|
private |
Definition at line 118 of file MTAResultValidator.h.
1.8.13