RESOLVED FIXED125706
mandreel throws a checksum error on 32-bit x86
https://bugs.webkit.org/show_bug.cgi?id=125706
Summary mandreel throws a checksum error on 32-bit x86
Mark Hahnenberg
Reported 2013-12-13 13:14:36 PST
Steps to repro: (1) Tools/Scripts/build-jsc --debug --32-bit (2) Edit run.js to only load base.js and mandreel.js (2) DYLD_FRAMEWORK_PATH=/Volumes/Data/WebKit-svn-clean/OpenSource/WebKitBuild/Debug/ /Volumes/Data/WebKit-svn-clean/OpenSource/WebKitBuild/Debug/jsc run.js (3) Observe the following error message: Exception: Alert called with argument: Check sum mismatch: expected ???, actual 7649662
Attachments
the patch. (5.00 KB, patch)
2014-03-28 16:59 PDT, Mark Lam
fpizlo: review+
Mark Hahnenberg
Comment 1 2013-12-13 13:39:08 PST
Mark Lam
Comment 2 2014-03-28 16:41:11 PDT
The issue is due to the 32-bit DFG emitting code that load constants from its CodeBlock's m_constantRegisters vector, and then resizing that vector thereby rendering the addresses in the emitted code state. The fix is to use a dedicated doubles constant pool for the DFG stored in the DFG CommonData.
Mark Lam
Comment 3 2014-03-28 16:59:17 PDT
Created attachment 228094 [details] the patch.
Mark Lam
Comment 4 2014-03-28 17:38:42 PDT
Note You need to log in before you can comment on or make changes to this bug.