|
OpenASIP 2.2
|
#include <DDGMoveNodeSelector.hh>


Public Member Functions | |
| DDGMoveNodeSelector (TTAProgram::BasicBlock &bb, const TTAMachine::Machine &machine) | |
| DDGMoveNodeSelector (DataDependenceGraph &bigDDG, TTAProgram::BasicBlock &bb, const TTAMachine::Machine &machine) | |
| DDGMoveNodeSelector (DataDependenceGraph &ddg, const TTAMachine::Machine &machine) | |
| virtual | ~DDGMoveNodeSelector () |
| virtual MoveNodeGroup | candidates () |
| virtual void | notifyScheduled (MoveNode &node) |
| virtual DataDependenceGraph & | dataDependenceGraph () |
| void | mightBeReady (MoveNode &node) |
Public Member Functions inherited from MoveNodeSelector | |
| MoveNodeSelector () | |
| virtual | ~MoveNodeSelector () |
Private Member Functions | |
| bool | isReadyToBeScheduled (MoveNode &node) const |
| void | initializeReadylist () |
| Initializes ready list from nodes that are ready. | |
Private Attributes | |
| DataDependenceGraph * | ddg_ |
| The data dependence graph built from the basic block. | |
| PQType | readyList_ |
| The prioritized ready list. | |
| bool | ddgOwned_ |
Selects move nodes from a basic block and prioritizes move nodes on the critical path of the data dependence graph.
Definition at line 72 of file DDGMoveNodeSelector.hh.
| DDGMoveNodeSelector< PQType >::DDGMoveNodeSelector | ( | TTAProgram::BasicBlock & | bb, |
| const TTAMachine::Machine & | machine | ||
| ) |
| DDGMoveNodeSelector< PQType >::DDGMoveNodeSelector | ( | DataDependenceGraph & | bigDDG, |
| TTAProgram::BasicBlock & | bb, | ||
| const TTAMachine::Machine & | machine | ||
| ) |
| DDGMoveNodeSelector< PQType >::DDGMoveNodeSelector | ( | DataDependenceGraph & | ddg, |
| const TTAMachine::Machine & | machine | ||
| ) |
|
virtual |
|
virtual |
Returns a group of move nodes which should be scheduled next.
By default returns an empty group. A non-empty group is guaranteed to contain at least one unscheduled move, but not all of them necessarily are.
Implements MoveNodeSelector.
|
virtual |
|
private |
Initializes ready list from nodes that are ready.
|
private |
|
virtual |
This should be called by the client when some incoming dependence to a moveNode is removed.
| node | Node which has lost some incoming dependence |
Implements MoveNodeSelector.
|
virtual |
This should be called by the client as soon as a MoveNode is scheduled in order to update the internal state of the selector.
| node | The scheduled MoveNode. |
Implements MoveNodeSelector.
|
private |
The data dependence graph built from the basic block.
Definition at line 98 of file DDGMoveNodeSelector.hh.
|
private |
Definition at line 102 of file DDGMoveNodeSelector.hh.
|
private |
The prioritized ready list.
Definition at line 100 of file DDGMoveNodeSelector.hh.