Otawa
0.10
|
Classes | |
class | Config |
Represents a configuration for computing cost of a BB. More... | |
class | ConfigSet |
Set of configurations with the same or with a maximum of time. More... | |
class | EdgeTimeBuilder |
Compute execution time by edge using the parametric exegraph approach. More... | |
class | Event |
An event represents a time variation in the execution of an instruction. More... | |
class | EventCollector |
Collects variables linking events with blocks in ILP. More... | |
class | StandardEventBuilder |
Build standard events. More... | |
Typedefs | |
typedef enum otawa::etime::type_t | type_t |
Enumerations | |
enum | kind_t { NONE, FETCH, MEM, BRANCH, STAGE, FU } |
enum | occurrence_t { NEVER = 0, SOMETIMES = 1, ALWAYS = 2 } |
enum | type_t { EDGE, BLOCK } |
Functions | |
io::Output & | operator<< (io::Output &out, EdgeTimeBuilder::place_t p) |
string | maskToString (t::uint32 mask, int len) |
Convert an event mask to a string. More... | |
p::feature | EDGE_TIME_FEATURE ("otawa::etime::EDGE_TIME_FEATURE", new Maker< EdgeTimeBuilder >()) |
This feature ensures that block cost has been computed according to the context of edges. More... | |
Identifier< bool > | PREDUMP ("otawa::etime::PREDUMP", false) |
This property is used to configure the EDGE_TIME_FEATURE and ask to dump the generated execution graphs. More... | |
Identifier< int > | EVENT_THRESHOLD ("otawa::etime::EVENT_THRESHOLD", 12) |
This property is used to configure the EDGE_TIME_FEATURE and determine the maximum number of events to consider to time a block. More... | |
p::feature | STANDARD_EVENTS_FEATURE ("otawa::etime::STANDARD_EVENTS_FEATURE", new Maker< StandardEventBuilder >()) |
This feature ensures that events of the following analyses has been hooked to the task basic blocks: More... | |
p::feature | EVENTS_FEATURE ("otawa::etime::EVENTS_FEATURE", new Maker< StandardEventBuilder >()) |
This feature ensures that all timing events on pipeline has been recorded. More... | |
Identifier< Event * > | EVENT ("otawa::etime::EVENT", 0) |
Allows to hook an event to a basic block. More... | |
Variables | |
p::feature | STANDARD_EVENTS_FEATURE |
This feature ensures that events of the following analyses has been hooked to the task basic blocks: More... | |
p::feature | EVENTS_FEATURE |
This feature ensures that all timing events on pipeline has been recorded. More... | |
Identifier< Event * > | EVENT |
Allows to hook an event to a basic block. More... | |
Identifier< bool > | PREDUMP |
This property is used to configure the EDGE_TIME_FEATURE and ask to dump the generated execution graphs. More... | |
Identifier< int > | EVENT_THRESHOLD |
This property is used to configure the EDGE_TIME_FEATURE and determine the maximum number of events to consider to time a block. More... | |
p::feature | EDGE_TIME_FEATURE |
This feature ensures that block cost has been computed according to the context of edges. More... | |
typedef enum otawa::etime::type_t otawa::etime::type_t |
enum otawa::etime::kind_t |
enum otawa::etime::type_t |
p::feature otawa::etime::EDGE_TIME_FEATURE | ( | "otawa::etime::EDGE_TIME_FEATURE" | , |
new Maker< EdgeTimeBuilder > | () | ||
) |
This feature ensures that block cost has been computed according to the context of edges.
Basically, this means that both the objective function and the constraint of events has been added to the ILP system.
Identifier<int> otawa::etime::EVENT_THRESHOLD | ( | "otawa::etime::EVENT_THRESHOLD" | , |
12 | |||
) |
This property is used to configure the EDGE_TIME_FEATURE and determine the maximum number of events to consider to time a block.
If a value of n is passed, at most 2^n times will be computed and if a block gets a bigger number of events, it will be split.
Convert an event mask to a string.
mask | Event mask. |
len | Number of events. |
References buf, and elm::StringBuffer::toString().
Referenced by otawa::etime::EdgeTimeBuilder::applyFloppySplit(), otawa::etime::EdgeTimeBuilder::applyStrictSplit(), and otawa::etime::EdgeTimeBuilder::applyWeightedSplit().
io::Output& otawa::etime::operator<< | ( | io::Output & | out, |
EdgeTimeBuilder::place_t | p | ||
) |
Identifier<bool> otawa::etime::PREDUMP | ( | "otawa::etime::PREDUMP" | , |
false | |||
) |
This property is used to configure the EDGE_TIME_FEATURE and ask to dump the generated execution graphs.
p::feature otawa::etime::EDGE_TIME_FEATURE("otawa::etime::EDGE_TIME_FEATURE", new Maker< EdgeTimeBuilder >()) |
This feature ensures that block cost has been computed according to the context of edges.
Basically, this means that both the objective function and the constraint of events has been added to the ILP system.
Identifier<int> otawa::etime::EVENT_THRESHOLD("otawa::etime::EVENT_THRESHOLD", 12) |
This property is used to configure the EDGE_TIME_FEATURE and determine the maximum number of events to consider to time a block.
If a value of n is passed, at most 2^n times will be computed and if a block gets a bigger number of events, it will be split.
Referenced by otawa::etime::EdgeTimeBuilder::configure().
Identifier<bool> otawa::etime::PREDUMP("otawa::etime::PREDUMP", false) |
This property is used to configure the EDGE_TIME_FEATURE and ask to dump the generated execution graphs.
Referenced by otawa::etime::EdgeTimeBuilder::configure().