forked from OSchip/llvm-project
misched prep: rename InsertPos to End.
ScheduleDAGInstrs knows nothing about how instructions will be moved or inserted. llvm-svn: 152256
This commit is contained in:
parent
52226d409b
commit
a316faabec
|
@ -226,7 +226,7 @@ void ScheduleTopDownLive::schedule() {
|
|||
releaseNode(&(*I));
|
||||
}
|
||||
|
||||
InsertPos = Begin;
|
||||
MachineBasicBlock::iterator InsertPos = Begin;
|
||||
while (SUnit *SU = pickNode()) {
|
||||
DEBUG(dbgs() << "*** Scheduling Instruction:\n"; SU->dump(this));
|
||||
|
||||
|
|
|
@ -365,8 +365,8 @@ void SchedulePostRATDList::schedule() {
|
|||
|
||||
if (AntiDepBreak != NULL) {
|
||||
unsigned Broken =
|
||||
AntiDepBreak->BreakAntiDependencies(SUnits, Begin, InsertPos,
|
||||
InsertPosIndex, DbgValues);
|
||||
AntiDepBreak->BreakAntiDependencies(SUnits, Begin, End, EndIndex,
|
||||
DbgValues);
|
||||
|
||||
if (Broken != 0) {
|
||||
// We made changes. Update the dependency graph.
|
||||
|
@ -396,7 +396,7 @@ void SchedulePostRATDList::schedule() {
|
|||
///
|
||||
void SchedulePostRATDList::Observe(MachineInstr *MI, unsigned Count) {
|
||||
if (AntiDepBreak != NULL)
|
||||
AntiDepBreak->Observe(MI, Count, InsertPosIndex);
|
||||
AntiDepBreak->Observe(MI, Count, EndIndex);
|
||||
}
|
||||
|
||||
/// FinishBlock - Clean up register live-range state.
|
||||
|
@ -761,24 +761,24 @@ void SchedulePostRATDList::ListScheduleTopDown() {
|
|||
|
||||
// EmitSchedule - Emit the machine code in scheduled order.
|
||||
void SchedulePostRATDList::EmitSchedule() {
|
||||
Begin = InsertPos;
|
||||
Begin = End;
|
||||
|
||||
// If first instruction was a DBG_VALUE then put it back.
|
||||
if (FirstDbgValue)
|
||||
BB->splice(InsertPos, BB, FirstDbgValue);
|
||||
BB->splice(End, BB, FirstDbgValue);
|
||||
|
||||
// Then re-insert them according to the given schedule.
|
||||
for (unsigned i = 0, e = Sequence.size(); i != e; i++) {
|
||||
if (SUnit *SU = Sequence[i])
|
||||
BB->splice(InsertPos, BB, SU->getInstr());
|
||||
BB->splice(End, BB, SU->getInstr());
|
||||
else
|
||||
// Null SUnit* is a noop.
|
||||
TII->insertNoop(*BB, InsertPos);
|
||||
TII->insertNoop(*BB, End);
|
||||
|
||||
// Update the Begin iterator, as the first instruction in the block
|
||||
// may have been scheduled later.
|
||||
if (i == 0)
|
||||
Begin = prior(InsertPos);
|
||||
Begin = prior(End);
|
||||
}
|
||||
|
||||
// Reinsert any remaining debug_values.
|
||||
|
|
|
@ -160,8 +160,8 @@ void ScheduleDAGInstrs::enterRegion(MachineBasicBlock *bb,
|
|||
unsigned endcount) {
|
||||
BB = bb;
|
||||
Begin = begin;
|
||||
InsertPos = end;
|
||||
InsertPosIndex = endcount;
|
||||
End = end;
|
||||
EndIndex = endcount;
|
||||
|
||||
// Check to see if the scheduler cares about latencies.
|
||||
UnitLatencies = forceUnitLatencies();
|
||||
|
@ -184,7 +184,7 @@ void ScheduleDAGInstrs::exitRegion() {
|
|||
/// are too high to be hidden by the branch or when the liveout registers
|
||||
/// used by instructions in the fallthrough block.
|
||||
void ScheduleDAGInstrs::addSchedBarrierDeps() {
|
||||
MachineInstr *ExitMI = InsertPos != BB->end() ? &*InsertPos : 0;
|
||||
MachineInstr *ExitMI = End != BB->end() ? &*End : 0;
|
||||
ExitSU.setInstr(ExitMI);
|
||||
bool AllDepKnown = ExitMI &&
|
||||
(ExitMI->isCall() || ExitMI->isBarrier());
|
||||
|
@ -476,7 +476,7 @@ void ScheduleDAGInstrs::initSUnits() {
|
|||
// which is contained within a basic block.
|
||||
SUnits.reserve(BB->size());
|
||||
|
||||
for (MachineBasicBlock::iterator I = Begin; I != InsertPos; ++I) {
|
||||
for (MachineBasicBlock::iterator I = Begin; I != End; ++I) {
|
||||
MachineInstr *MI = I;
|
||||
if (MI->isDebugValue())
|
||||
continue;
|
||||
|
@ -534,7 +534,7 @@ void ScheduleDAGInstrs::buildSchedGraph(AliasAnalysis *AA) {
|
|||
|
||||
// Walk the list of instructions, from bottom moving up.
|
||||
MachineInstr *PrevMI = NULL;
|
||||
for (MachineBasicBlock::iterator MII = InsertPos, MIE = Begin;
|
||||
for (MachineBasicBlock::iterator MII = End, MIE = Begin;
|
||||
MII != MIE; --MII) {
|
||||
MachineInstr *MI = prior(MII);
|
||||
if (MI && PrevMI) {
|
||||
|
|
|
@ -119,16 +119,14 @@ namespace llvm {
|
|||
// The block in which to insert instructions
|
||||
MachineBasicBlock *BB;
|
||||
|
||||
// The beginning of the range to
|
||||
// be scheduled. The range extends
|
||||
// to InsertPos.
|
||||
/// The beginning of the range to be scheduled.
|
||||
MachineBasicBlock::iterator Begin;
|
||||
|
||||
// The position to insert instructions
|
||||
MachineBasicBlock::iterator InsertPos;
|
||||
/// The end of the range to be scheduled.
|
||||
MachineBasicBlock::iterator End;
|
||||
|
||||
// The index in BB of InsertPos.
|
||||
unsigned InsertPosIndex;
|
||||
/// The index in BB of End.
|
||||
unsigned EndIndex;
|
||||
|
||||
/// After calling BuildSchedGraph, each machine instruction in the current
|
||||
/// scheduling region is mapped to an SUnit.
|
||||
|
@ -239,7 +237,7 @@ namespace llvm {
|
|||
MachineBasicBlock::iterator begin() const { return Begin; }
|
||||
|
||||
/// end - Return an iterator to the bottom of the current scheduling region.
|
||||
MachineBasicBlock::iterator end() const { return InsertPos; }
|
||||
MachineBasicBlock::iterator end() const { return End; }
|
||||
|
||||
/// NewSUnit - Creates a new SUnit and return a ptr to it.
|
||||
///
|
||||
|
|
Loading…
Reference in New Issue