Bug 154064 - REGRESSION(r196331): It made ~180 JSC tests crash on ARMv7 Linux
Summary: REGRESSION(r196331): It made ~180 JSC tests crash on ARMv7 Linux
Status: RESOLVED FIXED
Alias: None
Product: WebKit
Classification: Unclassified
Component: New Bugs (show other bugs)
Version: Other
Hardware: Unspecified Unspecified
: P1 Critical
Assignee: Csaba Osztrogonác
URL:
Keywords:
Depends on:
Blocks: 108645 154009
  Show dependency treegraph
 
Reported: 2016-02-10 02:30 PST by Csaba Osztrogonác
Modified: 2016-02-10 09:50 PST (History)
12 users (show)

See Also:


Attachments
Patch (3.29 KB, patch)
2016-02-10 07:38 PST, Csaba Osztrogonác
no flags Details | Formatted Diff | Diff
Patch (5.54 KB, patch)
2016-02-10 09:30 PST, Csaba Osztrogonác
no flags Details | Formatted Diff | Diff

Note You need to log in before you can comment on or make changes to this bug.
Description Csaba Osztrogonác 2016-02-10 02:30:17 PST
https://trac.webkit.org/changeset/196331 made ~200 tests fail on ARMv7 Linux
(with ARM and Thumb2 instruction set too)

EFL ARMv7 Thumb2 instruction set: https://build.webkit.org/builders/EFL%20Linux%20ARMv7%20Thumb2%20Release/builds/17094
EFL ARMv7 ARM instruction set: https://build.webkit.org/builders/EFL%20Linux%20ARMv7%20Traditional%20Release/builds/16935
GTK (???) : https://build.webkit.org/builders/GTK%20Linux%20ARM%20Release/builds/10217
Comment 1 Csaba Osztrogonác 2016-02-10 07:38:35 PST
Created attachment 270989 [details]
Patch
Comment 2 Mark Lam 2016-02-10 09:19:26 PST
Comment on attachment 270989 [details]
Patch

View in context: https://bugs.webkit.org/attachment.cgi?id=270989&action=review

> Source/JavaScriptCore/bytecode/PolymorphicAccess.cpp:464
> +// EncodedJSValue in JSVALUE32_64 is a 64-bit integer. When being compiled in ARM EABI, it must be aligned even-numbered register (r0, r2 or [sp]).

By "aligned even-numbered", did you mean "aligned on an even-numbered"?

> Source/JavaScriptCore/bytecode/PolymorphicAccess.cpp:465
> +// To avoid assemblies from using wrong registers, let's occupy r1 or r3 with a dummy argument when necessary.

By "To avoid assemblies", did you mean "To prevent the assembler"?
Comment 3 Csaba Osztrogonác 2016-02-10 09:23:44 PST
I simply copy/pasted these lines from JITInlines.h (DFGSpeculativeJIT.h,
WASMFunctionCompiler.h), but I can fix the grammar everywhere, of course.
Comment 4 Csaba Osztrogonác 2016-02-10 09:30:37 PST
Created attachment 270994 [details]
Patch
Comment 5 Mark Lam 2016-02-10 09:33:48 PST
Comment on attachment 270994 [details]
Patch

r=me

Thanks for fixing the other comments as well.
Comment 6 Csaba Osztrogonác 2016-02-10 09:50:12 PST
Comment on attachment 270994 [details]
Patch

Clearing flags on attachment: 270994

Committed r196368: <http://trac.webkit.org/changeset/196368>
Comment 7 Csaba Osztrogonác 2016-02-10 09:50:19 PST
All reviewed patches have been landed.  Closing bug.