[llvm] r247395 - PPCFrameLowering::emitEpilogue(): Avoid manipulating MBBI on iterator end.

NAKAMURA Takumi via llvm-commits llvm-commits at lists.llvm.org
Fri Sep 11 01:20:56 PDT 2015


Author: chapuni
Date: Fri Sep 11 03:20:56 2015
New Revision: 247395

URL: http://llvm.org/viewvc/llvm-project?rev=247395&view=rev
Log:
PPCFrameLowering::emitEpilogue(): Avoid manipulating MBBI on iterator end.

It caused crash in MachineInstr::hasPropertyInBundle() since r247237.

Modified:
    llvm/trunk/lib/Target/PowerPC/PPCFrameLowering.cpp

Modified: llvm/trunk/lib/Target/PowerPC/PPCFrameLowering.cpp
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/Target/PowerPC/PPCFrameLowering.cpp?rev=247395&r1=247394&r2=247395&view=diff
==============================================================================
--- llvm/trunk/lib/Target/PowerPC/PPCFrameLowering.cpp (original)
+++ llvm/trunk/lib/Target/PowerPC/PPCFrameLowering.cpp Fri Sep 11 03:20:56 2015
@@ -999,7 +999,7 @@ void PPCFrameLowering::emitEpilogue(Mach
     PBPOffset = FFI->getObjectOffset(PBPIndex);
   }
 
-  bool IsReturnBlock = MBBI->isReturn();
+  bool IsReturnBlock = (MBBI != MBB.end() && MBBI->isReturn());
   
   if (IsReturnBlock) {
     unsigned RetOpcode = MBBI->getOpcode();




More information about the llvm-commits mailing list