Bug 148288

Summary: Create ById IC for ByVal operation only when the specific Id comes more than once
Product: WebKit Reporter: Yusuke Suzuki <ysuzuki>
Component: JavaScriptCoreAssignee: Yusuke Suzuki <ysuzuki>
Status: RESOLVED FIXED    
Severity: Normal CC: fpizlo, ggaren, mark.lam, msaboff, saam
Priority: P2    
Version: WebKit Nightly Build   
Hardware: Unspecified   
OS: Unspecified   
Attachments:
Description Flags
Patch ggaren: review+

Yusuke Suzuki
Reported 2015-08-20 21:30:09 PDT
After introducing byId ICs into byVal ops, byVal ops creates much ICs than before. https://bugs.webkit.org/show_bug.cgi?id=148273 The failure figures out these ICs are created even if this op is executed only once. The situation is the following; In the current code, when byVal op is executed with the Id, we immediately set up the byId IC for that byVal op. But setting up JITGetByIdGenerator generates the fast path IC code and consumes executable memory. As a result, if we call eval("contains byVal ops") with the different strings repeatedly under no-llint environment, each eval call creates byId IC for byVal and consumes executable memory. To solve it, we will add "seen" flag to ByValInfo. And we will create the IC on the second byVal op call with the same Id. The rough design is the following, if (!byValInfo->seen) { byValInfo->seen = true; byValInfo->cachedId = givenId; } else if (byValInfo->cachedId == givenId) Generate IC! else Make the call site generic.
Attachments
Patch (16.64 KB, patch)
2015-08-24 10:43 PDT, Yusuke Suzuki
ggaren: review+
Yusuke Suzuki
Comment 1 2015-08-20 22:20:59 PDT
Once getting the patch into shape, we need to drop the skip in https://bugs.webkit.org/show_bug.cgi?id=148273
Yusuke Suzuki
Comment 2 2015-08-24 10:43:12 PDT
Yusuke Suzuki
Comment 3 2015-08-24 10:44:54 PDT
Benchmark results. Benchmark report for SunSpider, LongSpider, V8Spider, Octane, Kraken, and JSRegress on Yusukes-MacBook-Pro (MacBookPro11,3). VMs tested: "master" at /Users/yusukesuzuki/development/WebKit/WebKitBuild/master-for-ic-fix/Release/jsc "ic" at /Users/yusukesuzuki/development/WebKit/WebKitBuild/ic-fix/Release/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. master ic SunSpider: 3d-cube 4.8950+-0.1237 ^ 4.4082+-0.0484 ^ definitely 1.1104x faster 3d-morph 5.5245+-0.7775 5.2208+-0.0188 might be 1.0582x faster 3d-raytrace 5.1266+-0.1239 ? 5.2955+-0.2978 ? might be 1.0329x slower access-binary-trees 1.9720+-0.1269 ? 2.0294+-0.0276 ? might be 1.0291x slower access-fannkuch 5.2841+-0.0388 ? 5.3985+-0.1370 ? might be 1.0217x slower access-nbody 2.4684+-0.1640 ? 2.4731+-0.1834 ? access-nsieve 3.0925+-0.2057 3.0574+-0.1677 might be 1.0115x faster bitops-3bit-bits-in-byte 1.5672+-0.2066 1.4465+-0.0167 might be 1.0835x faster bitops-bits-in-byte 3.3809+-0.2352 3.2858+-0.0191 might be 1.0289x faster bitops-bitwise-and 1.9889+-0.0968 ? 1.9914+-0.0396 ? bitops-nsieve-bits 2.9876+-0.0164 ? 3.0338+-0.1690 ? might be 1.0154x slower controlflow-recursive 2.0355+-0.1398 1.9357+-0.0834 might be 1.0516x faster crypto-aes 3.8264+-0.2044 3.8166+-0.0641 crypto-md5 2.4739+-0.3817 2.3403+-0.0256 might be 1.0571x faster crypto-sha1 2.5663+-0.3692 2.3836+-0.2679 might be 1.0766x faster date-format-tofte 6.7745+-0.3135 6.7235+-0.1192 date-format-xparb 4.9304+-0.5542 4.7330+-0.3545 might be 1.0417x faster math-cordic 2.8828+-0.2677 2.7490+-0.0661 might be 1.0487x faster math-partial-sums 5.1415+-0.0567 ? 5.1788+-0.2729 ? math-spectral-norm 1.7795+-0.0444 ? 1.8533+-0.0759 ? might be 1.0415x slower regexp-dna 6.5806+-0.2016 6.4329+-0.1036 might be 1.0230x faster string-base64 4.4734+-0.3616 4.3055+-0.1398 might be 1.0390x faster string-fasta 5.8469+-0.1348 5.7702+-0.1275 might be 1.0133x faster string-tagcloud 8.1245+-0.0813 8.0292+-0.0949 might be 1.0119x faster string-unpack-code 20.5140+-2.4691 19.4479+-1.7026 might be 1.0548x faster string-validate-input 4.6157+-0.2543 ? 4.6782+-0.4178 ? might be 1.0135x slower <arithmetic> 4.6482+-0.1122 4.5392+-0.0631 might be 1.0240x faster master ic LongSpider: 3d-cube 834.9989+-14.3271 ? 838.7601+-22.0063 ? 3d-morph 1542.4050+-23.6740 ? 1548.9382+-37.5757 ? 3d-raytrace 625.3683+-10.0351 620.1567+-7.4127 access-binary-trees 812.1281+-16.5889 ? 829.5452+-13.3014 ? might be 1.0214x slower access-fannkuch 288.7075+-13.3416 285.6575+-6.2635 might be 1.0107x faster access-nbody 522.8333+-8.2151 522.0870+-3.4390 access-nsieve 368.9378+-21.6602 360.1088+-18.2949 might be 1.0245x faster bitops-3bit-bits-in-byte 39.8757+-2.8274 38.9567+-0.9192 might be 1.0236x faster bitops-bits-in-byte 76.4435+-0.6506 ? 76.8669+-2.9014 ? bitops-nsieve-bits 417.9351+-5.9119 ? 423.9992+-10.2671 ? might be 1.0145x slower controlflow-recursive 458.6976+-15.3114 ? 467.2002+-29.5969 ? might be 1.0185x slower crypto-aes 590.9203+-6.3986 586.2678+-20.6003 crypto-md5 506.0730+-14.1717 ? 508.7957+-11.1478 ? crypto-sha1 639.4576+-19.1304 633.2165+-16.9996 date-format-tofte 521.1271+-10.7640 511.8284+-3.0682 might be 1.0182x faster date-format-xparb 683.6581+-12.6768 ! 717.0543+-14.3318 ! definitely 1.0488x slower hash-map 158.3597+-3.2474 153.3233+-3.6711 might be 1.0328x faster math-cordic 499.6251+-4.0220 ? 502.0118+-19.4527 ? math-partial-sums 484.6980+-8.0056 479.9955+-1.7999 math-spectral-norm 571.4684+-10.2683 569.0518+-13.0031 string-base64 352.6993+-11.7840 349.8032+-8.7139 string-fasta 374.6824+-2.7157 ? 379.2657+-4.8389 ? might be 1.0122x slower string-tagcloud 182.2364+-3.2024 ? 186.6809+-7.0021 ? might be 1.0244x slower <geometric> 401.4190+-2.2804 ? 401.4886+-1.6300 ? might be 1.0002x slower master ic V8Spider: crypto 48.5731+-1.7374 ? 49.5720+-1.1053 ? might be 1.0206x slower deltablue 87.1987+-4.4169 86.7971+-8.5308 earley-boyer 41.5285+-3.2256 40.5745+-0.7233 might be 1.0235x faster raytrace 31.7237+-2.5370 31.0477+-2.3190 might be 1.0218x faster regexp 62.9616+-0.4965 ? 63.3495+-0.9610 ? richards 65.6168+-2.8144 ? 66.2745+-1.9340 ? might be 1.0100x slower splay 37.0652+-3.3255 34.4015+-7.0583 might be 1.0774x faster <geometric> 50.6183+-0.9148 49.9637+-1.9877 might be 1.0131x faster master ic Octane: encrypt 0.17049+-0.01028 ? 0.17455+-0.00094 ? might be 1.0238x slower decrypt 3.41426+-0.05678 3.37818+-0.05413 might be 1.0107x faster deltablue x2 0.16250+-0.00451 0.16098+-0.00364 earley 0.28154+-0.00575 ? 0.28243+-0.00408 ? boyer 4.30470+-0.08769 ? 4.42376+-0.32720 ? might be 1.0277x slower navier-stokes x2 4.98274+-0.04305 ? 4.99842+-0.09226 ? raytrace x2 1.04741+-0.13765 1.02645+-0.12160 might be 1.0204x faster richards x2 0.11442+-0.00529 0.11337+-0.00105 splay x2 0.34131+-0.01083 0.33655+-0.00896 might be 1.0142x faster regexp x2 25.21667+-0.30216 25.03787+-0.35599 pdfjs x2 37.80714+-0.35772 ? 37.86931+-0.31105 ? mandreel x2 46.69843+-0.69445 ^ 44.84475+-0.89287 ^ definitely 1.0413x faster gbemu x2 34.88492+-0.16671 34.53472+-0.99010 might be 1.0101x faster closure 0.57865+-0.01483 0.57655+-0.00430 jquery 7.33573+-0.18689 7.30656+-0.12705 box2d x2 10.16154+-0.28041 10.15637+-0.15428 zlib x2 383.61766+-10.28099 ? 393.39746+-8.15394 ? might be 1.0255x slower typescript x2 656.22577+-25.01901 650.64197+-6.27099 <geometric> 5.71541+-0.05831 5.68845+-0.04739 might be 1.0047x faster master ic Kraken: ai-astar 228.913+-5.311 ? 231.935+-14.226 ? might be 1.0132x slower audio-beat-detection 50.493+-0.338 ? 50.536+-0.703 ? audio-dft 98.184+-4.139 ? 99.560+-4.044 ? might be 1.0140x slower audio-fft 36.033+-1.748 ? 36.038+-1.532 ? audio-oscillator 61.721+-1.650 60.102+-0.206 might be 1.0269x faster imaging-darkroom 62.508+-0.619 62.263+-0.444 imaging-desaturate 50.657+-0.508 50.479+-1.064 imaging-gaussian-blur 85.809+-0.711 85.551+-0.298 json-parse-financial 40.069+-1.572 39.584+-0.848 might be 1.0122x faster json-stringify-tinderbox 22.964+-1.046 ? 23.209+-2.626 ? might be 1.0107x slower stanford-crypto-aes 40.803+-0.360 ? 41.672+-2.089 ? might be 1.0213x slower stanford-crypto-ccm 36.229+-3.330 35.187+-1.727 might be 1.0296x faster stanford-crypto-pbkdf2 96.209+-0.313 ? 97.294+-3.192 ? might be 1.0113x slower stanford-crypto-sha256-iterative 37.438+-2.183 37.333+-0.541 <arithmetic> 67.716+-0.577 ? 67.910+-1.288 ? might be 1.0029x slower master ic JSRegress: abc-forward-loop-equal 29.8595+-0.7297 ? 30.3467+-1.4902 ? might be 1.0163x slower abc-postfix-backward-loop 30.4935+-0.9854 29.7267+-0.4203 might be 1.0258x faster abc-simple-backward-loop 29.4898+-0.4402 ? 29.8400+-0.7036 ? might be 1.0119x slower abc-simple-forward-loop 30.9755+-3.1297 30.4270+-2.0284 might be 1.0180x faster abc-skippy-loop 21.9113+-0.9080 ? 22.4575+-3.0962 ? might be 1.0249x slower abs-boolean 2.4988+-0.1626 2.4568+-0.0284 might be 1.0171x faster adapt-to-double-divide 16.4841+-0.4656 ? 16.9908+-0.2320 ? might be 1.0307x slower aliased-arguments-getbyval 1.0909+-0.0355 ? 1.1826+-0.1496 ? might be 1.0840x slower allocate-big-object 2.5242+-0.5127 ? 2.5753+-0.5468 ? might be 1.0202x slower arguments-named-and-reflective 11.4116+-0.4350 11.1919+-0.2104 might be 1.0196x faster arguments-out-of-bounds 9.1530+-0.1378 ? 9.2842+-0.2499 ? might be 1.0143x slower arguments-strict-mode 10.1381+-0.7049 9.9100+-0.5031 might be 1.0230x faster arguments 8.5581+-0.0894 ? 8.6145+-0.3134 ? arity-mismatch-inlining 0.8025+-0.1001 0.7802+-0.0054 might be 1.0286x faster array-access-polymorphic-structure 6.2133+-0.5647 5.8093+-0.1150 might be 1.0695x faster array-nonarray-polymorhpic-access 25.2977+-0.9252 ? 25.8604+-1.6085 ? might be 1.0222x slower array-prototype-every 76.8730+-0.5969 ^ 75.8251+-0.2037 ^ definitely 1.0138x faster array-prototype-forEach 76.1814+-2.0485 74.7393+-0.1150 might be 1.0193x faster array-prototype-map 82.7990+-1.0863 ? 82.8018+-1.8119 ? array-prototype-reduce 76.0932+-9.7637 71.7655+-0.5369 might be 1.0603x faster array-prototype-reduceRight 73.4560+-3.1455 70.8948+-0.3995 might be 1.0361x faster array-prototype-some 76.9339+-0.8111 76.0162+-0.5338 might be 1.0121x faster array-splice-contiguous 21.1316+-0.8088 20.7238+-0.7087 might be 1.0197x faster array-with-double-add 3.4008+-0.0577 ? 3.4280+-0.0602 ? array-with-double-increment 3.0478+-0.0401 ? 3.1226+-0.0818 ? might be 1.0245x slower array-with-double-mul-add 4.2631+-0.1845 ? 4.3263+-0.4530 ? might be 1.0148x slower array-with-double-sum 3.1741+-0.0574 ? 3.2684+-0.1079 ? might be 1.0297x slower array-with-int32-add-sub 6.0027+-0.3666 ? 6.0318+-0.3860 ? array-with-int32-or-double-sum 3.3506+-0.1358 3.2935+-0.1823 might be 1.0173x faster ArrayBuffer-DataView-alloc-large-long-lived 27.1061+-0.3800 26.8340+-0.9249 might be 1.0101x faster ArrayBuffer-DataView-alloc-long-lived 12.7910+-0.4169 ? 12.9314+-1.5583 ? might be 1.0110x slower ArrayBuffer-Int32Array-byteOffset 3.6448+-0.1867 ? 3.7703+-0.2439 ? might be 1.0344x slower ArrayBuffer-Int8Array-alloc-large-long-lived 27.3103+-0.9297 26.9379+-0.3566 might be 1.0138x faster ArrayBuffer-Int8Array-alloc-long-lived-buffer 20.5690+-0.9768 20.3438+-0.3516 might be 1.0111x faster ArrayBuffer-Int8Array-alloc-long-lived 12.4053+-1.4617 11.9770+-0.2646 might be 1.0358x faster ArrayBuffer-Int8Array-alloc 10.3818+-0.3362 10.2670+-0.2096 might be 1.0112x faster arrowfunction-call 11.0336+-0.3947 10.8059+-0.2675 might be 1.0211x faster asmjs_bool_bug 7.0331+-0.2693 6.9392+-0.0903 might be 1.0135x faster assign-custom-setter-polymorphic 2.4085+-0.0676 2.3884+-0.0429 assign-custom-setter 3.3239+-0.3104 3.2825+-0.1273 might be 1.0126x faster basic-set 7.5746+-0.1816 7.4528+-0.1129 might be 1.0163x faster big-int-mul 3.5036+-0.1081 ? 3.5056+-0.1281 ? boolean-test 3.0070+-0.1343 ? 3.0465+-0.2660 ? might be 1.0131x slower branch-fold 3.6291+-0.0241 ? 3.6296+-0.0535 ? branch-on-string-as-boolean 16.5719+-0.2635 ? 17.5350+-1.3162 ? might be 1.0581x slower by-val-generic 2.4099+-0.1915 2.3078+-0.0660 might be 1.0442x faster call-spread-apply 26.1016+-0.4388 ? 26.3210+-1.3901 ? call-spread-call 22.5133+-4.0671 22.3873+-1.6941 captured-assignments 0.4208+-0.0057 ? 0.4286+-0.0455 ? might be 1.0187x slower cast-int-to-double 5.2396+-0.2164 5.2356+-0.1769 cell-argument 6.3983+-0.1498 6.2240+-0.2727 might be 1.0280x faster cfg-simplify 2.6733+-0.1116 ? 2.6992+-0.1046 ? chain-getter-access 8.2831+-0.0707 8.2705+-0.1552 cmpeq-obj-to-obj-other 11.7294+-1.3279 ? 12.1580+-1.9574 ? might be 1.0365x slower constant-test 4.8545+-0.0543 4.8096+-0.0332 create-lots-of-functions 9.5565+-0.5683 9.0632+-0.4105 might be 1.0544x faster cse-new-array-buffer 2.1256+-0.2297 ? 2.1523+-0.2898 ? might be 1.0125x slower cse-new-array 2.2620+-0.1203 2.2200+-0.2428 might be 1.0189x faster DataView-custom-properties 32.0752+-0.6685 31.8375+-0.3639 delay-tear-off-arguments-strictmode 12.5389+-0.0694 12.4146+-0.2743 might be 1.0100x faster deltablue-varargs 157.2288+-3.4997 155.3830+-6.2472 might be 1.0119x faster destructuring-arguments 163.8407+-2.4533 ? 165.7385+-7.3056 ? might be 1.0116x slower destructuring-parameters-overridden-by-function 0.4651+-0.0755 ? 0.5261+-0.2979 ? might be 1.1311x slower destructuring-swap 4.7777+-0.1657 4.7100+-0.0590 might be 1.0144x faster direct-arguments-getbyval 1.1246+-0.1080 ? 1.1695+-0.1100 ? might be 1.0399x slower div-boolean-double 5.4355+-0.1137 ? 6.1593+-2.2676 ? might be 1.1332x slower div-boolean 8.4579+-0.3552 8.2567+-0.2389 might be 1.0244x faster double-get-by-val-out-of-bounds 4.1487+-0.0757 ? 4.2742+-0.1059 ? might be 1.0302x slower double-pollution-getbyval 8.8266+-0.1263 ? 8.9526+-0.2625 ? might be 1.0143x slower double-pollution-putbyoffset 3.7956+-0.5411 3.7083+-0.0645 might be 1.0235x faster double-real-use 24.6331+-0.4881 24.4310+-1.4050 double-to-int32-typed-array-no-inline 1.9970+-0.0762 ? 2.0125+-0.0651 ? double-to-int32-typed-array 1.7657+-0.1482 1.7280+-0.0225 might be 1.0218x faster double-to-uint32-typed-array-no-inline 1.9799+-0.0978 ? 2.1161+-0.2628 ? might be 1.0688x slower double-to-uint32-typed-array 1.8338+-0.0972 ? 1.8915+-0.1200 ? might be 1.0315x slower elidable-new-object-dag 34.0840+-0.7215 33.7549+-0.9851 elidable-new-object-roflcopter 33.4189+-0.8327 ? 33.7923+-2.0537 ? might be 1.0112x slower elidable-new-object-then-call 32.1600+-1.4739 31.5402+-0.2576 might be 1.0196x faster elidable-new-object-tree 37.0881+-0.9939 ? 37.1515+-0.7734 ? empty-string-plus-int 4.9228+-0.1352 ? 5.0630+-0.1889 ? might be 1.0285x slower emscripten-cube2hash 26.0952+-2.6913 25.7183+-2.3421 might be 1.0147x faster exit-length-on-plain-object 12.9370+-1.4071 ? 13.2047+-1.7485 ? might be 1.0207x slower external-arguments-getbyval 1.1230+-0.0871 ? 1.1346+-0.0149 ? might be 1.0104x slower external-arguments-putbyval 2.1518+-0.0730 2.0323+-0.0596 might be 1.0588x faster fixed-typed-array-storage-var-index 1.1478+-0.0705 1.1198+-0.0284 might be 1.0250x faster fixed-typed-array-storage 0.8663+-0.0956 0.8329+-0.0166 might be 1.0402x faster Float32Array-matrix-mult 3.8990+-0.2635 3.7900+-0.0208 might be 1.0288x faster Float32Array-to-Float64Array-set 46.1259+-0.8944 45.9468+-0.6212 Float64Array-alloc-long-lived 56.7482+-0.7941 ? 57.6157+-2.1011 ? might be 1.0153x slower Float64Array-to-Int16Array-set 57.3625+-2.6708 55.9687+-0.7054 might be 1.0249x faster fold-double-to-int 12.7402+-1.7053 12.3546+-0.7229 might be 1.0312x faster fold-get-by-id-to-multi-get-by-offset-rare-int 10.7925+-2.4531 ? 11.5863+-1.8796 ? might be 1.0735x slower fold-get-by-id-to-multi-get-by-offset 10.8633+-3.5888 10.2806+-1.0208 might be 1.0567x faster fold-multi-get-by-offset-to-get-by-offset 8.6937+-0.8856 7.6913+-2.9715 might be 1.1303x faster fold-multi-get-by-offset-to-poly-get-by-offset 8.0280+-0.4111 ? 8.1999+-1.4194 ? might be 1.0214x slower fold-multi-put-by-offset-to-poly-put-by-offset 8.7241+-2.1186 8.2817+-1.5226 might be 1.0534x faster fold-multi-put-by-offset-to-put-by-offset 6.3060+-3.0903 ? 6.6070+-1.7516 ? might be 1.0477x slower fold-multi-put-by-offset-to-replace-or-transition-put-by-offset 8.0148+-0.2526 ? 8.0930+-0.4485 ? fold-put-by-id-to-multi-put-by-offset 11.3260+-3.0555 9.6570+-1.1946 might be 1.1728x faster fold-put-by-val-with-string-to-multi-put-by-offset 9.6727+-1.4171 ? 11.5368+-2.4112 ? might be 1.1927x slower fold-put-by-val-with-symbol-to-multi-put-by-offset 10.7723+-2.2721 10.7657+-1.8728 fold-put-structure 6.0835+-1.3030 5.9879+-1.8007 might be 1.0160x faster for-of-iterate-array-entries 11.1656+-0.1600 ? 11.2230+-0.2368 ? for-of-iterate-array-keys 3.5482+-0.5597 3.3846+-0.2923 might be 1.0483x faster for-of-iterate-array-values 3.2512+-0.2528 3.2095+-0.1168 might be 1.0130x faster fround 18.0048+-0.3863 17.9282+-0.4280 ftl-library-inlining-dataview 56.5247+-0.5651 ? 57.0070+-1.9220 ? ftl-library-inlining 88.5607+-4.2671 ? 92.1458+-7.7512 ? might be 1.0405x slower function-call 10.6230+-0.1857 ? 10.7385+-0.2380 ? might be 1.0109x slower function-dot-apply 1.7810+-0.0357 ? 1.8659+-0.1666 ? might be 1.0477x slower function-test 2.7573+-0.0614 ? 2.7816+-0.0389 ? function-with-eval 106.2371+-1.4698 104.9832+-6.3696 might be 1.0119x faster gcse-poly-get-less-obvious 14.5601+-0.2089 14.5359+-0.4296 gcse-poly-get 16.1840+-0.2824 ? 16.2252+-0.4798 ? gcse 3.8709+-0.0906 ? 4.1512+-0.9831 ? might be 1.0724x slower get-by-id-bimorphic-check-structure-elimination-simple 2.6221+-0.0218 ? 2.6815+-0.1218 ? might be 1.0227x slower get-by-id-bimorphic-check-structure-elimination 5.7979+-0.0929 ? 5.8700+-0.2118 ? might be 1.0124x slower get-by-id-chain-from-try-block 5.5823+-0.4524 5.5805+-0.2151 get-by-id-check-structure-elimination 4.3612+-0.0537 ? 4.5378+-0.1993 ? might be 1.0405x slower get-by-id-proto-or-self 14.7100+-0.6991 ? 14.7985+-0.5740 ? get-by-id-quadmorphic-check-structure-elimination-simple 2.9917+-0.2217 2.9033+-0.1003 might be 1.0304x faster get-by-id-self-or-proto 15.2495+-1.1265 ? 16.1349+-1.6869 ? might be 1.0581x slower get-by-val-out-of-bounds 3.8292+-0.2710 3.7325+-0.2053 might be 1.0259x faster get-by-val-with-string-bimorphic-check-structure-elimination-simple 2.8304+-0.0209 2.7816+-0.0550 might be 1.0176x faster get-by-val-with-string-bimorphic-check-structure-elimination 6.0577+-0.1007 5.9914+-0.0507 might be 1.0111x faster get-by-val-with-string-chain-from-try-block 5.6625+-0.2226 ? 5.6917+-0.3084 ? get-by-val-with-string-check-structure-elimination 5.2808+-0.0878 ^ 5.1152+-0.0656 ^ definitely 1.0324x faster get-by-val-with-string-proto-or-self 15.2231+-1.3060 ? 15.4296+-0.4679 ? might be 1.0136x slower get-by-val-with-string-quadmorphic-check-structure-elimination-simple 3.2448+-0.1090 3.1426+-0.0549 might be 1.0325x faster get-by-val-with-string-self-or-proto 15.2403+-1.2300 ? 15.4368+-0.3428 ? might be 1.0129x slower get-by-val-with-symbol-bimorphic-check-structure-elimination-simple 3.0792+-0.1326 3.0345+-0.0412 might be 1.0147x faster get-by-val-with-symbol-bimorphic-check-structure-elimination 12.5380+-0.1988 ? 12.9760+-0.9895 ? might be 1.0349x slower get-by-val-with-symbol-chain-from-try-block 5.6661+-0.0657 5.6600+-0.2204 get-by-val-with-symbol-check-structure-elimination 11.3857+-0.4118 11.3061+-0.1538 get-by-val-with-symbol-proto-or-self 15.0023+-0.3338 ? 15.4300+-0.3824 ? might be 1.0285x slower get-by-val-with-symbol-quadmorphic-check-structure-elimination-simple 3.9248+-0.1546 ? 3.9620+-0.0974 ? get-by-val-with-symbol-self-or-proto 15.9385+-1.8642 15.8679+-1.3356 get_callee_monomorphic 2.1970+-0.4615 ? 2.2095+-0.2650 ? get_callee_polymorphic 3.2006+-0.1882 ? 3.2177+-0.2738 ? getter-no-activation 4.9707+-0.6498 4.9581+-0.2819 getter-prototype 9.1134+-0.3425 8.9020+-0.2575 might be 1.0237x faster getter-richards 121.8536+-1.5967 121.4000+-13.1129 getter 5.7363+-1.1464 ? 5.7505+-1.1965 ? global-object-access-with-mutating-structure 5.9109+-0.4967 5.6653+-0.1563 might be 1.0434x faster global-var-const-infer-fire-from-opt 0.7849+-0.1236 ? 0.7891+-0.0604 ? global-var-const-infer 0.5965+-0.0410 0.5855+-0.0172 might be 1.0188x faster hard-overflow-check-equal 33.1633+-0.3162 ? 33.7616+-0.6005 ? might be 1.0180x slower hard-overflow-check 33.7747+-1.1612 33.5032+-0.7842 HashMap-put-get-iterate-keys 24.5500+-2.5442 ? 25.5380+-1.6537 ? might be 1.0402x slower HashMap-put-get-iterate 28.0864+-1.5715 ? 28.7688+-0.8076 ? might be 1.0243x slower HashMap-string-put-get-iterate 24.9203+-1.2797 ? 25.0547+-2.5213 ? hoist-make-rope 9.0181+-1.0342 8.7068+-1.1349 might be 1.0358x faster hoist-poly-check-structure-effectful-loop 4.2309+-0.1333 4.1293+-0.1266 might be 1.0246x faster hoist-poly-check-structure 3.3557+-0.0671 3.3110+-0.1063 might be 1.0135x faster imul-double-only 7.8038+-0.2698 7.5412+-0.1495 might be 1.0348x faster imul-int-only 8.8829+-1.5250 8.3496+-1.2906 might be 1.0639x faster imul-mixed 7.0240+-0.3030 6.4846+-0.5118 might be 1.0832x faster in-four-cases 17.2755+-0.4816 ? 17.5363+-0.5430 ? might be 1.0151x slower in-one-case-false 9.4630+-0.1430 ? 9.5732+-0.6543 ? might be 1.0116x slower in-one-case-true 9.4034+-0.0591 ? 9.6580+-0.7539 ? might be 1.0271x slower in-two-cases 10.0729+-0.1567 10.0198+-0.4635 indexed-properties-in-objects 2.9058+-0.2877 2.8453+-0.0517 might be 1.0213x faster infer-closure-const-then-mov-no-inline 3.0150+-0.0524 ? 3.0666+-0.1359 ? might be 1.0171x slower infer-closure-const-then-mov 18.2485+-0.6513 ? 18.6837+-0.5439 ? might be 1.0239x slower infer-closure-const-then-put-to-scope-no-inline 10.6857+-0.1239 10.5746+-0.1796 might be 1.0105x faster infer-closure-const-then-put-to-scope 22.3870+-0.1555 ? 22.4141+-1.0093 ? infer-closure-const-then-reenter-no-inline 50.0638+-2.1530 ? 50.6323+-0.4296 ? might be 1.0114x slower infer-closure-const-then-reenter 22.7377+-1.7264 22.6592+-0.9931 infer-constant-global-property 3.4305+-0.0586 3.4190+-0.0594 infer-constant-property 2.6453+-0.0982 2.6198+-0.0151 infer-one-time-closure-ten-vars 8.0192+-1.3151 7.9390+-0.5926 might be 1.0101x faster infer-one-time-closure-two-vars 7.5959+-0.5960 7.4789+-0.1308 might be 1.0156x faster infer-one-time-closure 7.3837+-0.4044 ? 7.5453+-0.4461 ? might be 1.0219x slower infer-one-time-deep-closure 11.0098+-0.6171 10.8545+-0.4641 might be 1.0143x faster inline-arguments-access 3.7162+-0.3650 3.6309+-0.4785 might be 1.0235x faster inline-arguments-aliased-access 3.4761+-0.1216 ? 3.5188+-0.1812 ? might be 1.0123x slower inline-arguments-local-escape 3.7236+-0.4132 3.5103+-0.1033 might be 1.0608x faster inline-get-scoped-var 4.6288+-0.3872 ? 4.7238+-0.4024 ? might be 1.0205x slower inlined-put-by-id-transition 9.2322+-0.8125 ? 9.8571+-0.5359 ? might be 1.0677x slower inlined-put-by-val-with-string-transition 74.2982+-1.5676 73.0778+-3.1577 might be 1.0167x faster inlined-put-by-val-with-symbol-transition 73.6242+-4.7703 72.9174+-5.3258 int-or-other-abs-then-get-by-val 4.8758+-0.0661 ? 4.8940+-0.1318 ? int-or-other-abs-zero-then-get-by-val 16.3628+-0.6860 ? 16.4833+-0.1655 ? int-or-other-add-then-get-by-val 4.0894+-0.1002 ? 4.2795+-0.4265 ? might be 1.0465x slower int-or-other-add 4.9225+-0.1076 ? 4.9460+-0.1669 ? int-or-other-div-then-get-by-val 3.8594+-0.1243 ? 3.9260+-0.2372 ? might be 1.0172x slower int-or-other-max-then-get-by-val 3.9117+-0.2108 ? 3.9583+-0.0523 ? might be 1.0119x slower int-or-other-min-then-get-by-val 4.0477+-0.1788 ? 4.1005+-0.1164 ? might be 1.0131x slower int-or-other-mod-then-get-by-val 3.5281+-0.0583 ? 3.5896+-0.1923 ? might be 1.0174x slower int-or-other-mul-then-get-by-val 3.6618+-0.0333 3.6617+-0.0761 int-or-other-neg-then-get-by-val 4.7662+-0.5264 4.4993+-0.0748 might be 1.0593x faster int-or-other-neg-zero-then-get-by-val 15.8652+-0.4588 ? 16.6387+-0.4271 ? might be 1.0488x slower int-or-other-sub-then-get-by-val 4.2489+-0.4719 4.1135+-0.0376 might be 1.0329x faster int-or-other-sub 3.5066+-0.3145 3.3619+-0.0693 might be 1.0430x faster int-overflow-local 4.2388+-0.0771 ? 4.3074+-0.0565 ? might be 1.0162x slower Int16Array-alloc-long-lived 41.8030+-0.9500 41.6678+-0.9136 Int16Array-bubble-sort-with-byteLength 18.1948+-1.6207 17.9051+-0.4010 might be 1.0162x faster Int16Array-bubble-sort 17.7326+-0.4540 ? 17.7626+-0.7975 ? Int16Array-load-int-mul 1.4246+-0.0763 ? 1.5241+-0.1759 ? might be 1.0699x slower Int16Array-to-Int32Array-set 43.5377+-0.4511 ? 43.6970+-1.4693 ? Int32Array-alloc-large 12.6503+-0.7549 12.5895+-0.5526 Int32Array-alloc-long-lived 47.0074+-0.9142 ? 47.0518+-1.2839 ? Int32Array-alloc 2.7180+-0.1741 2.6770+-0.3051 might be 1.0153x faster Int32Array-Int8Array-view-alloc 6.1983+-0.1834 ? 6.2695+-0.1333 ? might be 1.0115x slower int52-spill 4.6816+-0.1467 ? 4.7322+-0.1429 ? might be 1.0108x slower Int8Array-alloc-long-lived 37.9771+-1.0245 37.8018+-1.3227 Int8Array-load-with-byteLength 3.3795+-0.0177 ? 3.4133+-0.0317 ? Int8Array-load 3.4643+-0.1781 ? 3.4645+-0.1111 ? integer-divide 10.2011+-0.1334 ? 10.3015+-0.3847 ? integer-modulo 1.5140+-0.0374 ? 1.5223+-0.0304 ? is-boolean-fold-tricky 3.8115+-0.0582 ? 3.8665+-0.2901 ? might be 1.0144x slower is-boolean-fold 2.6703+-0.1191 2.6487+-0.0348 is-function-fold-tricky-internal-function 10.7545+-1.1558 10.4650+-0.4100 might be 1.0277x faster is-function-fold-tricky 4.1351+-0.0730 ? 4.2383+-0.3451 ? might be 1.0250x slower is-function-fold 2.7321+-0.1270 ? 2.8052+-0.2724 ? might be 1.0268x slower is-number-fold-tricky 4.0364+-0.0408 ? 4.1665+-0.2142 ? might be 1.0322x slower is-number-fold 2.6550+-0.1003 2.5937+-0.0282 might be 1.0236x faster is-object-or-null-fold-functions 2.7165+-0.1399 2.6998+-0.0848 is-object-or-null-fold-less-tricky 4.1103+-0.0707 ? 4.1295+-0.1064 ? is-object-or-null-fold-tricky 5.3396+-0.2152 ? 5.4630+-0.2709 ? might be 1.0231x slower is-object-or-null-fold 2.6954+-0.1040 ? 2.7151+-0.0814 ? is-object-or-null-trickier-function 4.1752+-0.1299 ? 4.2006+-0.2605 ? is-object-or-null-trickier-internal-function 11.1157+-0.3756 11.1145+-0.5175 is-object-or-null-tricky-function 4.2040+-0.2032 ? 4.4085+-0.8306 ? might be 1.0487x slower is-object-or-null-tricky-internal-function 7.8646+-0.0261 7.8260+-0.2548 is-string-fold-tricky 4.2056+-0.3948 ? 4.2700+-0.4323 ? might be 1.0153x slower is-string-fold 2.6758+-0.1156 2.6705+-0.0802 is-undefined-fold-tricky 3.4949+-0.3506 3.3853+-0.2625 might be 1.0324x faster is-undefined-fold 2.6564+-0.0548 ? 2.6770+-0.0600 ? JSONP-negative-0 0.2738+-0.0603 0.2495+-0.0181 might be 1.0974x faster large-int-captured 3.9795+-0.4921 ? 4.1501+-0.6562 ? might be 1.0429x slower large-int-neg 13.8777+-0.3828 ! 14.4685+-0.1778 ! definitely 1.0426x slower large-int 12.8430+-0.1558 12.8150+-0.5884 load-varargs-elimination 21.3097+-0.7692 ? 21.8483+-1.6914 ? might be 1.0253x slower logical-not-weird-types 2.8102+-0.0451 ? 2.8473+-0.0397 ? might be 1.0132x slower logical-not 4.2790+-0.0876 ? 4.3753+-0.1466 ? might be 1.0225x slower lots-of-fields 9.4100+-0.2096 9.2604+-0.4021 might be 1.0161x faster make-indexed-storage 2.8793+-0.1856 2.7849+-0.0528 might be 1.0339x faster make-rope-cse 3.7170+-0.1305 3.6479+-0.1936 might be 1.0189x faster marsaglia-larger-ints 32.5799+-0.9843 ? 33.0995+-3.4805 ? might be 1.0159x slower marsaglia-osr-entry 22.1675+-1.6771 21.6620+-1.1644 might be 1.0233x faster math-with-out-of-bounds-array-values 22.5804+-1.9985 21.7222+-0.8605 might be 1.0395x faster max-boolean 2.7355+-0.1517 2.7045+-0.0929 might be 1.0115x faster method-on-number 16.2837+-0.2479 ? 16.3297+-0.9759 ? min-boolean 2.7079+-0.0776 2.6533+-0.0139 might be 1.0206x faster minus-boolean-double 3.1587+-0.1517 3.0910+-0.0271 might be 1.0219x faster minus-boolean 2.4570+-0.0784 2.3641+-0.1038 might be 1.0393x faster misc-strict-eq 29.6487+-1.9028 29.0220+-1.6698 might be 1.0216x faster mod-boolean-double 11.2670+-0.2916 ? 11.3707+-0.5519 ? mod-boolean 8.5316+-0.4079 8.4761+-0.2221 mul-boolean-double 3.8253+-0.6636 3.6747+-0.1802 might be 1.0410x faster mul-boolean 2.7743+-0.0311 ? 2.8549+-0.0798 ? might be 1.0290x slower neg-boolean 3.0958+-0.0370 ? 3.2518+-0.2714 ? might be 1.0504x slower negative-zero-divide 0.3384+-0.0458 0.3323+-0.0120 might be 1.0184x faster negative-zero-modulo 0.3282+-0.0255 ? 0.3496+-0.0582 ? might be 1.0653x slower negative-zero-negate 0.3328+-0.0643 0.3204+-0.0431 might be 1.0387x faster nested-function-parsing 43.7238+-1.2252 43.6808+-1.8066 new-array-buffer-dead 88.1812+-0.8185 ? 88.4558+-2.2062 ? new-array-buffer-push 6.0616+-0.4634 5.9085+-0.3618 might be 1.0259x faster new-array-dead 14.2520+-1.0183 14.1730+-1.1884 new-array-push 3.3697+-0.2466 ? 3.3990+-0.5187 ? no-inline-constructor 31.4152+-0.3353 30.9752+-0.3689 might be 1.0142x faster number-test 2.8688+-0.0562 ? 2.9843+-0.2171 ? might be 1.0403x slower object-closure-call 4.7980+-0.0666 ? 4.8828+-0.2007 ? might be 1.0177x slower object-get-own-property-symbols-on-large-array 3.8921+-0.4617 3.8208+-0.2094 might be 1.0187x faster object-test 2.6859+-0.0219 ? 2.7470+-0.1606 ? might be 1.0227x slower obvious-sink-pathology-taken 100.4803+-0.9445 ? 102.3992+-4.4146 ? might be 1.0191x slower obvious-sink-pathology 95.6542+-3.7173 ? 97.4943+-4.1099 ? might be 1.0192x slower obviously-elidable-new-object 29.6540+-1.7499 28.8183+-0.9666 might be 1.0290x faster plus-boolean-arith 2.4147+-0.0739 2.3815+-0.0326 might be 1.0140x faster plus-boolean-double 3.1518+-0.1955 ? 3.1730+-0.2041 ? plus-boolean 2.5930+-0.0467 2.5906+-0.1468 poly-chain-access-different-prototypes-simple 3.2790+-0.1050 3.2437+-0.1120 might be 1.0109x faster poly-chain-access-different-prototypes 2.8547+-0.0341 ? 2.9502+-0.1692 ? might be 1.0334x slower poly-chain-access-simpler 3.2599+-0.0990 3.2086+-0.0691 might be 1.0160x faster poly-chain-access 3.3028+-0.2138 ? 3.3071+-0.1569 ? poly-stricteq 49.3000+-1.2059 ? 49.7143+-4.0754 ? polymorphic-array-call 1.1692+-0.0422 1.1622+-0.1316 polymorphic-get-by-id 2.8282+-0.0693 ? 2.9143+-0.1753 ? might be 1.0305x slower polymorphic-put-by-id 24.5225+-0.9868 ? 25.2138+-0.6557 ? might be 1.0282x slower polymorphic-put-by-val-with-string 25.5485+-1.0072 ? 25.8920+-0.5061 ? might be 1.0134x slower polymorphic-put-by-val-with-symbol 26.9161+-3.1024 25.8444+-0.9545 might be 1.0415x faster polymorphic-structure 13.7256+-0.2925 ? 13.9382+-0.6701 ? might be 1.0155x slower polyvariant-monomorphic-get-by-id 6.4048+-0.8124 ? 6.8221+-1.6161 ? might be 1.0651x slower proto-getter-access 8.3434+-0.1927 ? 8.7647+-0.6950 ? might be 1.0505x slower prototype-access-with-mutating-prototype 5.5140+-0.2439 ? 5.5255+-0.3280 ? put-by-id-replace-and-transition 7.4097+-0.3363 ? 7.5705+-0.2344 ? might be 1.0217x slower put-by-id-slightly-polymorphic 2.6052+-0.0367 ? 2.6405+-0.0432 ? might be 1.0135x slower put-by-id 9.8137+-0.6639 9.6863+-0.5898 might be 1.0132x faster put-by-val-direct 0.3308+-0.0061 ? 0.3314+-0.0220 ? put-by-val-large-index-blank-indexing-type 5.3942+-0.5202 5.3632+-0.5994 put-by-val-machine-int 2.2728+-0.1572 ? 2.2760+-0.2796 ? put-by-val-with-string-replace-and-transition 9.9028+-0.2141 9.7835+-0.1142 might be 1.0122x faster put-by-val-with-string-slightly-polymorphic 2.9301+-0.2435 2.8995+-0.0922 might be 1.0105x faster put-by-val-with-string 9.9100+-0.1848 ? 10.0553+-0.2667 ? might be 1.0147x slower put-by-val-with-symbol-replace-and-transition 11.3708+-0.6768 ? 11.4318+-0.2460 ? put-by-val-with-symbol-slightly-polymorphic 3.1978+-0.2464 3.1544+-0.0269 might be 1.0138x faster put-by-val-with-symbol 9.9905+-0.4642 ? 10.1990+-0.5719 ? might be 1.0209x slower rare-osr-exit-on-local 14.8854+-0.4985 ? 14.9319+-0.0427 ? register-pressure-from-osr 17.0052+-0.6850 16.8113+-0.2335 might be 1.0115x faster repeat-multi-get-by-offset 22.1315+-0.4095 21.8903+-0.4884 might be 1.0110x faster setter-prototype 7.6112+-0.1311 ? 7.9045+-0.6543 ? might be 1.0385x slower setter 5.2043+-0.2915 ? 5.8081+-1.9893 ? might be 1.1160x slower simple-activation-demo 25.2322+-1.1894 25.0563+-0.8716 simple-getter-access 10.5020+-0.1085 ? 10.8397+-0.4613 ? might be 1.0322x slower simple-poly-call-nested 8.4013+-0.5934 ? 8.6512+-0.7781 ? might be 1.0298x slower simple-poly-call 1.2472+-0.1697 1.1693+-0.0448 might be 1.0666x faster sin-boolean 18.7330+-0.6632 ? 19.5982+-2.6864 ? might be 1.0462x slower singleton-scope 56.2826+-1.3003 55.8004+-0.2202 sink-function 9.4662+-0.4476 ? 9.7155+-0.4840 ? might be 1.0263x slower sink-huge-activation 16.6417+-1.0626 ? 17.1593+-1.1199 ? might be 1.0311x slower sinkable-new-object-dag 54.4528+-1.5822 54.3275+-1.2257 sinkable-new-object-taken 44.4813+-0.7230 44.1118+-1.3918 sinkable-new-object 30.2390+-1.0944 29.7305+-0.7087 might be 1.0171x faster slow-array-profile-convergence 2.5305+-0.2305 2.4818+-0.2254 might be 1.0197x faster slow-convergence 2.3052+-0.1725 ? 2.3788+-0.2427 ? might be 1.0319x slower slow-ternaries 17.7302+-0.6771 ? 18.7717+-2.9550 ? might be 1.0587x slower sorting-benchmark 17.1846+-0.6074 ? 17.2240+-0.5126 ? sparse-conditional 1.1235+-0.0976 1.1027+-0.0534 might be 1.0189x faster splice-to-remove 12.7888+-1.0544 ? 12.7957+-1.4742 ? string-char-code-at 14.3842+-0.0882 ? 14.6514+-0.6229 ? might be 1.0186x slower string-concat-object 2.2728+-0.3274 2.0866+-0.3451 might be 1.0892x faster string-concat-pair-object 1.9673+-0.1521 ? 2.1064+-0.1825 ? might be 1.0707x slower string-concat-pair-simple 9.3093+-0.4821 9.3093+-0.5101 string-concat-simple 9.1638+-0.2796 ? 9.2353+-0.4552 ? string-cons-repeat 6.4625+-0.2712 ? 6.5366+-0.0532 ? might be 1.0115x slower string-cons-tower 6.6470+-0.2653 ? 6.7004+-0.2722 ? string-equality 15.5760+-0.2399 ? 16.4789+-2.9705 ? might be 1.0580x slower string-get-by-val-big-char 6.8549+-0.3630 6.7303+-0.0759 might be 1.0185x faster string-get-by-val-out-of-bounds-insane 3.3106+-0.3256 3.2628+-0.2144 might be 1.0147x faster string-get-by-val-out-of-bounds 4.1352+-0.1314 4.0615+-0.1919 might be 1.0181x faster string-get-by-val 2.8570+-0.1857 2.8516+-0.0865 string-hash 1.8170+-0.0291 1.8091+-0.0347 string-long-ident-equality 14.0700+-0.8734 ^ 12.5887+-0.3730 ^ definitely 1.1177x faster string-out-of-bounds 9.8864+-0.2354 ? 10.4703+-0.5968 ? might be 1.0591x slower string-repeat-arith 27.1256+-0.3945 ? 27.6539+-0.7851 ? might be 1.0195x slower string-sub 52.1514+-1.0280 ? 53.3043+-1.1536 ? might be 1.0221x slower string-test 2.8203+-0.0988 2.7872+-0.0740 might be 1.0119x faster string-var-equality 27.3907+-2.0776 25.3070+-0.5394 might be 1.0823x faster structure-hoist-over-transitions 2.3138+-0.1852 ? 2.4303+-0.1183 ? might be 1.0503x slower substring-concat-weird 36.9525+-2.6178 ? 37.2427+-3.5895 ? substring-concat 40.2090+-1.4453 39.7189+-1.4179 might be 1.0123x faster substring 45.4710+-0.6038 ? 45.9222+-1.6579 ? switch-char-constant 2.6689+-0.0318 ? 2.6865+-0.1020 ? switch-char 5.3908+-0.3552 ? 6.5712+-1.2822 ? might be 1.2190x slower switch-constant 7.0085+-0.7191 ? 7.4216+-0.1992 ? might be 1.0589x slower switch-string-basic-big-var 14.7617+-1.9152 14.2913+-0.2913 might be 1.0329x faster switch-string-basic-big 14.6921+-0.3795 ? 15.2847+-1.4608 ? might be 1.0403x slower switch-string-basic-var 13.6546+-0.8759 ? 13.7850+-1.1219 ? switch-string-basic 12.7780+-0.5445 ? 12.8995+-0.4015 ? switch-string-big-length-tower-var 18.7791+-2.2050 17.9701+-0.3237 might be 1.0450x faster switch-string-length-tower-var 13.3517+-0.3410 ? 13.5579+-0.3187 ? might be 1.0154x slower switch-string-length-tower 12.2167+-0.3505 12.2010+-0.3850 switch-string-short 12.2465+-0.3509 ? 12.5642+-1.5012 ? might be 1.0259x slower switch 10.9247+-0.7051 10.9243+-1.0789 tear-off-arguments-simple 3.0260+-0.1670 ? 3.1101+-0.2674 ? might be 1.0278x slower tear-off-arguments 4.0435+-0.0686 ? 4.1039+-0.2575 ? might be 1.0149x slower temporal-structure 12.1691+-0.4488 12.0963+-0.3884 to-int32-boolean 12.9985+-0.5109 12.7478+-0.2835 might be 1.0197x faster try-catch-get-by-val-cloned-arguments 14.0524+-0.5049 14.0135+-0.3976 try-catch-get-by-val-direct-arguments 6.2744+-0.1099 ? 6.3130+-0.1435 ? try-catch-get-by-val-scoped-arguments 7.3967+-0.2766 ? 8.1035+-1.1185 ? might be 1.0956x slower typed-array-get-set-by-val-profiling 28.7735+-3.8192 27.6875+-2.2169 might be 1.0392x faster undefined-property-access 232.7134+-4.7083 230.1381+-2.8006 might be 1.0112x faster undefined-test 2.9395+-0.1248 2.8791+-0.0534 might be 1.0210x faster unprofiled-licm 14.5088+-0.6339 13.9561+-0.8632 might be 1.0396x faster varargs-call 14.0327+-1.4022 13.8377+-0.8318 might be 1.0141x faster varargs-construct-inline 22.8644+-3.0339 22.2543+-1.9204 might be 1.0274x faster varargs-construct 20.1953+-0.4762 ? 20.3165+-0.6016 ? varargs-inline 8.6763+-0.4067 8.6213+-0.1612 varargs-strict-mode 9.0448+-0.3472 ? 9.1063+-0.4895 ? varargs 9.0218+-0.1773 ? 9.2488+-0.4557 ? might be 1.0252x slower weird-inlining-const-prop 2.0393+-0.2165 1.9443+-0.1024 might be 1.0489x faster <geometric> 7.8545+-0.0064 ? 7.8669+-0.0670 ? might be 1.0016x slower master ic Geomean of preferred means: <scaled-result> 25.6843+-0.2093 25.5263+-0.2422 might be 1.0062x faster
Geoffrey Garen
Comment 4 2015-08-24 11:08:02 PDT
Comment on attachment 259757 [details] Patch View in context: https://bugs.webkit.org/attachment.cgi?id=259757&action=review r=me > Source/JavaScriptCore/jit/JITOperations.cpp:614 > + // Seems generic property access site. => Seem like a > Source/JavaScriptCore/jit/JITOperations.cpp:694 > + // Seems generic property access site. => Seems like a > Source/JavaScriptCore/jit/JITOperations.cpp:1641 > + // Seems generic property access site. => Seems like a
Yusuke Suzuki
Comment 5 2015-08-24 11:09:33 PDT
Comment on attachment 259757 [details] Patch View in context: https://bugs.webkit.org/attachment.cgi?id=259757&action=review Thank you for your review! >> Source/JavaScriptCore/jit/JITOperations.cpp:614 >> + // Seems generic property access site. > > => Seem like a Fixed. >> Source/JavaScriptCore/jit/JITOperations.cpp:694 >> + // Seems generic property access site. > > => Seems like a Fixed. >> Source/JavaScriptCore/jit/JITOperations.cpp:1641 >> + // Seems generic property access site. > > => Seems like a Fixed.
Yusuke Suzuki
Comment 6 2015-08-24 13:26:18 PDT
Note You need to log in before you can comment on or make changes to this bug.