Make EmitNode take a SDNode instead of a NodeInfo*

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@26687 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
Chris Lattner 2006-03-10 07:28:36 +00:00
parent df3750642a
commit 8c7ef0599c
3 changed files with 7 additions and 13 deletions

View File

@ -341,7 +341,7 @@ namespace llvm {
/// VRBaseMap contains, for each already emitted node, the first virtual
/// register number for the results of the node.
///
void EmitNode(NodeInfo *NI, std::map<SDNode*, unsigned> &VRBaseMap);
void EmitNode(SDNode *Node, std::map<SDNode*, unsigned> &VRBaseMap);
/// EmitNoop - Emit a noop instruction.
///

View File

@ -202,10 +202,9 @@ void ScheduleDAG::AddOperand(MachineInstr *MI, SDOperand Op,
/// EmitNode - Generate machine code for an node and needed dependencies.
///
void ScheduleDAG::EmitNode(NodeInfo *NI,
void ScheduleDAG::EmitNode(SDNode *Node,
std::map<SDNode*, unsigned> &VRBaseMap) {
unsigned VRBase = 0; // First virtual register for node
SDNode *Node = NI->Node;
// If machine instruction
if (Node->isTargetOpcode()) {
@ -396,9 +395,9 @@ void ScheduleDAG::EmitAll() {
NodeInfo *NI = Ordering[i];
if (NI->isInGroup()) {
NodeGroupIterator NGI(Ordering[i]);
while (NodeInfo *NI = NGI.next()) EmitNode(NI, VRBaseMap);
while (NodeInfo *NI = NGI.next()) EmitNode(NI->Node, VRBaseMap);
} else {
EmitNode(NI, VRBaseMap);
EmitNode(NI->Node, VRBaseMap);
}
}
}

View File

@ -613,11 +613,9 @@ void ScheduleDAGList::EmitSchedule() {
std::map<SDNode*, unsigned> VRBaseMap;
for (unsigned i = 0, e = Sequence.size(); i != e; i++) {
if (SUnit *SU = Sequence[i]) {
for (unsigned j = 0, ee = SU->FlaggedNodes.size(); j != ee; j++) {
SDNode *N = SU->FlaggedNodes[j];
EmitNode(getNI(N), VRBaseMap);
}
EmitNode(getNI(SU->Node), VRBaseMap);
for (unsigned j = 0, ee = SU->FlaggedNodes.size(); j != ee; j++)
EmitNode(SU->FlaggedNodes[j], VRBaseMap);
EmitNode(SU->Node, VRBaseMap);
} else {
// Null SUnit* is a noop.
EmitNoop();
@ -641,9 +639,6 @@ void ScheduleDAGList::dumpSchedule() const {
void ScheduleDAGList::Schedule() {
DEBUG(std::cerr << "********** List Scheduling **********\n");
// Set up minimum info for scheduling
PrepareNodeInfo();
// Build scheduling units.
BuildSchedUnits();