Otawa
0.10
|
Classes | |
class | Analysis |
class | ClpStatePack |
A pack of CLP states inside a BasicBlock. More... | |
class | Manager |
This class allows to exploit the result of a CLP analysis. More... | |
class | State |
The abstract state of the computer (abstract domain). More... | |
class | Value |
A set of values represented by a Circular Linear Progression. More... | |
Typedefs | |
typedef elm::t::int32 | intn_t |
typedef elm::t::uint32 | uintn_t |
typedef t::uint64 | STAT_UINT |
Enumerations | |
enum | kind_t { NONE, REG, VAL, ALL } |
Allowed types for values: NONE represents nothing; REG is only used for addresses, and represents a register; VAL represents some values (either a constant or an interval); ALL is the Top element. More... | |
Functions | |
elm::io::Output & | operator<< (elm::io::Output &out, const otawa::clp::Value &val) |
long | lcm (long a, long b) |
Return the lcm of two long integers. More... | |
intn_t | min (intn_t a, intn_t b) |
Return the min with a signed comparison. More... | |
intn_t | max (intn_t a, intn_t b) |
Return the max with a signed comparison. More... | |
uintn_t | umin (uintn_t a, uintn_t b) |
Return the min with an unsigned comparison. More... | |
uintn_t | umax (uintn_t a, uintn_t b) |
Return the max with an usigned comparison. More... | |
io::Output & | operator<< (io::Output &out, const State &state) |
SilentFeature | FEATURE ("otawa::clp::FEATURE", maker) |
This features ensure that the clp analysis has been identified. More... | |
Identifier< clp::State > | STATE_IN ("otawa::clp::STATE_IN") |
Put on a basic block, it's the CLP state at the begining of the block. More... | |
Identifier< clp::State > | STATE_OUT ("otawa::clp::STATE_OUT") |
Put on a basic block, it's the CLP state at the end of the block. More... | |
Variables | |
const int | NBITS = 32 |
const uintn_t | UMAXn = elm::type_info<uintn_t>::max |
const intn_t | MAXn = elm::type_info<intn_t>::max |
const intn_t | MINn = elm::type_info<intn_t>::min |
SilentFeature | FEATURE |
This features ensure that the clp analysis has been identified. More... | |
Identifier< clp::State > | STATE_IN |
Put on a basic block, it's the CLP state at the begining of the block. More... | |
Identifier< clp::State > | STATE_OUT |
Put on a basic block, it's the CLP state at the end of the block. More... | |
typedef elm::t::int32 otawa::clp::intn_t |
typedef t::uint64 otawa::clp::STAT_UINT |
typedef elm::t::uint32 otawa::clp::uintn_t |
enum otawa::clp::kind_t |
|
inline |
Return the lcm of two long integers.
References elm::abs().
Referenced by otawa::clp::Value::inter().
|
inline |
Return the max with a signed comparison.
Referenced by otawa::etime::ConfigSet::add(), otawa::ContextualLoopBound::addMax(), otawa::etime::EdgeTimeBuilder::applyWeightedSplit(), otawa::ContextualLoopBound::findMax(), otawa::ContextualLoopBound::findTotal(), otawa::MemArea::join(), otawa::ContextualLoopBound::lookMax(), otawa::MemArea::meet(), otawa::FlowFactLoader::onLoop(), otawa::ipet::FlowFactConstraintBuilder::processBB(), otawa::etime::ConfigSet::push(), otawa::FlowFactLoader::scanXLoop(), otawa::hard::Memory::worstAccess(), otawa::hard::Memory::worstReadAccess(), and otawa::hard::Memory::worstWriteAccess().
|
inline |
Return the min with a signed comparison.
Referenced by otawa::MemArea::join(), otawa::MemArea::meet(), otawa::LiExeGraph::nodeEarliestTimes(), otawa::LiExeGraph::nodeLatestTimes(), otawa::ipet::FlowFactConstraintBuilder::processBB(), and otawa::dcache::PERSProblem::Domain::set().
|
inline |
References out, and otawa::clp::Value::print().
io::Output& otawa::clp::operator<< | ( | io::Output & | out, |
const State & | state | ||
) |
References out, and otawa::clp::State::print().
|
inline |
Return the max with an usigned comparison.
Referenced by otawa::clp::Value::join().
|
inline |
Return the min with an unsigned comparison.
Referenced by otawa::clp::Value::inter().
const intn_t otawa::clp::MAXn = elm::type_info<intn_t>::max |
Referenced by otawa::clp::Value::ge(), otawa::clp::Value::le(), and otawa::clp::Value::swrap().
const intn_t otawa::clp::MINn = elm::type_info<intn_t>::min |
Referenced by otawa::clp::Value::le().
const int otawa::clp::NBITS = 32 |
const uintn_t otawa::clp::UMAXn = elm::type_info<uintn_t>::max |