diff options
Diffstat (limited to 'lib/CodeGen/PrologEpilogInserter.cpp')
-rw-r--r-- | lib/CodeGen/PrologEpilogInserter.cpp | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/lib/CodeGen/PrologEpilogInserter.cpp b/lib/CodeGen/PrologEpilogInserter.cpp index 2f7f1f4ef3..4839c09751 100644 --- a/lib/CodeGen/PrologEpilogInserter.cpp +++ b/lib/CodeGen/PrologEpilogInserter.cpp @@ -160,7 +160,7 @@ void PEI::saveCallerSavedRegisters(MachineFunction &Fn) { const TargetInstrInfo &TII = Fn.getTarget().getInstrInfo(); for (MachineFunction::iterator FI = Fn.begin(), E = Fn.end(); FI != E; ++FI) { // If last instruction is a return instruction, add an epilogue - if (TII.isReturn(FI->back()->getOpcode())) { + if (!FI->empty() && TII.isReturn(FI->back()->getOpcode())) { MBB = FI; I = MBB->end()-1; for (unsigned i = 0, e = RegsToSave.size(); i != e; ++i) { |