Change the return value of "getEnd()" from a MachineInstr* to a MachineBasicBlock::iterator.

It seems on Darwin the illegal round-trip ::iterator -> MachineInstr* -> ::iterator breaks execution horribly when the iterator is not a real MachineInstr, like ::end().



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@216455 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
James Molloy 2014-08-26 13:41:31 +00:00
parent 2282afa6cc
commit 698eabd8b7

View File

@ -234,7 +234,7 @@ public:
MachineInstr *getKill() const { return KillInst; }
/// Return an instruction that can be used as an iterator for the end
/// of the chain. This is the maximum of KillInst (if set) and LastInst.
MachineInstr *getEnd() const {
MachineBasicBlock::iterator getEnd() const {
return ++MachineBasicBlock::iterator(KillInst ? KillInst : LastInst);
}