UNCONFIRMED 38993
JIT fails on Windows x64
https://bugs.webkit.org/show_bug.cgi?id=38993
Summary JIT fails on Windows x64
vanboxem.ruben
Reported 2010-05-12 08:25:32 PDT
This is a follow-up to the ad interim fix in https://bugs.webkit.org/show_bug.cgi?id=38747. This bug report serves for the true fixing of JIT. JIT has been disabled for mingw-w64, but should be fixed somehow. It is a runtime crash when (I think) JIT is called in a program. The way I found the bug is opening a web page in the Qt browser demo or open a doc page in Assistant. Building Qt 4.7 with mingw-w64: https://trac.webkit.org/wiki/BuildingQtOnWindows#AWorksForMeStep-by-StepGuidetobuildingQtWebKitonWindowsusingmingw-w64w32 (Use the drangon build or the sezero_old build, because there are issues with the _new build concerning underscoring in JavaScriptCore/jit/JITStubs.cpp) PS: this bug should not block the release of 2.0 IMHO, this can be fixed later on. PS2: if the howto doesn't work for you, please inform me.
Attachments
Gabor Loki
Comment 1 2010-05-12 08:48:20 PDT
The Windows x64 uses different calling conventions and stack allocations. So, the cti*Trampolines have to be modified for Windows. I have a patch for this issue, but it should be tested on JS regression tests (at least).
vanboxem.ruben
Comment 2 2010-05-13 11:38:57 PDT
Sorry to be so passive on the providing patches side, but here's something on the issue: Windows x64 does not provide underscores for symbol names, and recent mingw-w64 builds mirror that, and as a result (src/3rdparty/webkit/JavaScriptCore/jit/JITStubs.cpp): namespace JSC { -#if OS(DARWIN) || OS(WINDOWS) +#if OS(DARWIN) || (OS(WINDOWS) && !CPU(X86_64)) #define SYMBOL_STRING(name) "_" #name #else #define SYMBOL_STRING(name) #name #endif I don't know if it influences the runtime crashes, but this should be fixed for win64. This is also correct for MSVC (mingw-w64 devs assured me of that).
Jonathan Liu
Comment 3 2011-05-20 21:34:00 PDT
I can confirm this is still occurring with QtWebKit 2.2 branch (http://gitorious.org/+qtwebkit-developers/webkit/qtwebkit/trees/qtwebkit-2.2) after applying patch from https://bugs.webkit.org/show_bug.cgi?id=61235. JIT seems to have been enabled for MinGW-w64. Perhaps it should be disabled again.
Jonathan Liu
Comment 4 2011-05-20 22:52:18 PDT
Disabling JIT on MinGW-w64 fixes the crash but JavaScript becomes unbearably slow. Acid3 Test takes a long time to run.
Jonathan Liu
Comment 5 2011-05-21 02:27:15 PDT
There is also lag in MinGW-w64 when middle-clicking to auto-scroll. It takes 1 second to change the cursor icon. Moving the cursor to auto-scroll the page is then also very slow. It updates, pauses for a second, updates, etc.
Benjamin Poulain
Comment 6 2011-05-21 03:23:15 PDT
I don't think any port of WebKit officially supports MinGW-w64. Patches are welcome. But nobody is actively working on this.
vanboxem.ruben
Comment 7 2011-05-21 04:25:53 PDT
I don't think there's anything truly specific about mingw-w64. There's just no Windows x64 implementation as @Gabor Loki said. By the way: how is that patch coming along, Mr. Gabor Loki?
Jonathan Liu
Comment 8 2011-05-21 04:52:45 PDT
Ruben, does the auto-scroll lag for you on MinGW-w64? What compiler do you use?
Gabor Loki
Comment 9 2011-05-23 02:45:26 PDT
Ohh, sorry. I just plain forgot this bug. If I have time, will look into it this or next week.
vanboxem.ruben
Comment 10 2011-05-23 02:53:21 PDT
I use only compilers on the mingw-w64 website, currently my own brew of GCC 4.6, native Windows x64: http://sourceforge.net/projects/mingw-w64/files/Toolchains%20targetting%20Win64/Personal%20Builds/rubenvb/ One directory level up, there's also a high quality build for GCC 4.5 and 4.4 by sezero, which I used before I got mine built. I must admit I don't have the WebKit source tree on my PC anymore (I reported this bug a long time ago...). I'll be sure to test the fix once Mr. Loki has had a chance to work on it.
Jonathan Liu
Comment 11 2011-05-23 03:46:40 PDT
Ruben: if you have Qt compiled with MinGW-w64, can you check whether you can confirm https://bugs.webkit.org/show_bug.cgi?id=61239#c2?
Jonathan Liu
Comment 12 2011-07-20 06:12:51 PDT
(In reply to comment #9) > Ohh, sorry. I just plain forgot this bug. If I have time, will look into it this or next week. Any updates Gabor?
Note You need to log in before you can comment on or make changes to this bug.