|
Static Value-Flow Analysis
|
#include <MTAResultValidator.h>
Public Types | |
| typedef int | INTERLEV_FLAG |
| typedef int | INTERLEV_FLAG |
Public Member Functions | |
| MTAResultValidator (MHP *mh) | |
| ~MTAResultValidator () | |
| void | analyze () |
| SVFModule * | getModule () const |
| MTAResultValidator (MHP *mh) | |
| ~MTAResultValidator () | |
| void | analyze () |
| SVFModule * | getModule () const |
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 () |
| 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 Types | |
| typedef Map< NodeID, const SVFInstruction * > | csnumToInst |
| typedef Map< NodeID, CallStrCxt > | vthdToCxtMap |
| typedef Map< NodeID, NodeID > | vthdTorthdMap |
| typedef Map< NodeID, NodeID > | rthdTovthdMap |
| typedef Map< NodeID, Set< NodeID > > | rthdToChildrenMap |
| typedef Map< NodeID, const SVFInstruction * > | csnumToInst |
| typedef Map< NodeID, CallStrCxt > | vthdToCxtMap |
| typedef Map< NodeID, NodeID > | vthdTorthdMap |
| typedef Map< NodeID, NodeID > | rthdTovthdMap |
| typedef Map< NodeID, Set< NodeID > > | rthdToChildrenMap |
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 |
Definition at line 22 of file MTAResultValidator.h.
|
private |
Definition at line 121 of file MTAResultValidator.h.
|
private |
Definition at line 120 of file MTAResultValidator.h.
| typedef int SVF::MTAResultValidator::INTERLEV_FLAG |
Definition at line 26 of file MTAResultValidator.h.
| typedef int SVF::MTAResultValidator::INTERLEV_FLAG |
Definition at line 25 of file MTAResultValidator.h.
|
private |
Definition at line 126 of file MTAResultValidator.h.
|
private |
Definition at line 125 of file MTAResultValidator.h.
|
private |
Definition at line 124 of file MTAResultValidator.h.
|
private |
Definition at line 123 of file MTAResultValidator.h.
|
private |
Definition at line 122 of file MTAResultValidator.h.
|
private |
Definition at line 121 of file MTAResultValidator.h.
|
private |
Definition at line 123 of file MTAResultValidator.h.
|
private |
Definition at line 122 of file MTAResultValidator.h.
|
inline |
Definition at line 27 of file MTAResultValidator.h.
|
inline |
Definition at line 35 of file MTAResultValidator.h.
|
inline |
Definition at line 26 of file MTAResultValidator.h.
|
inline |
Definition at line 34 of file MTAResultValidator.h.
| void MTAResultValidator::analyze | ( | ) |
Definition at line 40 of file MTAResultValidator.cpp.
| void SVF::MTAResultValidator::analyze | ( | ) |
|
protected |
Definition at line 215 of file MTAResultValidator.cpp.
|
protected |
|
protected |
Definition at line 246 of file MTAResultValidator.cpp.
|
protected |
|
protected |
Definition at line 322 of file MTAResultValidator.cpp.
|
protected |
|
protected |
Definition at line 284 of file MTAResultValidator.cpp.
|
protected |
|
protected |
Definition at line 189 of file MTAResultValidator.cpp.
|
protected |
|
protected |
Definition at line 204 of file MTAResultValidator.cpp.
|
protected |
|
protected |
Definition at line 115 of file MTAResultValidator.cpp.
|
protected |
|
protected |
|
protected |
|
inline |
Definition at line 41 of file MTAResultValidator.h.
|
inline |
Definition at line 40 of file MTAResultValidator.h.
|
inlineprotected |
Definition at line 149 of file MTAResultValidator.cpp.
|
inlineprotected |
|
inlineprotected |
Definition at line 161 of file MTAResultValidator.cpp.
|
inlineprotected |
|
protected |
Definition at line 137 of file MTAResultValidator.cpp.
|
protected |
|
protected |
Definition at line 95 of file MTAResultValidator.cpp.
|
protected |
|
protected |
Definition at line 182 of file MTAResultValidator.cpp.
|
protected |
|
protected |
Definition at line 80 of file MTAResultValidator.cpp.
|
protected |
|
protected |
Definition at line 69 of file MTAResultValidator.cpp.
|
protected |
|
protected |
Definition at line 372 of file MTAResultValidator.cpp.
|
protected |
|
protected |
Definition at line 498 of file MTAResultValidator.cpp.
|
protected |
|
protected |
Definition at line 447 of file MTAResultValidator.cpp.
|
protected |
|
private |
Definition at line 141 of file MTAResultValidator.h.
|
staticconstexprprivate |
Map a statement to its thread interleavings.
Definition at line 131 of file MTAResultValidator.h.
|
private |
Definition at line 128 of file MTAResultValidator.h.
|
staticconstexprprivate |
Definition at line 132 of file MTAResultValidator.h.
|
staticprivate |
Definition at line 147 of file MTAResultValidator.h.
|
staticprivate |
Constant INTERLEV_FLAG values.
Definition at line 146 of file MTAResultValidator.h.
|
staticprivate |
Definition at line 148 of file MTAResultValidator.h.
|
private |
Definition at line 137 of file MTAResultValidator.h.
|
private |
Definition at line 143 of file MTAResultValidator.h.
|
private |
Definition at line 142 of file MTAResultValidator.h.
|
private |
Definition at line 140 of file MTAResultValidator.h.
|
private |
Definition at line 136 of file MTAResultValidator.h.
|
staticconstexprprivate |
Definition at line 133 of file MTAResultValidator.h.
|
private |
Definition at line 135 of file MTAResultValidator.h.
|
private |
Definition at line 129 of file MTAResultValidator.h.
|
private |
Definition at line 138 of file MTAResultValidator.h.
|
private |
Definition at line 139 of file MTAResultValidator.h.