WebKit Bugzilla
New
Browse
Log In
×
Sign in with GitHub
or
Remember my login
Create Account
·
Forgot Password
Forgotten password account recovery
RESOLVED FIXED
143858
Inline JSFunction allocation in DFG
https://bugs.webkit.org/show_bug.cgi?id=143858
Summary
Inline JSFunction allocation in DFG
Basile Clement
Reported
2015-04-16 18:01:15 PDT
Created
attachment 250985
[details]
Tentative patch Followup to
https://bugs.webkit.org/show_bug.cgi?id=143851
for the DFG.
Attachments
Tentative patch
(2.44 KB, patch)
2015-04-16 18:01 PDT
,
Basile Clement
no flags
Details
Formatted Diff
Diff
Patch w/ ChangeLog
(3.19 KB, patch)
2015-04-17 10:29 PDT
,
Basile Clement
no flags
Details
Formatted Diff
Diff
Show Obsolete
(1)
View All
Add attachment
proposed patch, testcase, etc.
Basile Clement
Comment 1
2015-04-17 10:20:18 PDT
Benchmark report for SunSpider, LongSpider, V8Spider, Octane, Kraken, JSRegress, AsmBench, and CompressionBench on Basiles-MacBook-Pro (MacBookPro11,3). VMs tested: "Conf#1" at /Volumes/Data/Baseline/OpenSource/WebKitBuild/Release/jsc (
r182938
) "Conf#2" at /Volumes/Data/Temp/OpenSource/WebKitBuild/Release/jsc (
r182938
) Collected 6 samples per benchmark/VM, with 6 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. Conf#1 Conf#2 SunSpider: 3d-cube 4.9959+-1.0943 4.5124+-0.3419 might be 1.1072x faster 3d-morph 5.2896+-0.1253 ? 5.5912+-0.4096 ? might be 1.0570x slower 3d-raytrace 5.6804+-0.7837 5.3744+-0.2644 might be 1.0569x faster access-binary-trees 2.3889+-0.2820 2.0644+-0.0940 might be 1.1572x faster access-fannkuch 5.2269+-0.1094 5.1610+-0.2040 might be 1.0128x faster access-nbody 2.6330+-0.2659 2.5464+-0.1158 might be 1.0340x faster access-nsieve 3.1600+-0.1655 3.0329+-0.1084 might be 1.0419x faster bitops-3bit-bits-in-byte 1.4294+-0.0731 1.3934+-0.0488 might be 1.0258x faster bitops-bits-in-byte 3.1659+-0.1006 ? 3.1810+-0.1432 ? bitops-bitwise-and 2.0442+-0.0936 2.0292+-0.0776 bitops-nsieve-bits 3.2815+-0.0326 ! 3.5539+-0.2219 ! definitely 1.0830x slower controlflow-recursive 1.9012+-0.1095 ? 1.9777+-0.1799 ? might be 1.0403x slower crypto-aes 3.6364+-0.1368 ? 3.6557+-0.1318 ? crypto-md5 2.1826+-0.0942 2.1824+-0.1327 crypto-sha1 2.3062+-0.1187 ? 2.4701+-0.4510 ? might be 1.0711x slower date-format-tofte 7.3141+-0.3188 7.1736+-0.6365 might be 1.0196x faster date-format-xparb 5.0319+-0.4031 ? 5.1616+-0.5751 ? might be 1.0258x slower math-cordic 2.8018+-0.1322 ? 2.8422+-0.2522 ? might be 1.0144x slower math-partial-sums 4.4148+-0.0872 ? 4.5905+-0.2784 ? might be 1.0398x slower math-spectral-norm 1.6789+-0.0357 ? 1.7437+-0.1066 ? might be 1.0386x slower regexp-dna 6.9235+-0.8635 ? 6.9364+-0.5593 ? string-base64 4.7501+-0.4464 4.2692+-0.2192 might be 1.1126x faster string-fasta 6.0972+-0.5221 5.8739+-0.1284 might be 1.0380x faster string-tagcloud 8.7937+-0.1796 ? 8.8888+-0.3218 ? might be 1.0108x slower string-unpack-code 19.0987+-0.3902 18.8024+-0.6295 might be 1.0158x faster string-validate-input 4.4462+-0.2745 4.3289+-0.1446 might be 1.0271x faster <arithmetic> 4.6413+-0.1010 4.5899+-0.1018 might be 1.0112x faster Conf#1 Conf#2 LongSpider: 3d-cube 814.9658+-35.5485 ? 820.8931+-21.0294 ? 3d-morph 1563.4983+-13.4850 1555.9656+-8.7326 3d-raytrace 687.1178+-9.7529 682.3220+-5.1255 access-binary-trees 867.9478+-11.7785 866.2981+-5.8212 access-fannkuch 277.5400+-8.1595 274.7520+-8.0463 might be 1.0101x faster access-nbody 567.7792+-5.3760 565.3801+-9.1432 access-nsieve 662.1027+-11.9306 ? 663.1873+-8.7271 ? bitops-3bit-bits-in-byte 42.1237+-1.7640 41.8837+-1.4233 bitops-bits-in-byte 87.7118+-5.4453 ? 88.8779+-5.8104 ? might be 1.0133x slower bitops-nsieve-bits 719.2142+-67.6014 692.2164+-6.6668 might be 1.0390x faster controlflow-recursive 470.4679+-10.2026 462.5347+-1.9931 might be 1.0172x faster crypto-aes 583.9785+-12.7937 570.8741+-14.9440 might be 1.0230x faster crypto-md5 547.5059+-8.8702 545.0249+-9.0164 crypto-sha1 589.0832+-13.1413 ? 589.3488+-10.9312 ? date-format-tofte 539.9091+-15.1063 531.3645+-8.0444 might be 1.0161x faster date-format-xparb 655.0319+-6.6611 ? 657.1007+-8.4559 ? math-cordic 516.1988+-9.6779 ? 522.3811+-4.2828 ? might be 1.0120x slower math-partial-sums 432.9983+-6.0896 428.1901+-2.0555 might be 1.0112x faster math-spectral-norm 579.3654+-11.0570 573.8969+-6.3475 string-base64 339.5532+-10.1421 330.9329+-4.1886 might be 1.0260x faster string-fasta 386.1998+-8.8406 ? 388.2018+-7.8888 ? string-tagcloud 205.5671+-3.1263 202.7137+-3.1464 might be 1.0141x faster <geometric> 449.4536+-2.3169 446.4981+-2.5724 might be 1.0066x faster Conf#1 Conf#2 V8Spider: crypto 52.0699+-1.9914 ? 52.6208+-2.8707 ? might be 1.0106x slower deltablue 85.0733+-3.1081 ? 87.5578+-3.1808 ? might be 1.0292x slower earley-boyer 42.4062+-3.1543 41.4572+-1.7890 might be 1.0229x faster raytrace 33.1370+-2.3627 32.5623+-1.6384 might be 1.0176x faster regexp 60.3775+-1.7138 59.0704+-4.3206 might be 1.0221x faster richards 75.3837+-2.8853 ? 76.0578+-2.9865 ? splay 37.5921+-3.5846 ? 39.0054+-3.6105 ? might be 1.0376x slower <geometric> 52.2070+-1.2935 ? 52.3847+-1.5781 ? might be 1.0034x slower Conf#1 Conf#2 Octane: encrypt 0.20215+-0.00281 ? 0.20261+-0.00190 ? decrypt 3.64000+-0.12462 ? 3.76278+-0.14353 ? might be 1.0337x slower deltablue x2 0.16505+-0.00106 ? 0.16628+-0.00297 ? earley 0.45595+-0.00439 0.45479+-0.00473 boyer 5.86616+-0.13465 ? 5.94551+-0.25043 ? might be 1.0135x slower navier-stokes x2 5.25974+-0.04696 5.24121+-0.04207 raytrace x2 1.05549+-0.04584 1.04902+-0.04326 richards x2 0.09646+-0.00194 ? 0.09758+-0.00282 ? might be 1.0116x slower splay x2 0.36449+-0.00649 0.35870+-0.00442 might be 1.0161x faster regexp x2 28.95485+-0.95644 ? 29.06090+-0.83433 ? pdfjs x2 40.02296+-0.48642 ^ 39.15889+-0.26613 ^ definitely 1.0221x faster mandreel x2 47.62958+-0.76722 47.61555+-0.58358 gbemu x2 32.86900+-1.89399 32.83267+-0.36603 closure 0.50917+-0.00793 ? 0.51385+-0.00913 ? jquery 6.32279+-0.06921 6.30363+-0.05111 box2d x2 10.62778+-0.08670 ? 10.64648+-0.09869 ? zlib x2 358.51485+-23.15951 ? 367.68956+-18.64479 ? might be 1.0256x slower typescript x2 681.14339+-10.77823 ? 700.81665+-63.70939 ? might be 1.0289x slower <geometric> 5.91544+-0.03468 ? 5.93677+-0.02523 ? might be 1.0036x slower Conf#1 Conf#2 Kraken: ai-astar 282.343+-11.923 282.302+-9.452 audio-beat-detection 99.705+-1.519 98.522+-0.627 might be 1.0120x faster audio-dft 171.697+-3.355 169.609+-5.700 might be 1.0123x faster audio-fft 82.062+-1.852 80.932+-2.660 might be 1.0140x faster audio-oscillator 183.845+-2.334 183.654+-4.232 imaging-darkroom 97.082+-1.455 ? 97.527+-1.439 ? imaging-desaturate 60.170+-3.606 59.289+-4.217 might be 1.0149x faster imaging-gaussian-blur 90.392+-1.514 ? 90.984+-1.528 ? json-parse-financial 38.776+-2.165 ? 39.975+-1.258 ? might be 1.0309x slower json-stringify-tinderbox 52.582+-1.626 ? 53.972+-1.793 ? might be 1.0264x slower stanford-crypto-aes 60.680+-2.109 60.305+-0.534 stanford-crypto-ccm 50.788+-4.375 ? 53.100+-4.876 ? might be 1.0455x slower stanford-crypto-pbkdf2 153.815+-2.158 ? 156.204+-5.667 ? might be 1.0155x slower stanford-crypto-sha256-iterative 51.530+-2.471 ? 51.927+-2.156 ? <arithmetic> 105.391+-0.444 ? 105.593+-0.944 ? might be 1.0019x slower Conf#1 Conf#2 JSRegress: abs-boolean 2.4668+-0.1332 2.3853+-0.0350 might be 1.0342x faster adapt-to-double-divide 16.3211+-0.1352 ? 16.4358+-0.2166 ? aliased-arguments-getbyval 1.1725+-0.1188 ? 1.2913+-0.1876 ? might be 1.1013x slower allocate-big-object 2.5576+-0.2031 ? 2.6613+-0.3331 ? might be 1.0406x slower arguments-named-and-reflective 11.8490+-1.1292 ? 12.0099+-0.7791 ? might be 1.0136x slower arguments-out-of-bounds 10.9899+-0.4188 10.8677+-0.4336 might be 1.0112x faster arguments-strict-mode 11.0015+-0.9199 10.2822+-0.6179 might be 1.0700x faster arguments 9.2372+-0.4147 9.2065+-0.6977 arity-mismatch-inlining 0.7919+-0.0508 ? 0.8375+-0.0430 ? might be 1.0576x slower array-access-polymorphic-structure 6.8670+-1.2782 6.1796+-0.4352 might be 1.1112x faster array-nonarray-polymorhpic-access 29.3447+-0.8676 ? 29.4056+-1.4663 ? array-prototype-every 82.1355+-2.8574 ? 83.5689+-1.1903 ? might be 1.0175x slower array-prototype-forEach 80.7449+-1.9082 80.3092+-2.1939 array-prototype-map 90.6488+-3.6431 89.6093+-2.9590 might be 1.0116x faster array-prototype-some 81.9708+-2.0286 ? 82.5007+-1.5549 ? array-splice-contiguous 44.7777+-1.7169 ^ 41.0019+-1.2845 ^ definitely 1.0921x faster array-with-double-add 3.3574+-0.0823 ? 3.6639+-0.4627 ? might be 1.0913x slower array-with-double-increment 3.6660+-1.2023 3.1916+-0.1531 might be 1.1487x faster array-with-double-mul-add 4.2867+-0.1949 4.1980+-0.1219 might be 1.0211x faster array-with-double-sum 3.1760+-0.1109 ? 3.1889+-0.1375 ? array-with-int32-add-sub 5.7072+-0.2038 ? 5.9279+-0.2046 ? might be 1.0387x slower array-with-int32-or-double-sum 3.2356+-0.0787 3.1990+-0.0475 might be 1.0114x faster ArrayBuffer-DataView-alloc-large-long-lived 29.7510+-3.6856 ? 31.3477+-3.6773 ? might be 1.0537x slower ArrayBuffer-DataView-alloc-long-lived 12.4989+-0.3995 ? 12.5953+-0.3090 ? ArrayBuffer-Int32Array-byteOffset 3.6076+-0.0780 ? 3.7572+-0.1860 ? might be 1.0415x slower ArrayBuffer-Int8Array-alloc-large-long-lived 30.6820+-1.9492 ? 30.8117+-2.9593 ? ArrayBuffer-Int8Array-alloc-long-lived-buffer 25.4908+-8.7280 23.4365+-3.0945 might be 1.0877x faster ArrayBuffer-Int8Array-alloc-long-lived 12.5179+-0.5624 ? 12.6110+-1.5500 ? ArrayBuffer-Int8Array-alloc 11.5504+-2.0182 10.3855+-0.4550 might be 1.1122x faster asmjs_bool_bug 6.7031+-0.2497 ? 6.9381+-0.2592 ? might be 1.0351x slower assign-custom-setter-polymorphic 2.5368+-0.1468 ? 2.6702+-0.2503 ? might be 1.0526x slower assign-custom-setter 3.6125+-0.1824 3.3782+-0.0557 might be 1.0694x faster basic-set 8.1740+-0.8082 7.7524+-0.4143 might be 1.0544x faster big-int-mul 3.4808+-0.1501 ? 3.7066+-0.5298 ? might be 1.0649x slower boolean-test 2.9441+-0.2422 2.9398+-0.3030 branch-fold 3.5598+-0.0958 ? 3.6414+-0.1112 ? might be 1.0229x slower by-val-generic 7.5972+-0.2822 ? 7.9903+-0.7615 ? might be 1.0517x slower call-spread-apply 27.9915+-1.2961 27.5776+-0.8085 might be 1.0150x faster call-spread-call 22.7258+-0.7036 22.3523+-1.0970 might be 1.0167x faster captured-assignments 0.4281+-0.1507 ? 0.4463+-0.1590 ? might be 1.0424x slower cast-int-to-double 4.8151+-0.2081 ? 4.8556+-0.1301 ? cell-argument 6.7994+-0.3358 6.5558+-0.4030 might be 1.0372x faster cfg-simplify 2.8358+-0.0555 ? 3.0753+-0.2769 ? might be 1.0844x slower chain-getter-access 9.2125+-0.1285 ? 9.3449+-0.3410 ? might be 1.0144x slower cmpeq-obj-to-obj-other 11.4578+-1.3107 ? 12.0881+-1.1718 ? might be 1.0550x slower constant-test 4.5437+-0.0957 ? 4.5610+-0.0693 ? create-lots-of-functions 18.9871+-2.4324 ^ 9.4279+-0.3988 ^ definitely 2.0139x faster DataView-custom-properties 34.7858+-3.0273 ? 37.4008+-2.8519 ? might be 1.0752x slower deconstructing-parameters-overridden-by-function 0.4787+-0.0384 0.4319+-0.0300 might be 1.1084x faster delay-tear-off-arguments-strictmode 12.7622+-0.4320 12.7586+-0.4392 deltablue-varargs 150.5197+-4.3720 150.0357+-3.4012 destructuring-arguments 14.3396+-1.2756 14.2848+-1.1279 destructuring-swap 4.6907+-0.0774 ? 4.7334+-0.1099 ? direct-arguments-getbyval 1.2965+-0.1783 1.1982+-0.0820 might be 1.0821x faster div-boolean-double 5.4027+-0.0738 ? 5.5210+-0.1080 ? might be 1.0219x slower div-boolean 8.4338+-0.1787 8.3501+-0.1575 might be 1.0100x faster double-get-by-val-out-of-bounds 4.7163+-1.6757 4.5033+-0.2876 might be 1.0473x faster double-pollution-getbyval 9.0106+-0.2585 ? 9.0570+-0.3545 ? double-pollution-putbyoffset 4.0502+-0.2192 ? 4.3794+-0.5950 ? might be 1.0813x slower double-to-int32-typed-array-no-inline 2.0074+-0.0674 1.9854+-0.0354 might be 1.0111x faster double-to-int32-typed-array 1.8806+-0.2769 1.7089+-0.0866 might be 1.1005x faster double-to-uint32-typed-array-no-inline 2.1084+-0.2312 ? 2.1415+-0.0864 ? might be 1.0157x slower double-to-uint32-typed-array 1.7812+-0.1284 ? 1.8796+-0.1435 ? might be 1.0552x slower elidable-new-object-dag 35.6639+-1.1049 ? 38.0355+-2.3413 ? might be 1.0665x slower elidable-new-object-roflcopter 39.8967+-3.8518 39.4917+-1.8026 might be 1.0103x faster elidable-new-object-then-call 32.6295+-2.2179 32.0458+-2.4875 might be 1.0182x faster elidable-new-object-tree 38.3145+-1.0792 ? 38.7646+-2.4680 ? might be 1.0117x slower empty-string-plus-int 4.9624+-0.3341 4.8513+-0.1919 might be 1.0229x faster emscripten-cube2hash 28.7755+-0.7462 28.1398+-1.8905 might be 1.0226x faster exit-length-on-plain-object 13.4777+-1.4377 12.8354+-0.2627 might be 1.0500x faster external-arguments-getbyval 1.2004+-0.0600 1.1799+-0.0501 might be 1.0174x faster external-arguments-putbyval 2.1657+-0.1958 ? 2.2706+-0.3248 ? might be 1.0484x slower fixed-typed-array-storage-var-index 1.2061+-0.0739 ? 1.2522+-0.1083 ? might be 1.0382x slower fixed-typed-array-storage 0.8795+-0.1309 0.8287+-0.1225 might be 1.0614x faster Float32Array-matrix-mult 3.9055+-0.1853 ? 3.9605+-0.2335 ? might be 1.0141x slower Float32Array-to-Float64Array-set 48.8589+-1.4917 ? 50.9688+-2.5583 ? might be 1.0432x slower Float64Array-alloc-long-lived 67.1545+-4.7694 ? 67.1813+-3.7122 ? Float64Array-to-Int16Array-set 63.4022+-1.9848 ^ 59.0587+-1.4005 ^ definitely 1.0735x faster fold-double-to-int 12.8688+-0.3479 12.8200+-0.3800 fold-get-by-id-to-multi-get-by-offset-rare-int 9.5999+-0.4841 ? 10.0028+-0.4263 ? might be 1.0420x slower fold-get-by-id-to-multi-get-by-offset 7.6132+-0.2588 ? 7.7948+-1.0497 ? might be 1.0239x slower fold-multi-get-by-offset-to-get-by-offset 7.2808+-1.5504 ? 7.4327+-0.9815 ? might be 1.0209x slower fold-multi-get-by-offset-to-poly-get-by-offset 7.2904+-0.6992 7.0988+-0.9597 might be 1.0270x faster fold-multi-put-by-offset-to-poly-put-by-offset 7.4683+-0.7553 ? 7.8783+-0.4889 ? might be 1.0549x slower fold-multi-put-by-offset-to-put-by-offset 4.3874+-0.2591 ? 4.4310+-0.6222 ? fold-multi-put-by-offset-to-replace-or-transition-put-by-offset 8.7172+-0.6185 ? 8.7418+-0.9197 ? fold-put-by-id-to-multi-put-by-offset 8.1610+-0.3644 ? 8.3720+-0.3962 ? might be 1.0259x slower fold-put-structure 3.8477+-0.4701 ? 4.0723+-0.7086 ? might be 1.0584x slower for-of-iterate-array-entries 4.4391+-0.2826 ? 4.4700+-0.5935 ? for-of-iterate-array-keys 3.4400+-0.2667 3.3213+-0.1120 might be 1.0357x faster for-of-iterate-array-values 3.7982+-0.6670 3.5573+-0.2183 might be 1.0677x faster fround 18.1334+-0.9611 ? 18.2797+-0.6526 ? ftl-library-inlining-dataview 59.9689+-1.6186 ? 60.8255+-1.9721 ? might be 1.0143x slower ftl-library-inlining 113.9421+-1.7700 111.8659+-2.5664 might be 1.0186x faster function-dot-apply 2.0202+-0.0483 ? 2.0903+-0.1635 ? might be 1.0347x slower function-test 3.1288+-0.3999 2.8917+-0.0918 might be 1.0820x faster function-with-eval 98.1442+-4.3029 97.8414+-4.0672 gcse-poly-get-less-obvious 15.1523+-0.8459 ? 16.8424+-5.6518 ? might be 1.1115x slower gcse-poly-get 16.8250+-0.7081 ? 17.0660+-0.9448 ? might be 1.0143x slower gcse 3.8459+-0.1737 ? 4.0239+-0.2868 ? might be 1.0463x slower get-by-id-bimorphic-check-structure-elimination-simple 2.7905+-0.5311 2.7018+-0.1651 might be 1.0328x faster get-by-id-bimorphic-check-structure-elimination 5.9204+-0.3100 5.8412+-0.2026 might be 1.0136x faster get-by-id-chain-from-try-block 6.6598+-0.2080 6.5416+-0.1412 might be 1.0181x faster get-by-id-check-structure-elimination 4.3881+-0.0514 ? 4.7001+-0.3612 ? might be 1.0711x slower get-by-id-proto-or-self 14.4138+-0.5182 ? 14.7461+-0.4156 ? might be 1.0231x slower get-by-id-quadmorphic-check-structure-elimination-simple 2.9945+-0.1863 2.9040+-0.0579 might be 1.0312x faster get-by-id-self-or-proto 15.3785+-1.1720 15.0958+-0.7749 might be 1.0187x faster get-by-val-out-of-bounds 3.9423+-0.2244 3.9283+-0.0965 get_callee_monomorphic 3.3409+-0.2732 ^ 2.3333+-0.1429 ^ definitely 1.4318x faster get_callee_polymorphic 3.5182+-0.2762 3.3888+-0.3014 might be 1.0382x faster getter-no-activation 5.0501+-0.3046 4.9400+-0.2223 might be 1.0223x faster getter-richards 111.0585+-8.3659 110.0032+-8.4782 getter 5.7444+-1.0180 5.5756+-0.4495 might be 1.0303x faster global-var-const-infer-fire-from-opt 0.9640+-0.2955 0.9090+-0.1284 might be 1.0605x faster global-var-const-infer 0.6953+-0.0261 ? 0.7823+-0.1265 ? might be 1.1252x slower HashMap-put-get-iterate-keys 24.7375+-0.9002 24.6648+-0.9605 HashMap-put-get-iterate 23.5422+-0.4813 ? 24.0427+-0.6303 ? might be 1.0213x slower HashMap-string-put-get-iterate 23.4868+-0.9552 ? 24.3342+-1.5594 ? might be 1.0361x slower hoist-make-rope 8.4914+-0.7527 8.4186+-0.7780 hoist-poly-check-structure-effectful-loop 4.1397+-0.1058 ? 4.3927+-0.5859 ? might be 1.0611x slower hoist-poly-check-structure 3.3464+-0.0943 3.2797+-0.1205 might be 1.0203x faster imul-double-only 7.2931+-1.0207 7.0920+-0.7585 might be 1.0284x faster imul-int-only 8.6156+-0.9070 8.4594+-0.2000 might be 1.0185x faster imul-mixed 6.9741+-0.7017 ? 7.1863+-0.7829 ? might be 1.0304x slower in-four-cases 16.2544+-0.7756 ? 16.8105+-0.9422 ? might be 1.0342x slower in-one-case-false 9.2295+-0.7492 8.7017+-0.3189 might be 1.0607x faster in-one-case-true 9.1511+-0.4971 8.5088+-0.5397 might be 1.0755x faster in-two-cases 9.1864+-0.7800 8.9432+-0.5457 might be 1.0272x faster indexed-properties-in-objects 2.8118+-0.1199 2.8064+-0.0366 infer-closure-const-then-mov-no-inline 3.1728+-0.0390 ? 3.2589+-0.5591 ? might be 1.0272x slower infer-closure-const-then-mov 17.6415+-0.5690 ? 17.9629+-0.5864 ? might be 1.0182x slower infer-closure-const-then-put-to-scope-no-inline 11.8454+-0.2235 ! 13.4003+-1.0767 ! definitely 1.1313x slower infer-closure-const-then-put-to-scope 24.1685+-1.3593 24.0559+-0.5496 infer-closure-const-then-reenter-no-inline 53.4620+-1.4459 53.3250+-2.1983 infer-closure-const-then-reenter 24.9305+-1.1769 ? 25.1358+-1.6713 ? infer-constant-global-property 30.5859+-0.4359 ? 31.5210+-1.5441 ? might be 1.0306x slower infer-constant-property 2.5665+-0.0738 ? 2.6038+-0.1058 ? might be 1.0145x slower infer-one-time-closure-ten-vars 9.1615+-0.6092 8.6546+-0.4356 might be 1.0586x faster infer-one-time-closure-two-vars 8.3731+-0.6564 8.3027+-0.5761 infer-one-time-closure 8.3018+-0.4683 ? 8.4786+-0.6089 ? might be 1.0213x slower infer-one-time-deep-closure 13.3691+-0.7370 13.2638+-0.3695 inline-arguments-access 4.1444+-0.3574 ? 4.4445+-0.7553 ? might be 1.0724x slower inline-arguments-aliased-access 4.1969+-0.4683 3.8310+-0.0893 might be 1.0955x faster inline-arguments-local-escape 4.2596+-0.3941 4.0513+-0.2338 might be 1.0514x faster inline-get-scoped-var 4.6948+-0.1259 ? 4.7699+-0.1926 ? might be 1.0160x slower inlined-put-by-id-transition 10.2990+-0.8483 ? 10.4126+-1.2314 ? might be 1.0110x slower int-or-other-abs-then-get-by-val 4.9539+-0.3030 4.8956+-0.3505 might be 1.0119x faster int-or-other-abs-zero-then-get-by-val 17.3810+-0.9218 16.7992+-1.1303 might be 1.0346x faster int-or-other-add-then-get-by-val 4.1999+-0.2394 4.0674+-0.1666 might be 1.0326x faster int-or-other-add 4.9336+-0.1747 4.8136+-0.0594 might be 1.0249x faster int-or-other-div-then-get-by-val 3.7716+-0.1186 ? 3.8949+-0.2051 ? might be 1.0327x slower int-or-other-max-then-get-by-val 4.0620+-0.2734 3.9160+-0.0493 might be 1.0373x faster int-or-other-min-then-get-by-val 4.0815+-0.1445 ? 4.1863+-0.1235 ? might be 1.0257x slower int-or-other-mod-then-get-by-val 3.5678+-0.2011 3.5035+-0.0917 might be 1.0183x faster int-or-other-mul-then-get-by-val 3.8195+-0.1838 3.7534+-0.1531 might be 1.0176x faster int-or-other-neg-then-get-by-val 4.3376+-0.1156 4.3139+-0.1166 int-or-other-neg-zero-then-get-by-val 16.6921+-0.1146 ^ 16.2137+-0.1689 ^ definitely 1.0295x faster int-or-other-sub-then-get-by-val 3.9800+-0.2144 ? 4.7524+-1.8728 ? might be 1.1941x slower int-or-other-sub 3.4191+-0.1449 3.3846+-0.1649 might be 1.0102x faster int-overflow-local 4.0495+-0.0484 ? 4.2133+-0.1895 ? might be 1.0404x slower Int16Array-alloc-long-lived 47.2445+-2.7421 46.8017+-2.2512 Int16Array-bubble-sort-with-byteLength 18.0255+-1.1212 17.3748+-0.2937 might be 1.0375x faster Int16Array-bubble-sort 17.6534+-0.2822 17.5049+-0.5696 Int16Array-load-int-mul 1.3690+-0.0477 ? 1.3725+-0.0306 ? Int16Array-to-Int32Array-set 46.2663+-2.0618 ? 47.1484+-2.0984 ? might be 1.0191x slower Int32Array-alloc-large 13.4534+-1.8265 12.8026+-1.0375 might be 1.0508x faster Int32Array-alloc-long-lived 52.7792+-2.8926 ? 55.6372+-2.4466 ? might be 1.0541x slower Int32Array-alloc 2.8229+-0.1787 ? 2.9288+-0.0657 ? might be 1.0375x slower Int32Array-Int8Array-view-alloc 6.2201+-0.2202 ? 6.5665+-0.3445 ? might be 1.0557x slower int52-spill 5.9745+-0.2659 5.8482+-0.1474 might be 1.0216x faster Int8Array-alloc-long-lived 42.9179+-1.6254 ? 43.9277+-3.0367 ? might be 1.0235x slower Int8Array-load-with-byteLength 3.3618+-0.0602 ? 3.4237+-0.0846 ? might be 1.0184x slower Int8Array-load 3.4449+-0.1124 3.4062+-0.1054 might be 1.0113x faster integer-divide 11.4934+-0.6796 11.0701+-0.1350 might be 1.0382x faster integer-modulo 1.7074+-0.1674 ? 1.7418+-0.1576 ? might be 1.0201x slower large-int-captured 4.8401+-0.0873 4.4594+-1.2697 might be 1.0854x faster large-int-neg 15.0287+-0.3427 14.8184+-0.4522 might be 1.0142x faster large-int 14.1299+-0.3786 ? 14.8934+-1.1249 ? might be 1.0540x slower logical-not 4.3064+-0.2876 4.2842+-0.1890 lots-of-fields 10.2081+-0.4215 ? 10.5051+-0.7528 ? might be 1.0291x slower make-indexed-storage 2.9184+-0.1320 2.8519+-0.2004 might be 1.0233x faster make-rope-cse 4.3558+-0.6947 4.1919+-0.5485 might be 1.0391x faster marsaglia-larger-ints 34.2370+-1.9631 34.1095+-2.4698 marsaglia-osr-entry 22.0649+-1.3644 ? 22.1575+-1.0296 ? max-boolean 2.6755+-0.1408 2.6515+-0.0298 method-on-number 16.3193+-1.2411 ? 18.3401+-5.6243 ? might be 1.1238x slower min-boolean 2.6875+-0.1590 2.6368+-0.0635 might be 1.0192x faster minus-boolean-double 3.1679+-0.1669 3.0748+-0.0757 might be 1.0303x faster minus-boolean 2.3527+-0.1538 ? 2.3667+-0.2369 ? misc-strict-eq 31.4547+-2.5803 ? 31.7823+-2.8255 ? might be 1.0104x slower mod-boolean-double 11.5057+-0.2237 11.3328+-0.2318 might be 1.0153x faster mod-boolean 8.6504+-0.3998 8.4964+-0.1208 might be 1.0181x faster mul-boolean-double 3.6112+-0.1159 ? 3.7336+-0.3061 ? might be 1.0339x slower mul-boolean 3.0221+-0.4676 2.8547+-0.0833 might be 1.0586x faster neg-boolean 3.0870+-0.0707 ? 3.0907+-0.0956 ? negative-zero-divide 0.2991+-0.0527 0.2958+-0.0207 might be 1.0110x faster negative-zero-modulo 0.3044+-0.0423 ? 0.3237+-0.1024 ? might be 1.0634x slower negative-zero-negate 0.2731+-0.0177 0.2690+-0.0144 might be 1.0151x faster nested-function-parsing 33.9961+-1.8870 33.1041+-0.4931 might be 1.0269x faster new-array-buffer-dead 2.7279+-0.0864 ? 2.8191+-0.1431 ? might be 1.0334x slower new-array-buffer-push 6.0931+-0.2576 ? 6.5243+-0.7204 ? might be 1.0708x slower new-array-dead 9.6477+-0.7117 9.4531+-0.5190 might be 1.0206x faster new-array-push 3.6468+-0.2612 ? 4.1661+-1.2766 ? might be 1.1424x slower no-inline-constructor 106.2667+-3.8801 105.4974+-6.7214 number-test 2.9215+-0.1655 ? 2.9782+-0.4552 ? might be 1.0194x slower object-closure-call 4.8600+-0.0689 ? 4.8656+-0.1040 ? object-test 2.8207+-0.0334 ? 2.9138+-0.0966 ? might be 1.0330x slower obvious-sink-pathology-taken 106.0748+-5.4225 ? 107.1154+-4.3667 ? obvious-sink-pathology 103.4908+-6.7765 ? 105.5759+-5.7620 ? might be 1.0201x slower obviously-elidable-new-object 28.6159+-1.5578 ? 30.6864+-1.9510 ? might be 1.0724x slower plus-boolean-arith 2.3335+-0.0396 2.3100+-0.0501 might be 1.0101x faster plus-boolean-double 3.1731+-0.2469 ? 3.1767+-0.1003 ? plus-boolean 2.4841+-0.0333 ? 2.5883+-0.0937 ? might be 1.0419x slower poly-chain-access-different-prototypes-simple 2.7006+-0.0739 ? 2.7911+-0.1422 ? might be 1.0335x slower poly-chain-access-different-prototypes 2.5861+-0.1904 2.4858+-0.0651 might be 1.0404x faster poly-chain-access-simpler 2.7908+-0.0764 2.6846+-0.0739 might be 1.0396x faster poly-chain-access 2.6027+-0.2383 2.4792+-0.0455 might be 1.0498x faster poly-stricteq 48.3227+-1.1871 ? 48.4513+-0.2904 ? polymorphic-array-call 1.4972+-0.8277 1.0922+-0.1557 might be 1.3708x faster polymorphic-get-by-id 3.1423+-0.5753 2.8631+-0.1227 might be 1.0975x faster polymorphic-put-by-id 25.1194+-1.2878 ? 25.7991+-1.5669 ? might be 1.0271x slower polymorphic-structure 13.6026+-0.3682 13.5074+-0.5880 polyvariant-monomorphic-get-by-id 6.9258+-0.8485 6.6697+-0.7180 might be 1.0384x faster proto-getter-access 9.1963+-0.1433 ? 9.2290+-0.1840 ? put-by-id-replace-and-transition 8.5133+-1.1741 ? 8.9386+-1.4428 ? might be 1.0500x slower put-by-id-slightly-polymorphic 2.6300+-0.1727 2.5977+-0.0874 might be 1.0124x faster put-by-id 10.3231+-1.1299 ? 10.5591+-1.3013 ? might be 1.0229x slower put-by-val-direct 0.3752+-0.0087 ? 0.4081+-0.0509 ? might be 1.0875x slower put-by-val-large-index-blank-indexing-type 5.9140+-0.5136 5.5265+-0.1620 might be 1.0701x faster put-by-val-machine-int 2.4490+-0.1365 ? 2.4705+-0.1202 ? rare-osr-exit-on-local 15.0119+-0.2616 15.0057+-0.3264 register-pressure-from-osr 17.5838+-0.6505 17.4080+-0.2564 might be 1.0101x faster setter 5.5918+-0.2765 ? 5.7062+-0.1645 ? might be 1.0205x slower simple-activation-demo 25.4814+-0.8538 25.0960+-0.3436 might be 1.0154x faster simple-getter-access 12.3177+-0.3012 ? 12.5297+-0.4648 ? might be 1.0172x slower simple-poly-call-nested 9.5285+-0.7382 ? 9.5358+-0.2499 ? simple-poly-call 1.1591+-0.0473 ? 1.2340+-0.1303 ? might be 1.0646x slower sin-boolean 19.4921+-2.1655 19.2417+-1.8804 might be 1.0130x faster singleton-scope 64.5220+-2.2685 63.6473+-1.2471 might be 1.0137x faster sinkable-new-object-dag 59.8290+-1.1883 ? 62.0542+-3.9128 ? might be 1.0372x slower sinkable-new-object-taken 47.9864+-2.8343 45.2465+-1.4543 might be 1.0606x faster sinkable-new-object 33.0988+-2.6862 32.1648+-4.0545 might be 1.0290x faster slow-array-profile-convergence 2.6935+-0.1626 2.6027+-0.2330 might be 1.0349x faster slow-convergence 2.3252+-0.0506 ? 2.4869+-0.3490 ? might be 1.0696x slower sorting-benchmark 20.0013+-0.8926 ? 20.1990+-0.7600 ? sparse-conditional 1.0628+-0.0300 ? 1.1469+-0.2288 ? might be 1.0791x slower splice-to-remove 14.3302+-1.0868 14.3285+-0.9879 string-char-code-at 15.7769+-1.6197 ? 16.6093+-2.7293 ? might be 1.0528x slower string-concat-object 2.2705+-0.1394 ? 2.3042+-0.1312 ? might be 1.0148x slower string-concat-pair-object 2.3495+-0.1112 2.3284+-0.1906 string-concat-pair-simple 9.6535+-0.3444 ? 10.6891+-1.4415 ? might be 1.1073x slower string-concat-simple 11.3765+-4.0999 10.0580+-1.0295 might be 1.1311x faster string-cons-repeat 7.6605+-1.4462 6.8124+-0.3899 might be 1.1245x faster string-cons-tower 7.0252+-1.0848 6.6197+-0.0549 might be 1.0613x faster string-equality 16.3884+-0.4736 16.1422+-0.4107 might be 1.0153x faster string-get-by-val-big-char 6.6145+-0.2904 ? 7.1774+-0.7466 ? might be 1.0851x slower string-get-by-val-out-of-bounds-insane 3.1566+-0.1479 ? 3.3575+-0.2206 ? might be 1.0637x slower string-get-by-val-out-of-bounds 4.2391+-0.4059 ? 4.3004+-0.5227 ? might be 1.0145x slower string-get-by-val 2.7956+-0.0111 ? 2.9993+-0.3499 ? might be 1.0729x slower string-hash 1.7841+-0.0192 ? 1.7890+-0.0295 ? string-long-ident-equality 13.4892+-0.4577 ? 14.3363+-1.5176 ? might be 1.0628x slower string-out-of-bounds 10.6067+-0.3137 ? 12.0048+-2.6883 ? might be 1.1318x slower string-repeat-arith 27.5787+-1.3176 ? 27.9270+-1.7319 ? might be 1.0126x slower string-sub 55.1309+-1.2337 54.3224+-2.1514 might be 1.0149x faster string-test 3.0958+-0.5119 2.6999+-0.0709 might be 1.1467x faster string-var-equality 29.7672+-1.9790 29.3087+-1.3974 might be 1.0156x faster structure-hoist-over-transitions 2.6607+-0.4324 2.5452+-0.4013 might be 1.0454x faster substring-concat-weird 36.2605+-2.8006 35.9377+-1.6341 substring-concat 40.0435+-3.4057 39.6460+-2.2484 might be 1.0100x faster substring 42.9924+-1.0520 ? 44.1624+-2.4620 ? might be 1.0272x slower switch-char-constant 2.8250+-0.3869 2.6088+-0.0477 might be 1.0829x faster switch-char 6.0179+-0.5683 ? 6.2934+-0.5260 ? might be 1.0458x slower switch-constant 9.2716+-1.2888 8.2566+-0.3544 might be 1.1229x faster switch-string-basic-big-var 14.0875+-1.0959 13.0583+-0.6325 might be 1.0788x faster switch-string-basic-big 13.4059+-0.4943 ? 13.4575+-0.8564 ? switch-string-basic-var 12.3174+-0.3503 ? 12.8046+-0.9212 ? might be 1.0396x slower switch-string-basic 12.3110+-0.6657 12.1985+-0.5660 switch-string-big-length-tower-var 18.8484+-0.4523 18.7945+-0.4663 switch-string-length-tower-var 13.1055+-0.1755 13.0850+-0.4414 switch-string-length-tower 11.5212+-0.4824 11.4623+-0.1508 switch-string-short 11.4731+-0.3829 ? 11.4848+-0.4870 ? switch 12.3424+-1.0476 12.3117+-1.5370 tear-off-arguments-simple 3.3680+-0.5402 3.1429+-0.2693 might be 1.0716x faster tear-off-arguments 4.2994+-0.6331 ? 4.3627+-0.4592 ? might be 1.0147x slower temporal-structure 12.2992+-0.2319 ? 12.6001+-0.5135 ? might be 1.0245x slower to-int32-boolean 13.0753+-0.2017 ? 13.3418+-0.3858 ? might be 1.0204x slower try-catch-get-by-val-cloned-arguments 14.9580+-1.8377 13.5332+-0.4518 might be 1.1053x faster try-catch-get-by-val-direct-arguments 6.3693+-0.6893 6.1887+-0.2139 might be 1.0292x faster try-catch-get-by-val-scoped-arguments 7.7805+-1.2885 7.6649+-0.2445 might be 1.0151x faster undefined-property-access 223.9280+-4.2308 220.6890+-3.4082 might be 1.0147x faster undefined-test 2.9725+-0.1720 2.9205+-0.1416 might be 1.0178x faster unprofiled-licm 14.6007+-0.7731 14.4803+-0.4027 varargs-call 14.4388+-0.6160 14.3230+-0.2521 varargs-construct-inline 19.5091+-1.9639 ? 21.1695+-5.4614 ? might be 1.0851x slower varargs-construct 31.9564+-1.9662 31.7951+-1.4661 varargs-inline 8.6591+-0.1925 8.4792+-0.1679 might be 1.0212x faster varargs-strict-mode 9.5154+-0.3310 ? 9.5833+-0.4743 ? varargs 9.2629+-0.2046 9.1849+-0.2049 weird-inlining-const-prop 2.1185+-0.3366 ? 2.2877+-0.3379 ? might be 1.0799x slower <geometric> 7.8418+-0.0398 7.8168+-0.0338 might be 1.0032x faster Conf#1 Conf#2 AsmBench: bigfib.cpp 460.4671+-3.2493 460.2708+-3.9588 cray.c 407.3941+-5.1841 ? 407.9569+-5.4259 ? dry.c 454.8254+-16.3602 439.9460+-16.9916 might be 1.0338x faster FloatMM.c 709.2321+-6.2498 ? 715.1607+-14.1414 ? gcc-loops.cpp 3642.7350+-32.3977 3633.0413+-14.9195 n-body.c 854.9380+-9.7455 850.7097+-9.1725 Quicksort.c 408.7087+-5.0788 405.8737+-3.1266 stepanov_container.cpp 3816.9313+-65.5215 3791.2543+-36.8649 Towers.c 279.5634+-80.0293 248.5742+-6.6240 might be 1.1247x faster <geometric> 755.7069+-24.1461 743.8971+-2.8090 might be 1.0159x faster Conf#1 Conf#2 CompressionBench: huffman 309.9468+-4.0988 309.8133+-5.6571 arithmetic-simple 354.8420+-4.4944 354.1629+-4.8568 arithmetic-precise 271.1820+-4.5854 ? 272.9160+-3.4857 ? arithmetic-complex-precise 274.1901+-3.0606 271.8753+-6.5757 arithmetic-precise-order-0 377.4504+-6.3252 ? 378.0103+-5.5649 ? arithmetic-precise-order-1 310.6452+-4.4770 307.9252+-2.4075 arithmetic-precise-order-2 349.4101+-4.6362 ? 356.5932+-9.8216 ? might be 1.0206x slower arithmetic-simple-order-1 344.8181+-6.1619 ? 346.9463+-6.3893 ? arithmetic-simple-order-2 407.5136+-5.6869 403.4607+-7.7063 might be 1.0100x faster lz-string 346.2848+-3.8796 ? 347.0602+-10.0842 ? <geometric> 332.0448+-1.6837 ? 332.2533+-1.3863 ? might be 1.0006x slower Conf#1 Conf#2 Geomean of preferred means: <scaled-result> 58.3029+-0.4526 58.1066+-0.3332 might be 1.0034x faster
Basile Clement
Comment 2
2015-04-17 10:29:13 PDT
Created
attachment 251026
[details]
Patch w/ ChangeLog
Geoffrey Garen
Comment 3
2015-04-17 11:12:54 PDT
Comment on
attachment 251026
[details]
Patch w/ ChangeLog 👍
WebKit Commit Bot
Comment 4
2015-04-17 11:51:54 PDT
Comment on
attachment 251026
[details]
Patch w/ ChangeLog Clearing flags on attachment: 251026 Committed
r182959
: <
http://trac.webkit.org/changeset/182959
>
WebKit Commit Bot
Comment 5
2015-04-17 11:51:58 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.
Top of Page
Format For Printing
XML
Clone This Bug