mirror of
https://github.com/c64scene-ar/llvm-6502.git
synced 2025-06-22 10:24:26 +00:00
misched: Release only unscheduled nodes into ReadyQ.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@156573 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
@ -643,6 +643,10 @@ struct ReadyQ {
|
|||||||
|
|
||||||
bool empty() const { return Queue.empty(); }
|
bool empty() const { return Queue.empty(); }
|
||||||
|
|
||||||
|
iterator begin() { return Queue.begin(); }
|
||||||
|
|
||||||
|
iterator end() { return Queue.end(); }
|
||||||
|
|
||||||
iterator find(SUnit *SU) {
|
iterator find(SUnit *SU) {
|
||||||
return std::find(Queue.begin(), Queue.end(), SU);
|
return std::find(Queue.begin(), Queue.end(), SU);
|
||||||
}
|
}
|
||||||
@ -705,9 +709,11 @@ public:
|
|||||||
}
|
}
|
||||||
|
|
||||||
virtual void releaseTopNode(SUnit *SU) {
|
virtual void releaseTopNode(SUnit *SU) {
|
||||||
|
if (!SU->isScheduled)
|
||||||
TopQueue.push(SU);
|
TopQueue.push(SU);
|
||||||
}
|
}
|
||||||
virtual void releaseBottomNode(SUnit *SU) {
|
virtual void releaseBottomNode(SUnit *SU) {
|
||||||
|
if (!SU->isScheduled)
|
||||||
BotQueue.push(SU);
|
BotQueue.push(SU);
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
|
Reference in New Issue
Block a user