Otawa
0.10
|
A node of the ParExeGraph, that represents the crossing of an instruction inside a microprocessor stage. More...
#include <otawa/parexegraph/ParExeGraph.h>
Public Member Functions | |
ParExeNode (ParExeGraph *graph, ParExeStage *stage, ParExeInst *inst) | |
ParExeStage * | stage (void) |
ParExeInst * | inst (void) |
int | latency () |
void | setDefaultLatency (int lat) |
void | restoreDefaultLatency (void) |
void | setLatency (int latency) |
void | addProducer (ParExeNode *prod) |
int | numProducers (void) |
ParExeNode * | producer (int index) |
void | addContender (ParExeNode *cont) |
elm::genstruct::DLList < elm::BitVector * > * | contendersMasksList () |
elm::String | name (void) |
int | delay (int index) |
void | setDelay (int index, int value) |
void | initContenders (int size) |
int | lateContenders (void) |
void | setLateContenders (int num) |
elm::BitVector * | possibleContenders (void) |
void | setContender (int index) |
void | buildContendersMasks () |
int | index (void) const |
bool | hasSucc (void) const |
bool | hasPred (void) const |
int | countSucc (void) const |
int | countPred (void) const |
bool | isPredOf (const GenNode *node) |
bool | isSuccOf (const GenNode *node) |
Protected Attributes | |
elm::genstruct::Vector < ParExeNode * > | _producers |
elm::genstruct::Vector < ParExeNode * > | _contenders |
elm::BitVector * | _possible_contenders |
elm::genstruct::DLList < elm::BitVector * > | _contenders_masks_list |
int | _late_contenders |
Private Attributes | |
ParExeStage * | _pipeline_stage |
ParExeInst * | _inst |
int | _latency |
int | _default_latency |
elm::String | _name |
elm::genstruct::AllocatedTable < int > * | _delay |
A node of the ParExeGraph, that represents the crossing of an instruction inside a microprocessor stage.
|
inline |
References _delay, otawa::ParExeGraph::_first_node, otawa::ParExeGraph::_last_prologue_node, _name, otawa::ParExeInst::codePart(), otawa::ParExeGraph::firstNode(), if(), otawa::ParExeInst::index(), otawa::ParExeStage::name(), otawa::ParExeGraph::numInstructions(), otawa::ParExeGraph::numResources(), otawa::PROLOGUE, and elm::StringBuffer::toString().
|
inline |
References _contenders.
Referenced by otawa::ParExeGraph::findContendingNodes().
|
inline |
References _producers.
void otawa::ParExeNode::buildContendersMasks | ( | ) |
|
inline |
References _contenders_masks_list.
|
inlineinherited |
References otawa::graph::Node::countPred().
|
inlineinherited |
References otawa::graph::Node::countSucc().
|
inline |
References _delay, and otawa::GenGraph< N, E >::GenNode::index().
Referenced by otawa::ParExeGraph::analyze(), otawa::ParExeGraph::cost(), and otawa::ParExeGraph::delta().
|
inlineinherited |
References otawa::graph::Node::hasPred().
Referenced by otawa::LiExeGraph::shadeNodes().
|
inlineinherited |
References otawa::graph::Node::hasSucc().
|
inlineinherited |
|
inline |
References _possible_contenders.
|
inline |
References _inst.
Referenced by otawa::ParExeGraph::addEdgesForDataDependencies(), otawa::ParExeGraph::addEdgesForFetch(), and otawa::ParExeGraph::addEdgesForMemoryOrder().
|
inlineinherited |
References otawa::graph::Node::countPred().
|
inlineinherited |
References otawa::graph::Node::isSuccOf().
|
inline |
References _late_contenders.
|
inline |
References _latency.
Referenced by otawa::etime::EdgeTimeBuilder::apply(), otawa::etime::EdgeTimeBuilder::rollback(), and setLatency().
|
inline |
References _name.
|
inline |
References _producers.
|
inline |
References _possible_contenders.
|
inline |
References _producers, and otawa::GenGraph< N, E >::GenNode::index().
|
inline |
References _default_latency, and _latency.
|
inline |
References _possible_contenders, and elm::BitVector::set().
|
inline |
References _default_latency, and _latency.
|
inline |
References otawa::GenGraph< N, E >::GenNode::index().
Referenced by otawa::ParExeGraph::initDelays().
|
inline |
References _late_contenders.
|
inline |
References _latency, and latency().
Referenced by otawa::etime::EdgeTimeBuilder::apply(), and otawa::etime::EdgeTimeBuilder::rollback().
|
inline |
References _pipeline_stage.
Referenced by otawa::ParExeInst::addNode().
|
protected |
Referenced by addContender().
|
protected |
Referenced by buildContendersMasks(), and contendersMasksList().
|
private |
Referenced by restoreDefaultLatency(), and setDefaultLatency().
|
private |
Referenced by delay(), and ParExeNode().
|
private |
Referenced by inst().
|
protected |
Referenced by lateContenders(), and setLateContenders().
|
private |
Referenced by latency(), restoreDefaultLatency(), setDefaultLatency(), and setLatency().
|
private |
Referenced by name(), and ParExeNode().
|
private |
Referenced by stage().
|
protected |
Referenced by buildContendersMasks(), initContenders(), possibleContenders(), and setContender().
|
protected |
Referenced by addProducer(), numProducers(), and producer().