Predator  [unstable] git snapshot
Public Member Functions | Data Fields
Options Struct Reference

#include <glconf.hh>

Collaboration diagram for Options:
Collaboration graph
[legend]

Public Member Functions

 Options ()

Data Fields

bool trackUninit
 enable/disable track_uninit mode
bool oomSimulation
 enable/disable oom simulation mode
bool memLeakIsError
 treat memory leak as an error
bool skipUserPlots
 ignore all ___sl_plot*() calls
int errorRecoveryMode
 
std::string errLabel
 if not empty, treat reaching the label as error
bool allowCyclicTraceGraph
 create node with two parents on entailment
int allowThreeWayJoin
 how much do we allow to use three-way join
bool forbidHeapReplace
 if non-zero, do not replace a previously tracked if entailed by a new one
int intArithmeticLimit
 the highest integral number we can count to (only partial implementation atm)
int joinOnLoopEdgesOnly
 
int stateLiveOrdering
 
bool detectContainers
 detect containers and operations over them
FixedPoint::StateByInsnfixedPoint
 fixed-point plotter (0 if unused)

Detailed Description

Definition at line 33 of file glconf.hh.

Constructor & Destructor Documentation

Options ( )

Field Documentation

bool allowCyclicTraceGraph

create node with two parents on entailment

Definition at line 40 of file glconf.hh.

int allowThreeWayJoin

how much do we allow to use three-way join

  • 0 ... never ever
  • 1 ... only when joining prototypes
  • 2 ... also when joining states if the three-way join is considered useful
  • 3 ... do not restrict the usage of three-way join at the level of symjoin

Definition at line 41 of file glconf.hh.

bool detectContainers

detect containers and operations over them

Definition at line 46 of file glconf.hh.

std::string errLabel

if not empty, treat reaching the label as error

Definition at line 39 of file glconf.hh.

int errorRecoveryMode

  • 0 no error recovery, stop the analysis as soon as an error is detected
  • 1 low-cost error recovery (stop analyzing paths with errors already caught)
  • 2 full error recovery (keep analyzing until a non-recoverable error occurs)

Definition at line 38 of file glconf.hh.

fixed-point plotter (0 if unused)

Definition at line 47 of file glconf.hh.

bool forbidHeapReplace

if non-zero, do not replace a previously tracked if entailed by a new one

Definition at line 42 of file glconf.hh.

int intArithmeticLimit

the highest integral number we can count to (only partial implementation atm)

Definition at line 43 of file glconf.hh.

int joinOnLoopEdgesOnly

  • -1 ... never join, never check for entailment, always check for isomorphism
  • 0 ... join states on each basic block entry
  • 1 ... join only when traversing a loop-closing edge, entailment otherwise
  • 2 ... join only when traversing a loop-closing edge, isomorphism otherwise
  • 3 ... same as 2 but skips the isomorphism check when considered redundant

Definition at line 44 of file glconf.hh.

bool memLeakIsError

treat memory leak as an error

Definition at line 36 of file glconf.hh.

bool oomSimulation

enable/disable oom simulation mode

Definition at line 35 of file glconf.hh.

bool skipUserPlots

ignore all ___sl_plot*() calls

Definition at line 37 of file glconf.hh.

int stateLiveOrdering

  • 0 ... do not try to optimize the order of heaps in SymState containers
  • 1 ... reorder heaps in SymStateWithJoin based on hit ratio
  • 2 ... reorder heaps also in SymHeapUnion based on hit ratio [experimental]

Definition at line 45 of file glconf.hh.

bool trackUninit

enable/disable track_uninit mode

Definition at line 34 of file glconf.hh.


The documentation for this struct was generated from the following file: