CBMC
Loading...
Searching...
No Matches
Public Member Functions | Public Attributes | List of all members
symex_configt Struct Referencefinal

Configuration used for a symbolic execution. More...

#include <symex_config.h>

Public Member Functions

  Construct a symex_configt using options specified in an optionst.
 

Public Attributes

  The maximum depth to take the execution to.
 
 
 
 
 
 
 
 
  Should the additional validation checks be run? If this flag is set the checks for renaming (both level1 and level2) are executed in the goto_symex_statet (in the assignment method).
 
  Prints out the path that symex is actively taking during execution, includes diagnostic information about call stack and guard size.
 
 
  Maximum sizes for which field sensitivity will be applied to array cells.
 
  Whether this run of symex is under complexity limits.
 
  Whether or not to replace multiple occurrences of the same dereference with a single symbol that contains the result of that dereference.
 

Detailed Description

Configuration used for a symbolic execution.

Definition at line 18 of file symex_config.h.

Constructor & Destructor Documentation

◆  symex_configt()

symex_configt::symex_configt ( const optionstoptions )
explicit

Construct a symex_configt using options specified in an optionst.

Definition at line 30 of file symex_main.cpp.

Member Data Documentation

◆  allow_pointer_unsoundness

bool symex_configt::allow_pointer_unsoundness

Definition at line 27 of file symex_config.h.

◆  cache_dereferences

bool symex_configt::cache_dereferences

Whether or not to replace multiple occurrences of the same dereference with a single symbol that contains the result of that dereference.

Can sometimes lead to a significant performance improvement, but sometimes also makes things worse. See https://github.com/diffblue/cbmc/pull/5964 for performance data. Used in goto_symext::dereference_rec

Definition at line 62 of file symex_config.h.

◆  complexity_limits_active

bool symex_configt::complexity_limits_active

Whether this run of symex is under complexity limits.

This enables certain analyses that otherwise aren't run.

Definition at line 54 of file symex_config.h.

◆  constant_propagation

bool symex_configt::constant_propagation

Definition at line 29 of file symex_config.h.

◆  doing_path_exploration

bool symex_configt::doing_path_exploration

Definition at line 25 of file symex_config.h.

◆  max_depth

unsigned symex_configt::max_depth

The maximum depth to take the execution to.

Depth is a count of the instructions that have been executed on any single path.

Definition at line 23 of file symex_config.h.

◆  max_field_sensitivity_array_size

std::size_t symex_configt::max_field_sensitivity_array_size

Maximum sizes for which field sensitivity will be applied to array cells.

Definition at line 50 of file symex_config.h.

◆  partial_loops

bool symex_configt::partial_loops

Definition at line 37 of file symex_config.h.

◆  run_validation_checks

bool symex_configt::run_validation_checks

Should the additional validation checks be run? If this flag is set the checks for renaming (both level1 and level2) are executed in the goto_symex_statet (in the assignment method).

Definition at line 42 of file symex_config.h.

◆  self_loops_to_assumptions

bool symex_configt::self_loops_to_assumptions

Definition at line 31 of file symex_config.h.

◆  show_points_to_sets

bool symex_configt::show_points_to_sets

Definition at line 47 of file symex_config.h.

◆  show_symex_steps

bool symex_configt::show_symex_steps

Prints out the path that symex is actively taking during execution, includes diagnostic information about call stack and guard size.

Definition at line 46 of file symex_config.h.

◆  simplify_opt

bool symex_configt::simplify_opt

Definition at line 33 of file symex_config.h.

◆  unwinding_assertions

bool symex_configt::unwinding_assertions

Definition at line 35 of file symex_config.h.


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

AltStyle によって変換されたページ (->オリジナル) /