[LLVMdev] Crashes on Windows 8 with >4k stack frames

Nicholas Chapman admin at indigorenderer.com
Tue Jun 30 03:58:36 PDT 2015


It's a known issue.  I believe it's fixed in trunk however.
What LLVM version are you using?

     Nick

On 30/06/2015 10:21, Ephrim Khong wrote:
> Hi All,
>
> we have an issue with our LLVM-based JIT compiler - executing the 
> compiled code corrupts memory (and subsequently crashes) if we alloca 
> more than 4k of variables (more than 511 8-byte ints). The same code 
> works on Windows 7 (32 and 64 bit), Linux, MacOS. We compile LLVM and 
> our program with Microsoft's Visual Studio 2010. Both debug and 
> release builds are affected.
>
> The variables are created en-block at the beginning of the function 
> with code looking like
>
> for (i=0; i<513; ++i) {
>   AllocaInst *variable =
>        mBuilder.CreateAlloca(Type::getInt64Ty(mContext),0,"");
>   mBuilder.CreateStore(GetConstI("INT4_8",0),variable);
> }
>
> We have not yet looked at the compiled machine code (same on Win 7 and 
> 8, or differs?). But the 4k limit made us suspicious, as there were 
> some bug reports - some still open - regarding this limit with LLVM 
> [1,2].
>
> So the question is - before digging into this for more days - is there 
> some known issue with this, or does anyone have an idea what might go 
> wrong?
>
> Thanks,
> Eph
>
> [1] https://llvm.org/bugs/show_bug.cgi?id=2921
> [2] https://llvm.org/bugs/show_bug.cgi?id=8919
>
> _______________________________________________
> LLVM Developers mailing list
> LLVMdev at cs.uiuc.edu         http://llvm.cs.uiuc.edu
> http://lists.cs.uiuc.edu/mailman/listinfo/llvmdev




More information about the llvm-dev mailing list