Should not add instructions to a BB after a return instruction. The machine instructi...
[oota-llvm.git] / lib / Target / X86 / X86FrameLowering.cpp
index 23b071673de8c467d4b1683ab4bddec4a6cc9a64..757cef2d7f7dc708edf63f482cb1c8a9213e3179 100644 (file)
@@ -1414,11 +1414,12 @@ X86FrameLowering::adjustForSegmentedStacks(MachineFunction &MF) const {
   if (!Is64Bit)
     BuildMI(allocMBB, DL, TII.get(X86::ADD32ri), X86::ESP).addReg(X86::ESP)
       .addImm(8);
-  BuildMI(allocMBB, DL, TII.get(X86::RET));
 
   if (Is64Bit && IsNested)
     BuildMI(allocMBB, DL, TII.get(X86::MOV64rr), X86::R10).addReg(X86::RAX);
 
+  BuildMI(allocMBB, DL, TII.get(X86::RET));
+
   allocMBB->addSuccessor(&prologueMBB);
   checkMBB->addSuccessor(allocMBB);
   checkMBB->addSuccessor(&prologueMBB);