mirror of
https://github.com/c64scene-ar/llvm-6502.git
synced 2025-01-15 07:34:33 +00:00
Cache MBB->begin. It's possible the scheduler / bundler may change MBB->begin().
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@152356 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
parent
cdaedf9f4a
commit
9ad62b3c09
@ -128,13 +128,13 @@ bool MachineScheduler::runOnMachineFunction(MachineFunction &mf) {
|
||||
// Break the block into scheduling regions [I, RegionEnd), and schedule each
|
||||
// region as soon as it is discovered.
|
||||
unsigned RemainingCount = MBB->size();
|
||||
for(MachineBasicBlock::iterator RegionEnd = MBB->end();
|
||||
RegionEnd != MBB->begin();) {
|
||||
for(MachineBasicBlock::iterator RegionEnd = MBB->end(),
|
||||
RegionStart = MBB->begin(); RegionEnd != RegionStart;) {
|
||||
Scheduler->startBlock(MBB);
|
||||
// The next region starts above the previous region. Look backward in the
|
||||
// instruction stream until we find the nearest boundary.
|
||||
MachineBasicBlock::iterator I = RegionEnd;
|
||||
for(;I != MBB->begin(); --I, --RemainingCount) {
|
||||
for(;I != RegionStart; --I, --RemainingCount) {
|
||||
if (TII->isSchedulingBoundary(llvm::prior(I), MBB, *MF))
|
||||
break;
|
||||
}
|
||||
|
Loading…
x
Reference in New Issue
Block a user