Dibyendu Majumdar via llvm-dev
2015-Oct-25 12:30 UTC
[llvm-dev] Can JIT be targeted to 32-bit in a 64-bit Wndows environment?
Hi On 64-bit Windows the lack of proper stack unwinding support causes crashes in JIT code generated by LLVM. I was wondering if it is possible to ask LLVM to generate 32-bit code - and if that would work within a 64-bit Windows application - i.e. the rest of the system will be 64-bit only the generated code will be 32-bit. I was also wondering if this would allow me to workaround the crashes due to stack unwinding problems. Thanks and Regards Dibyendu
Lang Hames via llvm-dev
2015-Oct-29 21:19 UTC
[llvm-dev] Can JIT be targeted to 32-bit in a 64-bit Wndows environment?
Hi Dibyendu, I'm not familiar with Windows at all, but I assume you can't mix 64-bit and 32-bit code in the one process. Reid - Are we generating correct call frame information for windows yet ( https://llvm.org/PR24233) ? If so, I think Dibyendu would just have to override registerEHFrames/deregisterEHFrames and have them call RtlInstallFunctionTableCallback/RtlAddFunctionTable, right? - Lang. On Sun, Oct 25, 2015 at 5:30 AM, Dibyendu Majumdar via llvm-dev < llvm-dev at lists.llvm.org> wrote:> Hi > > On 64-bit Windows the lack of proper stack unwinding support causes > crashes in JIT code generated by LLVM. I was wondering if it is > possible to ask LLVM to generate 32-bit code - and if that would work > within a 64-bit Windows application - i.e. the rest of the system will > be 64-bit only the generated code will be 32-bit. I was also wondering > if this would allow me to workaround the crashes due to stack > unwinding problems. > > Thanks and Regards > Dibyendu > _______________________________________________ > LLVM Developers mailing list > llvm-dev at lists.llvm.org > http://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-dev >-------------- next part -------------- An HTML attachment was scrubbed... URL: <http://lists.llvm.org/pipermail/llvm-dev/attachments/20151029/d0905d7e/attachment.html>
Reid Kleckner via llvm-dev
2015-Oct-30 00:51 UTC
[llvm-dev] Can JIT be targeted to 32-bit in a 64-bit Wndows environment?
You actually can mix 32 and 64 bit code in the same Windows process, but only with great effort. Fixing PR24233 is probably easier. :) We know how to generate the info, but we still have to get it registered... On Thu, Oct 29, 2015 at 2:19 PM, Lang Hames via llvm-dev < llvm-dev at lists.llvm.org> wrote:> Hi Dibyendu, > > I'm not familiar with Windows at all, but I assume you can't mix 64-bit > and 32-bit code in the one process. > > Reid - Are we generating correct call frame information for windows yet ( > https://llvm.org/PR24233) ? If so, I think Dibyendu would just have to > override registerEHFrames/deregisterEHFrames and have them call > RtlInstallFunctionTableCallback/RtlAddFunctionTable, right? > > - Lang. > > On Sun, Oct 25, 2015 at 5:30 AM, Dibyendu Majumdar via llvm-dev < > llvm-dev at lists.llvm.org> wrote: > >> Hi >> >> On 64-bit Windows the lack of proper stack unwinding support causes >> crashes in JIT code generated by LLVM. I was wondering if it is >> possible to ask LLVM to generate 32-bit code - and if that would work >> within a 64-bit Windows application - i.e. the rest of the system will >> be 64-bit only the generated code will be 32-bit. I was also wondering >> if this would allow me to workaround the crashes due to stack >> unwinding problems. >> >> Thanks and Regards >> Dibyendu >> _______________________________________________ >> LLVM Developers mailing list >> llvm-dev at lists.llvm.org >> http://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-dev >> > > > _______________________________________________ > LLVM Developers mailing list > llvm-dev at lists.llvm.org > http://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-dev > >-------------- next part -------------- An HTML attachment was scrubbed... URL: <http://lists.llvm.org/pipermail/llvm-dev/attachments/20151029/789cf3a4/attachment.html>
Reasonably Related Threads
- Can JIT be targeted to 32-bit in a 64-bit Wndows environment?
- [LLVMdev] MCJIT longjmp failure on Win64 - was Invalid or unaligned stack exception on Windows
- [LLVMdev] Invalid or unaligned stack exception on Windows
- [LLVMdev] longjmp and JIT compiled code on Windows
- [LLVMdev] Unable to catch Win64 exceptions that occur in the mcjit(ted) code