[PATCH] Bug 18582 - Offset overflow on calling __chkstk and __alloca on x64

Reid Kleckner rnk at google.com
Thu Jan 29 10:10:41 PST 2015


We shouldn't be making this call unconditionally indirect. We should be using whatever strategy MCJIT is using to reference external symbols. I assume it does so by creating a PLT or something like it.


REPOSITORY
  rL LLVM

================
Comment at: lib/Target/X86/X86FrameLowering.cpp:767-772
@@ -751,8 +766,8 @@
 
     BuildMI(MBB, MBBI, DL,
             TII.get(CallOp))
       .addExternalSymbol(StackProbeSymbol)
       .addReg(StackPtr,    RegState::Define | RegState::Implicit)
       .addReg(X86::EFLAGS, RegState::Define | RegState::Implicit)
       .setMIFlag(MachineInstr::FrameSetup);
 
----------------
You left behind the old call op, it seems.

http://reviews.llvm.org/D6856

EMAIL PREFERENCES
  http://reviews.llvm.org/settings/panel/emailpreferences/






More information about the llvm-commits mailing list