Bug 89953

Summary: New fast/js/dfg-store-unexpected-value-into-argument-and-osr-exit.html fails on 32 bit
Product: WebKit Reporter: Csaba Osztrogonác <ossy>
Component: JavaScriptCoreAssignee: Filip Pizlo <fpizlo>
Status: RESOLVED FIXED    
Severity: Normal CC: barraclough, fpizlo, mrobinson, ossy, pnormand, pvarga, webkit.review.bot, zan, zherczeg
Priority: P2 Keywords: Qt, QtTriaged
Version: 528+ (Nightly build)   
Hardware: Unspecified   
OS: Unspecified   
Bug Depends on:    
Bug Blocks: 87008, 89802    
Attachments:
Description Flags
the patch none

Csaba Osztrogonác
Reported 2012-06-26 00:42:17 PDT
It is a new test introduced in http://trac.webkit.org/changeset/121215 and fails on 32 bit platforms. (Qt and GTK) --- /ramdisk/qt-linux-32-release-webkit2/build/layout-test-results/fast/js/dfg-store-unexpected-value-into-argument-and-osr-exit-expected.txt +++ /ramdisk/qt-linux-32-release-webkit2/build/layout-test-results/fast/js/dfg-store-unexpected-value-into-argument-and-osr-exit-actual.txt @@ -153,56 +153,56 @@ PASS foo(3, {f:f, g:g}, p) is 85 PASS foo(3, {f:f, g:g}, p) is 1 PASS foo(3, {f:f, g:g}, p) is 85 -PASS foo(3, {f:f, g:g}, p) is 0.5 -PASS foo(3, {f:f, g:g}, p) is 85.5 -PASS foo(3, {f:f, g:g}, p) is 0.5 -PASS foo(3, {f:f, g:g}, p) is 85.5 -PASS foo(3, {f:f, g:g}, p) is 0.5 -PASS foo(3, {f:f, g:g}, p) is 85.5 -PASS foo(3, {f:f, g:g}, p) is 0.5 -PASS foo(3, {f:f, g:g}, p) is 85.5 -PASS foo(3, {f:f, g:g}, p) is 0.5 -PASS foo(3, {f:f, g:g}, p) is 85.5 -PASS foo(3, {f:f, g:g}, p) is 0.5 -PASS foo(3, {f:f, g:g}, p) is 85.5 -PASS foo(3, {f:f, g:g}, p) is 0.5 -PASS foo(3, {f:f, g:g}, p) is 85.5 -PASS foo(3, {f:f, g:g}, p) is 0.5 -PASS foo(3, {f:f, g:g}, p) is 85.5 -PASS foo(3, {f:f, g:g}, p) is 0.5 -PASS foo(3, {f:f, g:g}, p) is 85.5 -PASS foo(3, {f:f, g:g}, p) is 0.5 -PASS foo(3, {f:f, g:g}, p) is 85.5 -PASS foo(3, {f:f, g:g}, p) is 0.5 -PASS foo(3, {f:f, g:g}, p) is 85.5 -PASS foo(3, {f:f, g:g}, p) is 0.5 -PASS foo(3, {f:f, g:g}, p) is 85.5 -PASS foo(3, {f:f, g:g}, p) is 0.5 -PASS foo(3, {f:f, g:g}, p) is 85.5 -PASS foo(3, {f:f, g:g}, p) is 0.5 -PASS foo(3, {f:f, g:g}, p) is 85.5 -PASS foo(3, {f:f, g:g}, p) is 0.5 -PASS foo(3, {f:f, g:g}, p) is 85.5 -PASS foo(3, {f:f, g:g}, p) is 0.5 -PASS foo(3, {f:f, g:g}, p) is 85.5 -PASS foo(3, {f:f, g:g}, p) is 0.5 -PASS foo(3, {f:f, g:g}, p) is 85.5 -PASS foo(3, {f:f, g:g}, p) is 0.5 -PASS foo(3, {f:f, g:g}, p) is 85.5 -PASS foo(3, {f:f, g:g}, p) is 0.5 -PASS foo(3, {f:f, g:g}, p) is 85.5 -PASS foo(3, {f:f, g:g}, p) is 0.5 -PASS foo(3, {f:f, g:g}, p) is 85.5 -PASS foo(3, {f:f, g:g}, p) is 0.5 -PASS foo(3, {f:f, g:g}, p) is 85.5 -PASS foo(3, {f:f, g:g}, p) is 0.5 -PASS foo(3, {f:f, g:g}, p) is 85.5 -PASS foo(3, {f:f, g:g}, p) is 0.5 -PASS foo(3, {f:f, g:g}, p) is 85.5 -PASS foo(3, {f:f, g:g}, p) is 0.5 -PASS foo(3, {f:f, g:g}, p) is 85.5 -PASS foo(3, {f:f, g:g}, p) is 0.5 -PASS foo(3, {f:f, g:g}, p) is 85.5 +FAIL foo(3, {f:f, g:g}, p) should be 0.5. Was 43. +FAIL foo(3, {f:f, g:g}, p) should be 85.5. Was 43. +FAIL foo(3, {f:f, g:g}, p) should be 0.5. Was 43. +FAIL foo(3, {f:f, g:g}, p) should be 85.5. Was 43. +FAIL foo(3, {f:f, g:g}, p) should be 0.5. Was 43. +FAIL foo(3, {f:f, g:g}, p) should be 85.5. Was 43. +FAIL foo(3, {f:f, g:g}, p) should be 0.5. Was 43. +FAIL foo(3, {f:f, g:g}, p) should be 85.5. Was 43. +FAIL foo(3, {f:f, g:g}, p) should be 0.5. Was 43. +FAIL foo(3, {f:f, g:g}, p) should be 85.5. Was 43. +FAIL foo(3, {f:f, g:g}, p) should be 0.5. Was 43. +FAIL foo(3, {f:f, g:g}, p) should be 85.5. Was 43. +FAIL foo(3, {f:f, g:g}, p) should be 0.5. Was 43. +FAIL foo(3, {f:f, g:g}, p) should be 85.5. Was 43. +FAIL foo(3, {f:f, g:g}, p) should be 0.5. Was 43. +FAIL foo(3, {f:f, g:g}, p) should be 85.5. Was 43. +FAIL foo(3, {f:f, g:g}, p) should be 0.5. Was 43. +FAIL foo(3, {f:f, g:g}, p) should be 85.5. Was 43. +FAIL foo(3, {f:f, g:g}, p) should be 0.5. Was 43. +FAIL foo(3, {f:f, g:g}, p) should be 85.5. Was 43. +FAIL foo(3, {f:f, g:g}, p) should be 0.5. Was 43. +FAIL foo(3, {f:f, g:g}, p) should be 85.5. Was 43. +FAIL foo(3, {f:f, g:g}, p) should be 0.5. Was 43. +FAIL foo(3, {f:f, g:g}, p) should be 85.5. Was 43. +FAIL foo(3, {f:f, g:g}, p) should be 0.5. Was 43. +FAIL foo(3, {f:f, g:g}, p) should be 85.5. Was 43. +FAIL foo(3, {f:f, g:g}, p) should be 0.5. Was 43. +FAIL foo(3, {f:f, g:g}, p) should be 85.5. Was 43. +FAIL foo(3, {f:f, g:g}, p) should be 0.5. Was 43. +FAIL foo(3, {f:f, g:g}, p) should be 85.5. Was 43. +FAIL foo(3, {f:f, g:g}, p) should be 0.5. Was 43. +FAIL foo(3, {f:f, g:g}, p) should be 85.5. Was 43. +FAIL foo(3, {f:f, g:g}, p) should be 0.5. Was 43. +FAIL foo(3, {f:f, g:g}, p) should be 85.5. Was 43. +FAIL foo(3, {f:f, g:g}, p) should be 0.5. Was 43. +FAIL foo(3, {f:f, g:g}, p) should be 85.5. Was 43. +FAIL foo(3, {f:f, g:g}, p) should be 0.5. Was 43. +FAIL foo(3, {f:f, g:g}, p) should be 85.5. Was 43. +FAIL foo(3, {f:f, g:g}, p) should be 0.5. Was 43. +FAIL foo(3, {f:f, g:g}, p) should be 85.5. Was 43. +FAIL foo(3, {f:f, g:g}, p) should be 0.5. Was 43. +FAIL foo(3, {f:f, g:g}, p) should be 85.5. Was 43. +FAIL foo(3, {f:f, g:g}, p) should be 0.5. Was 43. +FAIL foo(3, {f:f, g:g}, p) should be 85.5. Was 43. +FAIL foo(3, {f:f, g:g}, p) should be 0.5. Was 43. +FAIL foo(3, {f:f, g:g}, p) should be 85.5. Was 43. +FAIL foo(3, {f:f, g:g}, p) should be 0.5. Was 43. +FAIL foo(3, {f:f, g:g}, p) should be 85.5. Was 43. +FAIL foo(3, {f:f, g:g}, p) should be 0.5. Was 43. +FAIL foo(3, {f:f, g:g}, p) should be 85.5. Was 43. PASS successfullyParsed is true TEST COMPLETE
Attachments
the patch (2.83 KB, patch)
2012-06-26 01:10 PDT, Filip Pizlo
no flags
Filip Pizlo
Comment 1 2012-06-26 00:43:58 PDT
Oh no! Fix on the way...
Filip Pizlo
Comment 2 2012-06-26 01:00:21 PDT
Oh wow, good thing I wrote that test. Looks like the 32-bit DFG was assuming totally bad things about the types of local variables. Patch forthcoming.
Filip Pizlo
Comment 3 2012-06-26 01:10:09 PDT
Created attachment 149475 [details] the patch This ought to do it.
Csaba Osztrogonác
Comment 4 2012-06-26 02:07:50 PDT
All tests pass on 32 bit Qt with this patch. Thanks for the fix.
WebKit Review Bot
Comment 5 2012-06-26 02:23:02 PDT
Comment on attachment 149475 [details] the patch Clearing flags on attachment: 149475 Committed r121243: <http://trac.webkit.org/changeset/121243>
WebKit Review Bot
Comment 6 2012-06-26 02:23:08 PDT
All reviewed patches have been landed. Closing bug.
Note You need to log in before you can comment on or make changes to this bug.