mirror of
https://github.com/c64scene-ar/llvm-6502.git
synced 2024-12-14 11:32:34 +00:00
Add SkipPHIsAndLabels from PHIElimination to MachineBasicBlock. It is needed
elsewhere. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@117763 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
parent
ab56647e6b
commit
92095e7b3f
@ -290,6 +290,11 @@ public:
|
||||
/// Returns end() is there's no non-PHI instruction.
|
||||
iterator getFirstNonPHI();
|
||||
|
||||
/// SkipPHIsAndLabels - Return the first instruction in MBB after I that is
|
||||
/// not a PHI or a label. This is the correct point to insert copies at the
|
||||
/// beginning of a basic block.
|
||||
iterator SkipPHIsAndLabels(iterator I);
|
||||
|
||||
/// getFirstTerminator - returns an iterator to the first terminator
|
||||
/// instruction of this basic block. If a terminator does not exist,
|
||||
/// it returns end()
|
||||
|
@ -147,6 +147,13 @@ MachineBasicBlock::iterator MachineBasicBlock::getFirstNonPHI() {
|
||||
return I;
|
||||
}
|
||||
|
||||
MachineBasicBlock::iterator
|
||||
MachineBasicBlock::SkipPHIsAndLabels(MachineBasicBlock::iterator I) {
|
||||
while (I != end() && (I->isPHI() || I->isLabel() || I->isDebugValue()))
|
||||
++I;
|
||||
return I;
|
||||
}
|
||||
|
||||
MachineBasicBlock::iterator MachineBasicBlock::getFirstTerminator() {
|
||||
iterator I = end();
|
||||
while (I != begin() && (--I)->getDesc().isTerminator())
|
||||
|
Loading…
Reference in New Issue
Block a user