Bug 43410

Summary: Enable JSValue32_64 on ARM by default
Product: WebKit Reporter: Gabor Loki <loki>
Component: JavaScriptCoreAssignee: Nobody <webkit-unassigned>
Status: RESOLVED FIXED    
Severity: Enhancement CC: barraclough
Priority: P2    
Version: 528+ (Nightly build)   
Hardware: Other   
OS: All   
Attachments:
Description Flags
Enable JSValue32_64 on ARM by default
loki: commit-queue-
Enable JSValue32_64 for GCC on ARM by default ggaren: review+, loki: commit-queue-

Description Gabor Loki 2010-08-03 04:22:24 PDT
The ARM_TRADITIONAL back-end should also follow the direction of JSValue development.

Here is some performance numbers:

SunSpider:
  sunspider-results-jsc-v7-jsvalue32_64.js : 2134.3
  sunspider-results-jsc-v7-jsvalue32.js    : 3886.1 (1.821x as slow)

V8:
  sunspider-results-jsc-v7-jsvalue32.js    : 14600.2
  sunspider-results-jsc-v7-jsvalue32_64.js : 15961.8 (1.093x as slow)

WindScorpion:
  sunspider-results-jsc-v7-jsv32_64.js : 9548.5
  sunspider-results-jsc-v7-jsv32.js    : 9662.75 (1.012x as slow)

So, 2 of the 3 benchmark say the JSValue32_64 is faster. Although the r64319 or r64320 causes 10% performance regression in JSValue32 on ARM (see at http://webkit.sed.hu/benchmark/query/advanced/63695;64541;linux-arm-qt;jit;ss;speed ). So the overall picture is not so clear. ;)
Comment 1 Gabor Loki 2010-08-03 04:30:32 PDT
Created attachment 63323 [details]
Enable JSValue32_64 on ARM by default
Comment 2 Gabor Loki 2010-08-03 06:56:39 PDT
Created attachment 63332 [details]
Enable JSValue32_64 for GCC on ARM by default

Enable JSValue32_64 only for GCC on ARM.
JSValue32_64 will be enabled for RVCT in another patch.
Comment 3 Geoffrey Garen 2010-08-03 11:05:29 PDT
Comment on attachment 63332 [details]
Enable JSValue32_64 for GCC on ARM by default

r=me
Comment 4 Gabor Loki 2010-08-04 00:45:00 PDT
Committed revision 64632.