RESOLVED FIXED 128561
Change FTL stack check to use VM's stackLimit
https://bugs.webkit.org/show_bug.cgi?id=128561
Summary Change FTL stack check to use VM's stackLimit
Michael Saboff
Reported 2014-02-10 16:20:21 PST
We need to change the FTL stack check to use VM::stackLimit and if the limit has been exceeded, throw an exception.
Attachments
Patch (7.30 KB, patch)
2014-02-12 16:26 PST, Michael Saboff
no flags
Michael Saboff
Comment 1 2014-02-12 16:26:33 PST
Michael Saboff
Comment 2 2014-02-13 15:17:50 PST
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
Michael Saboff
Comment 3 2014-02-13 15:30:10 PST
Csaba Osztrogonác
Comment 4 2014-06-04 00:49:37 PDT
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).
Note You need to log in before you can comment on or make changes to this bug.