24 #ifndef OTAWA_DATA_CLP_STATE_H_
25 #define OTAWA_DATA_CLP_STATE_H_
27 #include <elm/genstruct/Vector.h>
int i
Definition: ClpState.h:101
Node * node
Definition: ClpState.h:102
void print(io::Output &out, const hard::Platform *pf=0) const
Print the state.
Definition: clp_analysis.cpp:1340
Value val
Definition: ClpState.h:61
void join(const State &state)
Merge a state with the current one.
Definition: clp_analysis.cpp:1192
static const State FULL
Definition: ClpState.h:86
void next(void)
Definition: ClpState.h:94
void clear(void)
Remove all nodes from the state.
Definition: clp_analysis.cpp:1036
State(const Value &def=Value::all)
Constructors of a new State.
Definition: ClpState.h:65
Definition: ClpValue.h:55
void set(const Value &addr, const Value &val)
Define a value into a register or the memory.
Definition: clp_analysis.cpp:1079
t::uint32 addr
Definition: ClpState.h:60
State(const State &state)
Copy constructor.
Definition: ClpState.h:67
Iter(const Iter &iter)
Definition: ClpState.h:91
const Value & item(void) const
Definition: ClpState.h:92
Value id(void) const
Definition: ClpState.h:96
elm::io::IntFormat address(Address addr)
Build a format to display addresses.
Definition: base.cpp:213
bool isReg(void) const
Definition: ClpState.h:99
genstruct::Vector< Value > registers
Definition: ClpState.h:107
t::uint32 getAddress(void) const
Definition: ClpState.h:55
A set of values represented by a Circular Linear Progression.
Definition: ClpValue.h:66
bool operator==(const State &state) const
Definition: ClpState.h:72
void widening(const State &state, int loopBound)
Perform a widening.
Definition: clp_analysis.cpp:1264
static const Value all
Represents the top element.
Definition: ClpValue.h:221
bool ended(void) const
Definition: ClpState.h:95
Definition: ClpValue.h:57
The abstract state of the computer (abstract domain).
Definition: ClpState.h:42
Node(t::uint32 address, const Value &value)
Definition: ClpState.h:52
sys::SystemOutStream & out
Node(const Node *node)
Definition: ClpState.h:53
Node * next
Definition: ClpState.h:59
Definition: ClpValue.h:56
Node first
Definition: ClpState.h:106
genstruct::Vector< Value > tmpreg
Definition: ClpState.h:108
const Value & getValue(void) const
Definition: ClpState.h:56
State & operator=(const State &state)
Definition: ClpState.h:71
static const State EMPTY
Definition: ClpState.h:86
A node in the memory list.
Definition: ClpState.h:48
bool equals(const State &state) const
Definition: clp_analysis.cpp:1159
void copy(const State &state)
Change the state to be a copy of the given one.
Definition: clp_analysis.cpp:1017
~State(void)
Destructor.
Definition: ClpState.h:69
State & state
Definition: ClpState.h:100
Node(void)
Definition: ClpState.h:51
IntFormat base(int base, IntFormat fmt)
Definition: ClpState.h:88
Node * getNext(void) const
Definition: ClpState.h:54
Iter(State &s)
Definition: ClpState.h:90