![]() |
OTAWA
2.0
Framework to perform machine analysis and compute WCET.
|
In OTAWA, an event is an internal effecy (usually from the hardware) causing variable execution time. Common events include cache accesses, branch prediction, variable duration instructions, etc). More...
Classes | |
class | otawa::StandardEventBuilder |
Enumerations | |
enum | otawa::Event::kind_t { otawa::Event::NONE = 0, otawa::Event::FETCH = 1, otawa::Event::MEM = 2, otawa::Event::BRANCH = 3, otawa::Event::CUSTOM = 4 } |
Functions | |
p::id< Event * > | otawa::EVENT ("otawa::EVENT", 0) |
Allows to hook an event to a basic block or to an edge. More... | |
Event::occurrence_t | otawa::operator| (Event::occurrence_t x, Event::occurrence_t y) |
Combines two event occcurrences according to the partial order (getting the maximu of x and y). More... | |
p::id< Event * > | otawa::PREFIX_EVENT ("otawa::PREFIX_EVENT", 0) |
Allows to hook an event to an edge and consider it as part of the prefix of the edge time. More... | |
Variables | |
p::id< Event * > | otawa::EVENT |
Allows to hook an event to a basic block or to an edge. More... | |
p::id< Event * > | otawa::PREFIX_EVENT |
Allows to hook an event to an edge and consider it as part of the prefix of the edge time. More... | |
In OTAWA, an event is an internal effecy (usually from the hardware) causing variable execution time. Common events include cache accesses, branch prediction, variable duration instructions, etc).
Events are defined by:
Events provides a very open and flexible system to relates the global hardware effects produced by global analyses with the microarchitecture time calculation algorithms.
enum otawa::Event::kind_t |
Defines the type of events, mainly which hardware feature causes the event.
Enumerator | |
---|---|
NONE | Special null event kind. |
FETCH | Event arising on the fetch stage of the instruction. |
MEM | Event arising on the stage performing access to memory for data. |
BRANCH | Event arising on the stage performing the branch. |
CUSTOM | Event arising on a particular stage / functional unit provided by Event::unit(). |
Allows to hook an event to a basic block or to an edge.
Event::occurrence_t otawa::operator| | ( | Event::occurrence_t | x, |
Event::occurrence_t | y | ||
) |
Combines two event occcurrences according to the partial order (getting the maximu of x and y).
x | First occurrence to combine. |
y | Second occurrence to combine. |
References otawa::Event::ALWAYS, otawa::Event::NEVER, otawa::Event::NO_OCCURRENCE, otawa::Event::SOMETIMES, and otawa::ilp::x().
Allows to hook an event to an edge and consider it as part of the prefix of the edge time.
Allows to hook an event to a basic block or to an edge.
Referenced by otawa::StandardEventBuilder::dumpBB().