Go to the documentation of this file.
9 #ifndef CPROVER_GOTO_SYMEX_SSA_STEP_H
10 #define CPROVER_GOTO_SYMEX_SSA_STEP_H
200 void output(std::ostream &out)
const;
218 #endif // CPROVER_GOTO_SYMEX_SSA_STEP_H
dstringt has one field, an unsigned integer no which is an index into a static table of strings.
SSA_assignment_stept(symex_targett::sourcet source, exprt guard, ssa_exprt ssa_lhs, exprt ssa_full_lhs, exprt original_full_lhs, exprt ssa_rhs, symex_targett::assignment_typet assignment_type)
void validate(const namespacet &ns, const validation_modet vm) const
Check that the SSA step is well-formed.
void output(std::ostream &out) const
exprt get_ssa_expr() const
unsigned atomic_section_id
std::vector< exprt > converted_function_arguments
Single SSA step in the equation.
bool is_function_return() const
symex_targett::assignment_typet assignment_type
Base class for all expressions.
symex_targett::sourcet source
std::vector< exprt > ssa_function_arguments
bool is_memory_barrier() const
bool is_constraint() const
bool is_shared_write() const
bool is_shared_read() const
std::list< exprt > io_args
Expression providing an SSA-renamed symbol of expressions.
A namespacet is essentially one or two symbol tables bound together, to allow for symbol lookups in t...
bool is_atomic_begin() const
bool is_atomic_end() const
The Boolean constant false.
SSA_stept(const symex_targett::sourcet &_source, goto_trace_stept::typet _type)
goto_trace_stept::typet type
bool is_assignment() const
const irept & get_nil_irep()
Identifies source in the context of symbolic execution.
irep_idt get_property_id() const
Returns the property ID if this is a step resulting from an ASSERT, or builds a unique name for an un...
The interface of the target container for symbolic execution to record its symbolic steps into.
bool is_function_call() const
std::list< exprt > converted_io_args