| Summary: | Change FTL stack check to use VM's stackLimit | ||||||
|---|---|---|---|---|---|---|---|
| Product: | WebKit | Reporter: | Michael Saboff <msaboff> | ||||
| Component: | JavaScriptCore | Assignee: | Michael Saboff <msaboff> | ||||
| Status: | RESOLVED FIXED | ||||||
| Severity: | Normal | ||||||
| Priority: | P2 | ||||||
| Version: | 528+ (Nightly build) | ||||||
| Hardware: | All | ||||||
| OS: | All | ||||||
| Bug Depends on: | |||||||
| Bug Blocks: | 125650 | ||||||
| Attachments: |
|
||||||
|
Description
Michael Saboff
2014-02-10 16:20:21 PST
Created attachment 224025 [details]
Patch
Reviewed in person by Filip Pizlo.
Verified no performance regression.
Generating benchmark report at /Volumes/Data/src/webkit/Baseline_FTL Stack Check_SunSpiderLongSpiderV8SpiderOctaneKrakenJSRegressAsmBench_msaboff-pro_20140213_1513_report.txt
And raw data at /Volumes/Data/src/webkit/Baseline_FTL Stack Check_SunSpiderLongSpiderV8SpiderOctaneKrakenJSRegressAsmBench_msaboff-pro_20140213_1513.json
Benchmark report for SunSpider, LongSpider, V8Spider, Octane, Kraken, JSRegress, and AsmBench on msaboff-pro (MacPro5,1).
VMs tested:
"Baseline" at /Volumes/Data/src/webkit/WebKitBuild/Release/JavaScriptCore.framework/Versions/A/Resources/jsc
"FTL Stack Check" at /Volumes/Data/src/webkit/WebKitBuild/Release2/JavaScriptCore.framework/Versions/A/Resources/jsc
Collected 4 samples per benchmark/VM, with 4 VM invocations per benchmark. Emitted a call to gc() between sample measurements.
Used 1 benchmark iteration per VM invocation for warm-up. Used the jsc-specific preciseTime() function to get microsecond-level
timing. Reporting benchmark execution times with 95% confidence intervals in milliseconds.
Baseline FTL Stack Check
SunSpider:
3d-cube 7.6072+-0.2858 ? 7.6655+-0.6048 ?
3d-morph 7.8131+-0.3172 7.7828+-0.1655
3d-raytrace 9.3583+-0.3248 8.9257+-0.1928 might be 1.0485x faster
access-binary-trees 2.5275+-0.0772 2.5028+-0.1310
access-fannkuch 7.6580+-0.0756 ? 7.6827+-0.2001 ?
access-nbody 3.8527+-0.2103 3.8525+-0.1341
access-nsieve 5.0988+-0.1129 ? 5.1028+-0.2338 ?
bitops-3bit-bits-in-byte 1.6292+-0.0659 ? 1.6516+-0.1033 ? might be 1.0137x slower
bitops-bits-in-byte 5.5203+-0.1570 ? 5.5580+-0.1171 ?
bitops-bitwise-and 2.5485+-0.2317 2.4804+-0.0791 might be 1.0274x faster
bitops-nsieve-bits 4.8651+-0.1009 ? 4.9013+-0.1665 ?
controlflow-recursive 3.1418+-0.0750 ? 3.2234+-0.0612 ? might be 1.0260x slower
crypto-aes 5.2031+-0.2432 5.0474+-0.1650 might be 1.0308x faster
crypto-md5 3.3508+-0.1318 3.2622+-0.1831 might be 1.0271x faster
crypto-sha1 3.7099+-0.1397 3.5865+-0.1894 might be 1.0344x faster
date-format-tofte 11.0375+-0.9075 ? 11.1992+-0.2404 ? might be 1.0146x slower
date-format-xparb 7.6802+-1.5700 7.6453+-0.3572
math-cordic 4.1538+-0.1281 4.1159+-0.0965
math-partial-sums 8.7326+-0.3451 ? 8.8760+-0.2266 ? might be 1.0164x slower
math-spectral-norm 2.8241+-0.1281 ? 2.8590+-0.2332 ? might be 1.0124x slower
regexp-dna 10.6432+-0.2059 ? 10.7289+-0.2322 ?
string-base64 5.0310+-0.0899 ? 5.1592+-0.0802 ? might be 1.0255x slower
string-fasta 9.4622+-0.1571 9.3717+-0.1992
string-tagcloud 13.4161+-0.4876 ? 13.4830+-0.6097 ?
string-unpack-code 29.6711+-1.0028 29.4768+-1.5893
string-validate-input 7.9208+-0.5278 ? 7.9216+-0.6382 ?
<arithmetic> * 7.0945+-0.0691 7.0793+-0.0418 might be 1.0021x faster
<geometric> 5.7838+-0.0539 5.7709+-0.0345 might be 1.0022x faster
<harmonic> 4.8265+-0.0536 4.8152+-0.0438 might be 1.0023x faster
Baseline FTL Stack Check
LongSpider:
3d-cube 1380.9462+-7.1099 ? 1383.8007+-35.8662 ?
3d-morph 1852.3182+-3.2602 ? 1854.7795+-5.9412 ?
3d-raytrace 1204.6044+-4.6102 1204.0663+-17.8640
access-binary-trees 1358.4948+-11.7214 ? 1370.0325+-6.2009 ?
access-fannkuch 436.2583+-27.7671 ? 441.4460+-34.2625 ? might be 1.0119x slower
access-nbody 1055.6256+-5.8151 ? 1057.0745+-8.1293 ?
access-nsieve 1320.7742+-1.7792 1319.9803+-4.2655
bitops-3bit-bits-in-byte 51.8845+-0.4142 51.8224+-0.4006
bitops-bits-in-byte 325.1122+-4.6533 324.4499+-3.3741
bitops-nsieve-bits 950.1616+-6.9290 ? 950.4847+-5.1752 ?
controlflow-recursive 742.2800+-2.1831 ! 748.8337+-0.8255 ! definitely 1.0088x slower
crypto-aes 949.8253+-2.6458 ! 957.3882+-2.0048 ! definitely 1.0080x slower
crypto-md5 835.3600+-11.2017 833.2651+-12.0273
crypto-sha1 1070.7042+-6.6786 1067.6967+-4.7680
date-format-tofte 1098.0352+-26.5213 ? 1112.1328+-15.5138 ? might be 1.0128x slower
date-format-xparb 1184.0259+-23.0949 1170.4158+-82.5707 might be 1.0116x faster
math-cordic 921.4667+-4.9280 ^ 903.3450+-12.4647 ^ definitely 1.0201x faster
math-partial-sums 1031.3744+-10.7262 1030.0432+-8.5526
math-spectral-norm 1072.4492+-2.9171 ? 1073.5021+-3.6457 ?
string-base64 475.4171+-0.7216 ? 475.4636+-4.1312 ?
string-fasta 895.6248+-15.5547 ? 903.2495+-25.8081 ?
string-tagcloud 332.1689+-2.5906 ! 340.7353+-2.5782 ! definitely 1.0258x slower
<arithmetic> 933.8596+-2.6406 ? 935.1822+-3.0004 ? might be 1.0014x slower
<geometric> * 784.6549+-2.9135 ? 786.3128+-2.0008 ? might be 1.0021x slower
<harmonic> 481.0146+-1.3571 ? 481.8987+-2.3971 ? might be 1.0018x slower
Baseline FTL Stack Check
V8Spider:
crypto 74.0748+-0.8921 ? 75.4862+-0.5699 ? might be 1.0191x slower
deltablue 96.8490+-1.8253 ? 96.8672+-3.5283 ?
earley-boyer 63.2430+-0.7608 63.1945+-0.0907
raytrace 44.1080+-0.5130 ? 44.6723+-0.6067 ? might be 1.0128x slower
regexp 85.7720+-0.8997 ? 85.8304+-1.6550 ?
richards 100.5714+-2.7498 ? 100.8574+-1.7464 ?
splay 48.7755+-0.9673 47.8910+-0.6152 might be 1.0185x faster
<arithmetic> 73.3419+-0.9027 ? 73.5427+-0.5093 ? might be 1.0027x slower
<geometric> * 70.2204+-0.7904 ? 70.3818+-0.3771 ? might be 1.0023x slower
<harmonic> 67.0383+-0.6858 ? 67.1559+-0.2789 ? might be 1.0018x slower
Baseline FTL Stack Check
Octane and V8v7:
encrypt 0.35374+-0.00111 ? 0.35402+-0.00168 ?
decrypt 6.19642+-0.01592 ? 6.20493+-0.04692 ?
deltablue x2 0.44621+-0.00539 ? 0.44794+-0.01328 ?
earley 0.81122+-0.00675 0.80762+-0.00774
boyer 11.34898+-0.12393 11.33193+-0.16815
navier-stokes x2 6.46346+-0.01956 6.45830+-0.01763
raytrace x2 3.25933+-0.02060 ? 3.28595+-0.01979 ?
regexp x2 25.88197+-0.42115 25.68138+-0.53785
richards x2 0.21845+-0.00909 0.21452+-0.00461 might be 1.0183x faster
splay x2 0.65225+-0.00471 ? 0.65440+-0.00700 ?
pdfjs x2 82.61481+-0.79876 ? 83.54708+-0.17403 ? might be 1.0113x slower
mandreel x2 92.05039+-0.30454 91.99255+-0.37848
gbemu x2 56.55968+-0.30098 ? 56.92752+-0.40242 ?
closure 0.75457+-0.00281 0.75322+-0.00144
jquery 9.85949+-0.06100 9.84236+-0.03994
box2d x2 30.79673+-0.26054 30.75419+-0.14247
zlib x2 618.88346+-4.29571 611.90365+-3.54263 might be 1.0114x faster
typescript x2 1179.53027+-15.00598 ? 1180.81653+-10.59131 ?
V8v7:
<arithmetic> 5.78461+-0.05509 5.76147+-0.07486 might be 1.0040x faster
<geometric> * 1.87944+-0.00891 1.87630+-0.00272 might be 1.0017x faster
<harmonic> 0.72674+-0.01302 0.72218+-0.00559 might be 1.0063x faster
Octane including V8v7:
<arithmetic> 140.80128+-1.23133 140.48874+-0.70480 might be 1.0022x faster
<geometric> * 10.98734+-0.04264 10.98027+-0.01080 might be 1.0006x faster
<harmonic> 1.27150+-0.02132 1.26395+-0.00911 might be 1.0060x faster
Baseline FTL Stack Check
Kraken:
ai-astar 437.708+-6.268 ? 442.135+-14.381 ? might be 1.0101x slower
audio-beat-detection 181.839+-4.183 ? 181.865+-2.482 ?
audio-dft 244.437+-4.884 244.153+-3.115
audio-fft 105.479+-0.238 ? 105.633+-0.825 ?
audio-oscillator 324.375+-0.536 ^ 320.362+-2.324 ^ definitely 1.0125x faster
imaging-darkroom 244.228+-0.631 243.511+-3.097
imaging-desaturate 92.123+-0.747 ? 92.334+-0.706 ?
imaging-gaussian-blur 169.321+-1.345 ? 174.928+-15.687 ? might be 1.0331x slower
json-parse-financial 67.808+-0.997 ? 68.074+-0.721 ?
json-stringify-tinderbox 87.986+-1.779 87.573+-0.557
stanford-crypto-aes 79.887+-0.736 ? 80.303+-2.545 ?
stanford-crypto-ccm 88.257+-1.586 ? 89.053+-6.897 ?
stanford-crypto-pbkdf2 217.190+-1.260 ? 220.001+-4.225 ? might be 1.0129x slower
stanford-crypto-sha256-iterative 75.204+-0.940 ? 75.425+-1.468 ?
<arithmetic> * 172.560+-0.574 ? 173.239+-1.805 ? might be 1.0039x slower
<geometric> 144.567+-0.501 ? 145.158+-1.428 ? might be 1.0041x slower
<harmonic> 123.716+-0.534 ? 124.191+-1.155 ? might be 1.0038x slower
Baseline FTL Stack Check
JSRegress:
adapt-to-double-divide 17.8260+-0.3130 ? 17.9494+-0.4352 ?
aliased-arguments-getbyval 0.9617+-0.0583 ? 0.9896+-0.1697 ? might be 1.0291x slower
allocate-big-object 2.7491+-0.6091 ? 2.8420+-0.5947 ? might be 1.0338x slower
arity-mismatch-inlining 0.9893+-0.0769 0.9527+-0.1173 might be 1.0384x faster
array-access-polymorphic-structure 8.2880+-0.3123 8.2810+-0.1744
array-nonarray-polymorhpic-access 56.1118+-0.6519 55.9062+-0.6708
array-prototype-every 103.9460+-0.9796 103.6711+-1.2177
array-with-double-add 5.6405+-0.1000 ? 5.8829+-0.4411 ? might be 1.0430x slower
array-with-double-increment 4.1371+-0.1041 ? 4.1625+-0.1047 ?
array-with-double-mul-add 6.6148+-0.1286 ? 6.6227+-0.1123 ?
array-with-double-sum 6.9033+-0.0388 ? 7.0203+-0.1290 ? might be 1.0169x slower
array-with-int32-add-sub 10.1254+-0.0993 ? 10.2208+-0.1324 ?
array-with-int32-or-double-sum 6.9874+-0.1344 ? 7.1068+-0.3513 ? might be 1.0171x slower
ArrayBuffer-DataView-alloc-large-long-lived
96.4808+-1.4813 ? 96.7073+-0.8468 ?
ArrayBuffer-DataView-alloc-long-lived 26.4080+-1.0190 26.0975+-0.4251 might be 1.0119x faster
ArrayBuffer-Int32Array-byteOffset 5.0428+-0.1047 4.9902+-0.0733 might be 1.0105x faster
ArrayBuffer-Int8Array-alloc-huge-long-lived
225.4948+-3.7477 ? 226.3770+-1.4282 ?
ArrayBuffer-Int8Array-alloc-large-long-lived-fragmented
144.5723+-0.9108 ^ 142.8185+-0.4818 ^ definitely 1.0123x faster
ArrayBuffer-Int8Array-alloc-large-long-lived
99.2180+-1.3709 ? 99.9181+-1.5885 ?
ArrayBuffer-Int8Array-alloc-long-lived-buffer
41.3797+-0.4101 ? 42.4790+-2.9224 ? might be 1.0266x slower
ArrayBuffer-Int8Array-alloc-long-lived 24.8712+-0.1735 24.8517+-0.3330
ArrayBuffer-Int8Array-alloc 22.1090+-0.1818 ? 23.6382+-3.2644 ? might be 1.0692x slower
asmjs_bool_bug 7.8977+-0.3420 ? 8.0178+-0.0613 ? might be 1.0152x slower
basic-set 16.7975+-1.0091 ^ 14.8693+-0.5989 ^ definitely 1.1297x faster
big-int-mul 5.5657+-0.1200 5.5515+-0.1842
boolean-test 3.8427+-0.1458 ? 3.8446+-0.0846 ?
branch-fold 4.1761+-0.0912 4.1385+-0.0761
by-val-generic 11.6141+-0.2358 11.4713+-0.2408 might be 1.0125x faster
captured-assignments 0.5318+-0.0168 ? 0.5540+-0.1085 ? might be 1.0417x slower
cast-int-to-double 10.7099+-0.0377 ? 10.7111+-0.1362 ?
cell-argument 9.8525+-0.3056 ? 9.9943+-0.2947 ? might be 1.0144x slower
cfg-simplify 3.7235+-0.1062 3.6601+-0.1348 might be 1.0173x faster
chain-custom-getter 142.4285+-21.5450 136.6102+-18.6960 might be 1.0426x faster
chain-getter-access 228.5989+-10.6435 228.0097+-6.3546
cmpeq-obj-to-obj-other 11.8356+-0.5058 ? 11.8583+-0.3714 ?
constant-test 7.2776+-0.0628 7.2148+-0.1434
DataView-custom-properties 104.3215+-2.0021 104.2922+-3.2073
delay-tear-off-arguments-strictmode 3.0953+-0.0842 ? 3.1367+-0.0643 ? might be 1.0134x slower
destructuring-arguments-length 160.8246+-3.1808 ? 166.4427+-9.4981 ? might be 1.0349x slower
destructuring-arguments 7.5625+-0.3330 ? 7.6262+-0.1203 ?
destructuring-swap 7.4623+-0.1155 ? 7.5283+-0.1357 ?
direct-arguments-getbyval 0.8513+-0.0709 0.8265+-0.1214 might be 1.0299x faster
double-get-by-val-out-of-bounds 6.4153+-0.3402 ? 6.5264+-0.1117 ? might be 1.0173x slower
double-pollution-getbyval 9.5388+-0.1165 ? 9.5693+-0.1241 ?
double-pollution-putbyoffset 5.4528+-0.0584 ? 5.4576+-0.1025 ?
double-to-int32-typed-array-no-inline 2.7888+-0.0905 2.7855+-0.0694
double-to-int32-typed-array 2.0598+-0.0814 1.9887+-0.0503 might be 1.0358x faster
double-to-uint32-typed-array-no-inline 2.9720+-0.1509 2.8976+-0.2291 might be 1.0257x faster
double-to-uint32-typed-array 2.1740+-0.1056 2.1526+-0.1570
empty-string-plus-int 9.1558+-0.1918 ? 9.4352+-0.3389 ? might be 1.0305x slower
emscripten-cube2hash 50.5666+-0.6008 49.4949+-0.9543 might be 1.0217x faster
emscripten-memops 2029.5708+-7.0854 ? 2031.4739+-9.8499 ?
external-arguments-getbyval 2.0324+-0.1083 ? 2.1272+-0.1864 ? might be 1.0466x slower
external-arguments-putbyval 2.9838+-0.2269 ? 2.9894+-0.1809 ?
fixed-typed-array-storage-var-index 1.3783+-0.0445 1.3693+-0.1158
fixed-typed-array-storage 1.0210+-0.0906 1.0099+-0.0874 might be 1.0110x faster
Float32Array-matrix-mult 5.7058+-0.2030 5.6624+-0.0724
Float32Array-to-Float64Array-set 76.5988+-1.2206 76.1875+-2.4740
Float64Array-alloc-long-lived 94.3090+-0.2719 ? 94.6138+-0.9402 ?
Float64Array-to-Int16Array-set 98.0513+-0.6984 ^ 95.7518+-0.4329 ^ definitely 1.0240x faster
fold-double-to-int 16.4642+-0.1639 16.4160+-0.4934
for-of-iterate-array-entries 8.1835+-0.2531 8.0980+-0.3267 might be 1.0106x faster
for-of-iterate-array-keys 3.2115+-0.0934 ? 3.2482+-0.2469 ? might be 1.0114x slower
for-of-iterate-array-values 2.7557+-0.0982 ? 2.7747+-0.1507 ?
function-dot-apply 1.6155+-0.0506 ? 1.6587+-0.1640 ? might be 1.0267x slower
function-test 4.2459+-0.1043 4.1880+-0.1738 might be 1.0138x faster
function-with-eval 45.9305+-2.8000 45.2504+-0.8715 might be 1.0150x faster
get-by-id-chain-from-try-block 6.6988+-0.3169 ? 6.8188+-0.1540 ? might be 1.0179x slower
get-by-id-proto-or-self 24.8780+-1.1749 24.5390+-1.6994 might be 1.0138x faster
get-by-id-self-or-proto 24.8804+-1.2290 ? 25.7827+-1.3467 ? might be 1.0363x slower
get-by-val-out-of-bounds 6.2952+-0.2169 ? 6.4722+-0.4055 ? might be 1.0281x slower
get_callee_monomorphic 5.3162+-0.3131 ? 5.5613+-0.3449 ? might be 1.0461x slower
get_callee_polymorphic 4.1396+-0.2305 4.0015+-0.1884 might be 1.0345x faster
global-var-const-infer-fire-from-opt 1.2151+-0.1354 1.1091+-0.1330 might be 1.0956x faster
global-var-const-infer 0.9027+-0.1501 0.8613+-0.0832 might be 1.0480x faster
HashMap-put-get-iterate-keys 38.8768+-0.6551 ? 39.1270+-0.4407 ?
HashMap-put-get-iterate 43.5605+-0.5948 ? 43.6734+-0.8080 ?
HashMap-string-put-get-iterate 45.3476+-1.1644 ? 46.3769+-3.0219 ? might be 1.0227x slower
imul-double-only 10.4850+-1.6717 ? 11.3515+-0.1117 ? might be 1.0826x slower
imul-int-only 13.5676+-0.1393 13.4791+-0.1475
imul-mixed 10.2827+-1.2579 ? 10.8817+-0.1598 ? might be 1.0583x slower
in-four-cases 21.9728+-0.6624 21.7764+-0.2462
in-one-case-false 10.5502+-0.2100 ? 10.6036+-0.2700 ?
in-one-case-true 10.5997+-0.0686 10.5258+-0.1199
in-two-cases 11.2813+-0.1408 11.1272+-0.1225 might be 1.0139x faster
indexed-properties-in-objects 4.0079+-0.1540 ? 4.0130+-0.0849 ?
infer-closure-const-then-mov-no-inline 5.3022+-0.0663 ? 5.4238+-0.2314 ? might be 1.0229x slower
infer-closure-const-then-mov 24.5418+-0.3953 24.4551+-0.3152
infer-closure-const-then-put-to-scope-no-inline
15.9252+-0.1205 ^ 15.4077+-0.0616 ^ definitely 1.0336x faster
infer-closure-const-then-put-to-scope 27.7878+-0.3091 ? 27.8146+-0.3317 ?
infer-closure-const-then-reenter-no-inline
74.2874+-0.2335 ^ 71.3705+-0.4682 ^ definitely 1.0409x faster
infer-closure-const-then-reenter 27.8773+-0.2798 ? 28.0084+-0.5452 ?
infer-one-time-closure-ten-vars 14.6855+-0.4518 ? 14.7914+-0.3924 ?
infer-one-time-closure-two-vars 14.2248+-0.1301 ? 14.2640+-0.5694 ?
infer-one-time-closure 14.2415+-0.0717 14.1243+-0.2856
infer-one-time-deep-closure 24.5170+-0.4011 ? 24.5538+-0.4876 ?
inline-arguments-access 1.5708+-0.0914 ? 1.5963+-0.1047 ? might be 1.0162x slower
inline-arguments-aliased-access 1.6698+-0.1328 ? 1.7217+-0.1369 ? might be 1.0311x slower
inline-arguments-local-escape 24.0268+-0.2272 ? 24.1351+-0.9344 ?
inline-get-scoped-var 6.3734+-0.2688 6.3478+-0.1907
inlined-put-by-id-transition 13.1221+-0.2770 13.0588+-0.2202
int-or-other-abs-then-get-by-val 8.1548+-0.0495 ? 8.1558+-0.1847 ?
int-or-other-abs-zero-then-get-by-val 31.5889+-0.0430 ! 32.6925+-1.0213 ! definitely 1.0349x slower
int-or-other-add-then-get-by-val 8.6346+-0.1869 ? 8.7516+-0.1562 ? might be 1.0136x slower
int-or-other-add 9.4702+-0.1057 9.3848+-0.4373
int-or-other-div-then-get-by-val 5.6953+-0.3402 5.6760+-0.3407
int-or-other-max-then-get-by-val 6.2007+-0.0384 6.1987+-0.1195
int-or-other-min-then-get-by-val 6.3831+-0.1159 6.3621+-0.1449
int-or-other-mod-then-get-by-val 5.5593+-0.1302 5.5425+-0.1316
int-or-other-mul-then-get-by-val 5.6108+-0.2733 5.5770+-0.2736
int-or-other-neg-then-get-by-val 6.9454+-0.4049 6.7976+-0.1167 might be 1.0217x faster
int-or-other-neg-zero-then-get-by-val 31.2849+-1.1990 ? 32.4168+-0.2498 ? might be 1.0362x slower
int-or-other-sub-then-get-by-val 8.3483+-0.0627 ? 8.3782+-0.1068 ?
int-or-other-sub 7.3162+-0.0617 7.2896+-0.2311
int-overflow-local 5.4584+-0.1524 5.4338+-0.1437
Int16Array-alloc-long-lived 67.6938+-0.7419 ? 67.8534+-0.5327 ?
Int16Array-bubble-sort-with-byteLength 42.3480+-0.3869 42.2502+-0.5358
Int16Array-bubble-sort 41.6867+-0.1791 41.5745+-0.3228
Int16Array-load-int-mul 1.6758+-0.1001 ? 1.6923+-0.1023 ?
Int16Array-to-Int32Array-set 75.6264+-0.9429 74.5505+-2.4136 might be 1.0144x faster
Int32Array-alloc-huge-long-lived 868.4448+-2.9955 866.2639+-9.3230
Int32Array-alloc-huge 647.7166+-3.7821 647.1300+-1.8038
Int32Array-alloc-large-long-lived 860.9936+-4.5887 860.3630+-6.4706
Int32Array-alloc-large 36.7020+-1.0500 36.2110+-1.7039 might be 1.0136x faster
Int32Array-alloc-long-lived 75.0037+-0.4797 ? 75.6343+-0.4756 ?
Int32Array-alloc 3.8372+-0.2235 ? 3.8774+-0.0956 ? might be 1.0105x slower
Int32Array-Int8Array-view-alloc 12.1201+-0.1684 ? 12.3045+-0.1706 ? might be 1.0152x slower
int52-spill 9.9256+-0.3405 9.9147+-0.3545
Int8Array-alloc-long-lived 62.3925+-1.1408 62.3152+-0.7745
Int8Array-load-with-byteLength 4.3621+-0.1091 ? 4.3680+-0.0908 ?
Int8Array-load 4.4528+-0.0838 4.4133+-0.1046
integer-divide 13.1667+-0.0904 ? 13.3992+-0.2979 ? might be 1.0177x slower
integer-modulo 2.1183+-0.0841 ? 2.2255+-0.1483 ? might be 1.0506x slower
large-int-captured 10.0171+-0.2873 9.9995+-0.3409
large-int-neg 21.6580+-0.1265 ? 21.7803+-0.2320 ?
large-int 19.3956+-0.2592 19.2210+-0.0661
logical-not 5.6769+-0.3904 5.6284+-0.3489
lots-of-fields 13.7144+-0.1842 13.5135+-0.2248 might be 1.0149x faster
make-indexed-storage 3.9658+-0.1178 3.9002+-0.7003 might be 1.0168x faster
make-rope-cse 5.2202+-0.4085 ? 5.2643+-0.2979 ?
marsaglia-larger-ints 46.1108+-0.7206 ? 47.4937+-0.9570 ? might be 1.0300x slower
marsaglia-osr-entry 27.4160+-0.6232 ? 27.5671+-0.5558 ?
marsaglia 210.9629+-0.5117 ^ 207.3033+-2.1066 ^ definitely 1.0177x faster
method-on-number 26.4905+-0.7609 25.5056+-1.7741 might be 1.0386x faster
negative-zero-divide 0.4698+-0.1022 0.4673+-0.0894
negative-zero-modulo 0.4377+-0.1093 0.4305+-0.0910 might be 1.0167x faster
negative-zero-negate 0.4025+-0.1070 ? 0.4080+-0.0913 ? might be 1.0135x slower
nested-function-parsing-random 301.1487+-2.1821 300.3632+-0.9776
nested-function-parsing 39.9020+-0.2051 ? 39.9585+-0.3514 ?
new-array-buffer-dead 3.7346+-0.1984 3.7170+-0.1445
new-array-buffer-push 9.1117+-0.1384 ? 9.1372+-0.2732 ?
new-array-dead 14.0268+-0.4881 ? 14.3607+-0.8179 ? might be 1.0238x slower
new-array-push 9.1339+-0.2415 ? 9.3528+-0.3447 ? might be 1.0240x slower
number-test 3.7357+-0.1061 ? 3.7403+-0.0705 ?
object-closure-call 12.6068+-0.1987 ? 12.7498+-0.4367 ? might be 1.0113x slower
object-test 3.9830+-0.0715 ? 4.0425+-0.1428 ? might be 1.0149x slower
poly-stricteq 62.4723+-0.8916 ? 62.7257+-0.7026 ?
polymorphic-structure 21.9268+-0.7588 21.6974+-0.7102 might be 1.0106x faster
polyvariant-monomorphic-get-by-id 13.6483+-0.2355 13.5955+-0.1373
proto-custom-getter 133.1962+-16.8142 132.7313+-16.5796
proto-getter-access 227.3693+-6.8025 ^ 217.8034+-1.3047 ^ definitely 1.0439x faster
put-by-id 20.1414+-0.6659 ? 20.2505+-1.0478 ?
put-by-val-large-index-blank-indexing-type
9.4760+-0.5259 ? 9.6957+-0.2401 ? might be 1.0232x slower
put-by-val-machine-int 3.3298+-0.1990 3.2427+-0.0576 might be 1.0269x faster
rare-osr-exit-on-local 18.6348+-0.1211 ? 18.7665+-0.2130 ?
register-pressure-from-osr 27.0938+-0.1926 ? 27.2749+-0.3873 ?
simple-activation-demo 29.2580+-0.3261 ? 29.3693+-0.3626 ?
simple-custom-getter 421.0762+-53.7979 403.3615+-0.5706 might be 1.0439x faster
simple-getter-access 368.7764+-19.8782 362.1436+-2.8281 might be 1.0183x faster
slow-array-profile-convergence 3.6751+-0.1410 3.5984+-0.1838 might be 1.0213x faster
slow-convergence 3.9651+-0.1366 3.9613+-0.0946
sparse-conditional 1.3184+-0.0939 ? 1.3583+-0.1077 ? might be 1.0303x slower
splice-to-remove 66.1035+-0.9615 65.6595+-1.1901
string-concat-object 2.5766+-0.3511 ? 2.6387+-0.3520 ? might be 1.0241x slower
string-concat-pair-object 2.6620+-0.3663 2.6422+-0.4384
string-concat-pair-simple 17.5139+-0.4694 17.2263+-0.3437 might be 1.0167x faster
string-concat-simple 17.4609+-0.4479 ? 18.1913+-0.3308 ? might be 1.0418x slower
string-cons-repeat 10.5253+-0.7336 ? 10.5534+-0.5530 ?
string-cons-tower 9.7528+-0.4091 ? 9.9203+-0.4579 ? might be 1.0172x slower
string-equality 37.6262+-0.1818 ? 37.7261+-0.1249 ?
string-get-by-val-big-char 11.3722+-0.4650 ? 11.8005+-0.7460 ? might be 1.0377x slower
string-get-by-val-out-of-bounds-insane 5.0512+-0.0992 4.9734+-0.1291 might be 1.0156x faster
string-get-by-val-out-of-bounds 6.5215+-0.1440 ? 6.6100+-0.1173 ? might be 1.0136x slower
string-get-by-val 5.0388+-0.0856 ? 5.0486+-0.1427 ?
string-hash 2.5420+-0.1012 ? 2.5987+-0.0479 ? might be 1.0223x slower
string-long-ident-equality 32.7964+-0.1151 ? 32.8896+-0.2113 ?
string-repeat-arith 41.1520+-0.7220 41.0845+-0.5108
string-sub 89.2808+-2.1657 89.0712+-1.5210
string-test 3.6652+-0.0782 ? 3.7183+-0.0250 ? might be 1.0145x slower
string-var-equality 60.3195+-0.2586 ? 60.6271+-0.5442 ?
structure-hoist-over-transitions 3.1974+-0.2557 3.0477+-0.0294 might be 1.0491x faster
switch-char-constant 3.8238+-0.1337 3.7599+-0.1680 might be 1.0170x faster
switch-char 7.8156+-0.0690 7.8132+-0.0560
switch-constant 10.3112+-0.5108 10.2402+-0.1848
switch-string-basic-big-var 22.6658+-3.5093 17.8386+-2.4030 might be 1.2706x faster
switch-string-basic-big 16.1365+-0.2631 15.8967+-0.4139 might be 1.0151x faster
switch-string-basic-var 17.1342+-0.2899 ? 17.1992+-0.0653 ?
switch-string-basic 16.2591+-0.5695 15.8922+-0.7226 might be 1.0231x faster
switch-string-big-length-tower-var 23.9203+-0.3912 23.6482+-0.3874 might be 1.0115x faster
switch-string-length-tower-var 18.6015+-0.1420 18.4152+-0.1168 might be 1.0101x faster
switch-string-length-tower 13.9503+-0.1089 13.8438+-0.2570
switch-string-short 13.8185+-0.5425 ? 13.9291+-0.0792 ?
switch 13.7580+-0.2375 ? 13.8488+-0.1840 ?
tear-off-arguments-simple 2.1516+-0.1496 2.1297+-0.0903 might be 1.0103x faster
tear-off-arguments 3.2352+-0.0587 ? 3.2772+-0.1200 ? might be 1.0130x slower
temporal-structure 14.6273+-0.3378 14.5380+-0.2677
to-int32-boolean 17.9552+-0.1929 ? 18.0258+-0.2957 ?
undefined-test 3.9330+-0.0830 3.8920+-0.1163 might be 1.0105x faster
unprofiled-licm 26.7991+-0.7292 ? 27.0993+-0.8494 ? might be 1.0112x slower
weird-inlining-const-prop 2.8959+-0.1252 ? 2.9170+-0.2999 ?
<arithmetic> 50.2027+-0.3704 49.9849+-0.0664 might be 1.0044x faster
<geometric> * 12.3404+-0.0293 12.3346+-0.0588 might be 1.0005x faster
<harmonic> 4.9544+-0.1277 4.9511+-0.0840 might be 1.0007x faster
Baseline FTL Stack Check
AsmBench:
bigfib.cpp 1031.8628+-7.8247 ! 1061.1060+-12.8256 ! definitely 1.0283x slower
cray.c 49.6539+-0.6737 ? 49.9253+-0.7420 ?
dry.c 738.8666+-89.5839 ? 764.1810+-77.0440 ? might be 1.0343x slower
FloatMM.c 1461.4986+-4.9715 1459.9265+-4.4853
gcc-loops.cpp 1828.9721+-4.3339 ^ 1814.6080+-1.8607 ^ definitely 1.0079x faster
n-body.c 2542.0338+-6.9434 ? 2543.4285+-6.7589 ?
Quicksort.c 71.9217+-1.6652 ? 72.0892+-0.3932 ?
stepanov_container.cpp 7584.4573+-50.1951 ? 7644.5823+-82.0788 ?
Towers.c 63.3533+-1.4323 ? 64.0089+-0.1556 ? might be 1.0103x slower
<arithmetic> 1708.0689+-6.4662 ! 1719.3173+-4.0404 ! definitely 1.0066x slower
<geometric> * 591.5525+-7.4521 ? 596.8280+-7.3445 ? might be 1.0089x slower
<harmonic> 166.9218+-1.2083 ? 168.0995+-1.6352 ? might be 1.0071x slower
Baseline FTL Stack Check
All benchmarks:
<arithmetic> 169.1756+-0.2402 ? 169.4452+-0.2985 ? might be 1.0016x slower
<geometric> 19.7543+-0.0484 ? 19.7558+-0.0686 ? might be 1.0001x slower
<harmonic> 4.4359+-0.0840 4.4249+-0.0512 might be 1.0025x faster
Baseline FTL Stack Check
Geomean of preferred means:
<scaled-result> 65.9217+-0.2479 ? 66.0534+-0.2323 ? might be 1.0020x slower
Committed r164069: <http://trac.webkit.org/changeset/164069> Comment on attachment 224025 [details] Patch Cleared review? from attachment 224025 [details] so that this bug does not appear in http://webkit.org/pending-review. If you would like this patch reviewed, please attach it to a new bug (or re-open this bug before marking it for review again). |