Building RSqueak (née lang-smalltalk/spyvm) JIT segfaults in GC on Windows
Created originally on Bitbucket by timfel
The RSqueak VM builds and runs fine with JIT on OSX and Linux, but crashes at startup on Windows. Windows build without JIT runs fine. The crashes are always somewhere in GC code, so I tried boehm, minimark, incminimark to no avail.
The different GCs don't crash in the same spot, e.g. boehm triggers a breakpoint somewhere below BOEHM_MALLOC_0_0 when resizing a dictionary, but incminimark crashes in call_footer_shadowstack after a compile and run once. Below are instructions on how to build RSqueak on Windows to reproduce the problem.
git clone https://github.com/HPI-SWA-Lab/RSqueak
Build RSqueak. This can be done, for example, by copying everything in .appveyor/ into the root folder of the repository, editing rsqueak-build.bat to include -Ojit, and then running it from a Visual Studio prompt. Alternatively, build targetrsqueak.py with JIT some other way.
You need SDL.dll in your PATH or next to the binary (get here: http://www.libsdl.org/release/SDL-1.2.15-win32.zip). Then execute (from the cmdline from within the repo): rsqueak.exe images/Squeak-4.6-vmmaker.bench.image