AdtOp | |
OpFootprint | Operation footprint given by an input/output template pair |
OpTemplate | Operation (push_back, erase, ...) template we can match by footprints |
OpCollection | Collection of operation templates |
FootprintMatch | |
MetaOperation | |
CodeStorage | Object model that describes the analyzed code on the input |
CallGraph | |
Node | Call-graph node (there is a 1:1 relation with Fnc, if the CG is built) |
Graph | |
PointsTo | |
Item | |
Node | |
Graph | |
GlobalData | |
VarKiller | |
BlockData | Per-block data |
Var | High-level variable representation |
VarDb | Lookup container for set of Var objects |
TypeDb | Type lookup table |
NameDb | Name to UID mapping for global/static symbols |
KillVar | Value type describing a single 'kill variable' hint |
ltKillVar | FIXME: inserting <id,0> and <id,1> could break the consistency of std::set |
Insn | High-level representation of an intermediate code instruction |
Block | Basic block - a single node in ControlFlow graph |
ControlFlow | Control flow graph - an easy to analyse representation of the intermediate code |
Fnc | Function definition |
FncDb | Lookup container for set of Fnc objects |
Storage | Value type representing the whole serialised model of code |
ContShape | |
FixedPoint | |
GenericInsn | |
TraceEdge | Single heap-level trace edge holding inner ID mappings inside |
CfgEdge | Single control-flow edge connecting instructions (no basic blocks here) |
LocalState | State summary for a single location (preceding a single instruction) |
GlobalState | Annotated fixed-point of a program (or its part, e.g. a function) |
StateByInsn | |
IStateRewriter | |
MultiRewriter | |
RecordRewriter | |
StateRewriter | |
GenericVar | |
AnnotatedInsn | |
ClInsn | |
TextInsn | |
GlConf | |
Options | |
IR | |
Range | Closed interval over integral domain |
Trace | Directed acyclic graph of the symbolic execution trace |
NodeBase | Abstract base for Node and NodeHandle (externally not much useful) |
Node | Abstract node of the symbolic execution trace graph |
NodeHandle | Useful to prevent a trace sub-graph from being destroyed too early |
TransientNode | Used to explicitly highlight trace graph nodes that should not be reachable |
RootNode | Root node of the trace graph (usually a call of the root function) |
InsnNode | Trace graph node that represents a non-terminal instruction |
CondNode | Trace graph node that represents a conditional insn being traversed |
AbstractionNode | Trace graph node that represents a single abstraction step |
ConcretizationNode | Trace graph node that represents a single concretization step |
SpliceOutNode | Trace graph node that represents a single splice-out operation |
JoinNode | Trace graph node that represents a single join operation |
CloneNode | Trace graph nodes inserted automatically per each SymHeap clone operation |
CallEntryNode | Trace graph node representing a call entry point |
CallCacheHitNode | Trace graph node representing a cached call result |
CallFrameNode | Trace graph node representing a call frame |
CallDoneNode | Trace graph node representing a call result |
ImportGlVarNode | Trace graph node that represents a single call of importGlVar() |
MsgNode | Trace graph node representing an error/warning message |
UserNode | Trace graph node representing something important for the user |
EndPointConsolidator | Container maintaining a set of trace graph end-points |
GraphProxy | Container maintaining a set of trace graphs being built on the fly |
Globals | Singleton holding global GraphProxy (may be extended later) |
BindingOff | Tuple of binding offsets assigned to abstract objects |
BlockScheduler | |
CallInst | Bundles static identification of a function with its call instance number |
cl_accessor | Accessor definition, available for some operands |
cl_code_listener | Listener object - the core part of this interface |
cl_cst | Constant, in the C language terminology: literal |
cl_init_data | Collection of call-backs for writing various types of messages |
cl_initializer | Initializer, used mainly for global/static variables |
cl_insn | Single instruction definition |
cl_loc | Generic location info |
cl_operand | Generic operand |
cl_type | Type definition available for each operand |
cl_type_item | Used for nesting types into another (composite) type |
cl_var | Variable (local, global, fnc argument, register, etc.) |
CleanList | |
CltStackItem | |
CmpOpTraits | |
CustomValue | Representation of a custom value, such as integer literal, or code pointer |
CustomValueData | |
CVar | Bundles static identification of a variable with its instance number |
EntCounter | |
EntStore | |
FldHandle | |
FldList | Ugly, but typedefs do not support partial declarations |
IdMapper | |
IntervalArena | Ad-hoc implementation; wastes memory, performance, and human resources |
IPendingCountProvider | |
IStatsProvider | |
LeakMonitor | |
PlotEnumerator | |
ProtectionIntrusion | Temporarily disable protected mode of SymHeap in a debug build |
PtrHandle | |
RefCntLib< RCO_NON_VIRT > | |
RefCntLib< RCO_VIRTUAL > | |
RefCntLibBase | |
RefCounter | |
Shape | Inductive definition of a container shape |
ShapeProps | Describe how the shape looks like |
SignalCatcher | |
SymBackTrace | Backtrace management |
SymCallCache | Persistent cache for results of fncs called during the symbolic execution |
SymCallCtx | Function call context, which represents a cache entry of SymCallCache |
SymExecCore | Extension of SymProc, now only used by SymExecEngine::execNontermInsn() |
SymExecCoreParams | |
SymHeap | Extension of SymHeapCore dealing with abstract objects (list segments etc.) |
SymHeapCore | SymHeapCore - the elementary representation of the state of program memory |
SymHeapList | |
SymHeapUnion | Symbolic state represented as a union of SymHeap objects (aka disjuncts) |
SymPairMap | |
SymPairSet | Symmetric relation |
SymProc | Layer on top of SymHeap, providing some higher-level operations |
SymState | |
SymStateMap | Higher-level container that maintains a SymStateMarked object per each basic block |
SymStateMarked | Extension of SymStateWithJoin, which distinguishes among already processed symbolic heaps and symbolic heaps scheduled for processing |
SymStateWithJoin | |
UniformBlock | Only uninitialized or nullified blocks; generic arrays and strings need more |
WorkList | Really stupid, but easy to use, DFS implementation |
WorkListLib | |
WorkListLib< T, std::queue< T > > | |
WorkListLib< T, std::stack< T > > | |