Bug 151882 - Having a bad time has a really awful time when it runs at the same time as the JIT
Summary: Having a bad time has a really awful time when it runs at the same time as th...
Status: RESOLVED FIXED
Alias: None
Product: WebKit
Classification: Unclassified
Component: JavaScriptCore (show other bugs)
Version: WebKit Nightly Build
Hardware: All All
: P2 Normal
Assignee: Filip Pizlo
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2015-12-04 13:24 PST by Filip Pizlo
Modified: 2015-12-07 02:05 PST (History)
13 users (show)

See Also:


Attachments
the patch (10.27 KB, patch)
2015-12-04 13:46 PST, Filip Pizlo
ggaren: review+
Details | Formatted Diff | Diff

Note You need to log in before you can comment on or make changes to this bug.
Description Filip Pizlo 2015-12-04 13:24:06 PST
I'll get it right this time.
Comment 1 Filip Pizlo 2015-12-04 13:46:06 PST
Created attachment 266656 [details]
the patch

Not yet ready for review.  I haven't tested performance.
Comment 2 Filip Pizlo 2015-12-04 14:09:19 PST
Performance is OK:


Benchmark report for SunSpider, LongSpider, V8Spider, Octane, Kraken, JSRegress, AsmBench, and CompressionBench on shakezilla (MacBookPro11,3).

VMs tested:
"TipOfTree" at /Volumes/Data/secondary/OpenSource/WebKitBuild/Release/jsc (r193428)
"FixHaveABadTime" at /Volumes/Data/primary/OpenSource/WebKitBuild/Release/jsc (r193428)

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.

                                                        TipOfTree              FixHaveABadTime                                  
SunSpider:
   3d-cube                                            4.6265+-0.0814     ?      4.6679+-0.2018        ?
   3d-morph                                           5.4112+-0.0928     ?      5.5238+-0.1661        ? might be 1.0208x slower
   3d-raytrace                                        5.4405+-0.4606            5.3427+-0.1928          might be 1.0183x faster
   access-binary-trees                                2.2965+-0.3681            2.1678+-0.0518          might be 1.0594x faster
   access-fannkuch                                    6.3060+-1.4965            6.0122+-0.4284          might be 1.0489x faster
   access-nbody                                       2.6048+-0.1077            2.5479+-0.0724          might be 1.0223x faster
   access-nsieve                                      3.4655+-0.1072     ?      3.7732+-0.4286        ? might be 1.0888x slower
   bitops-3bit-bits-in-byte                           1.1697+-0.0555     ?      1.3145+-0.3988        ? might be 1.1237x slower
   bitops-bits-in-byte                                3.2300+-0.1001            3.1807+-0.0843          might be 1.0155x faster
   bitops-bitwise-and                                 2.0576+-0.1289            2.0057+-0.0335          might be 1.0259x faster
   bitops-nsieve-bits                                 3.0092+-0.0449     ?      3.2389+-0.3290        ? might be 1.0763x slower
   controlflow-recursive                              2.5463+-0.1747            2.5143+-0.2254          might be 1.0127x faster
   crypto-aes                                         4.3011+-0.6112            4.0199+-0.0741          might be 1.0700x faster
   crypto-md5                                         2.7002+-0.5881            2.6488+-0.2337          might be 1.0194x faster
   crypto-sha1                                        2.5884+-0.1638            2.4325+-0.1034          might be 1.0641x faster
   date-format-tofte                                  7.3014+-0.2503     ?      7.5518+-1.0063        ? might be 1.0343x slower
   date-format-xparb                                  4.7044+-0.1022     ?      4.7310+-0.0698        ?
   math-cordic                                        2.8053+-0.0438     ?      2.8490+-0.0812        ? might be 1.0156x slower
   math-partial-sums                                  4.8169+-0.1631            4.7829+-0.1042        
   math-spectral-norm                                 2.0085+-0.0896            1.9386+-0.0708          might be 1.0360x faster
   regexp-dna                                         6.7376+-0.6833            6.3345+-0.1416          might be 1.0636x faster
   string-base64                                      4.4106+-0.2268     ?      4.4810+-0.5324        ? might be 1.0159x slower
   string-fasta                                       5.8576+-0.1597     ?      6.1043+-0.2875        ? might be 1.0421x slower
   string-tagcloud                                    8.1486+-0.2592     ?      8.2477+-0.4584        ? might be 1.0122x slower
   string-unpack-code                                18.2603+-0.3592     ?     18.5851+-1.4776        ? might be 1.0178x slower
   string-validate-input                              4.5050+-0.1230     ?      4.7185+-0.5074        ? might be 1.0474x slower

   <arithmetic>                                       4.6658+-0.0820     ?      4.6814+-0.0637        ? might be 1.0033x slower

                                                        TipOfTree              FixHaveABadTime                                  
LongSpider:
   3d-cube                                          814.7893+-5.0963     ?    815.1359+-4.3252        ?
   3d-morph                                        1497.2723+-10.3670        1490.1685+-7.5221        
   3d-raytrace                                      606.3596+-5.1380     ?    607.9840+-5.1437        ?
   access-binary-trees                              798.6815+-5.0139          795.3024+-6.1130        
   access-fannkuch                                  292.5050+-5.0013     ?    296.3536+-6.5066        ? might be 1.0132x slower
   access-nbody                                     519.3337+-14.4155         511.4681+-2.5740          might be 1.0154x faster
   access-nsieve                                    379.8369+-15.2334    ?    385.3161+-12.0632       ? might be 1.0144x slower
   bitops-3bit-bits-in-byte                          37.6090+-8.8154           34.1882+-0.7167          might be 1.1001x faster
   bitops-bits-in-byte                               78.2749+-8.0269     ?     81.5000+-7.6188        ? might be 1.0412x slower
   bitops-nsieve-bits                               404.0483+-7.1947     ?    404.7213+-8.1436        ?
   controlflow-recursive                            447.4032+-2.4949          444.9507+-6.0379        
   crypto-aes                                       560.6637+-3.4252          558.4822+-11.4368       
   crypto-md5                                       550.7861+-2.8919     ?    557.2704+-5.9702        ? might be 1.0118x slower
   crypto-sha1                                      670.4641+-11.6228         666.4327+-6.1903        
   date-format-tofte                                559.8502+-9.6688          553.3665+-5.7755          might be 1.0117x faster
   date-format-xparb                                655.5972+-1.7382          654.5094+-7.9564        
   hash-map                                         149.9114+-1.8153     ?    150.2058+-1.9982        ?
   math-cordic                                      483.3775+-1.5878     ?    484.7516+-4.6239        ?
   math-partial-sums                                464.9016+-20.7742         461.8130+-5.5670        
   math-spectral-norm                               549.0736+-2.2869     ?    551.6769+-4.1228        ?
   string-base64                                    375.4391+-3.3897     ?    380.9343+-7.1083        ? might be 1.0146x slower
   string-fasta                                     360.1540+-13.7786    ?    360.3609+-6.0731        ?
   string-tagcloud                                  174.5063+-0.6822     ?    176.4587+-3.5405        ? might be 1.0112x slower

   <geometric>                                      396.9018+-4.8247          396.5953+-1.1172          might be 1.0008x faster

                                                        TipOfTree              FixHaveABadTime                                  
V8Spider:
   crypto                                            51.9793+-2.7477     ?     52.1801+-3.8593        ?
   deltablue                                         77.3474+-2.3910     ?     78.4340+-4.4975        ? might be 1.0140x slower
   earley-boyer                                      42.9983+-1.6687     ?     43.5296+-1.6604        ? might be 1.0124x slower
   raytrace                                          29.1848+-1.8780     ?     30.5902+-2.1353        ? might be 1.0482x slower
   regexp                                            62.3164+-1.7697     ?     62.7887+-2.8121        ?
   richards                                          51.6894+-1.6568     ?     53.6152+-2.2467        ? might be 1.0373x slower
   splay                                             38.6515+-1.4191           37.8382+-1.1800          might be 1.0215x faster

   <geometric>                                       48.4347+-0.5013     ?     49.1182+-1.0174        ? might be 1.0141x slower

                                                        TipOfTree              FixHaveABadTime                                  
Octane:
   encrypt                                           0.15676+-0.00461          0.15581+-0.00368       
   decrypt                                           2.90333+-0.05134          2.88541+-0.02345       
   deltablue                                x2       0.14298+-0.02081          0.13848+-0.00199         might be 1.0325x faster
   earley                                            0.28263+-0.00264    ?     0.28473+-0.00162       ?
   boyer                                             4.32776+-0.06321    ?     4.36071+-0.08449       ?
   navier-stokes                            x2       4.82578+-0.02804    ?     4.82904+-0.01861       ?
   raytrace                                 x2       0.85553+-0.00846          0.85026+-0.00448       
   richards                                 x2       0.08726+-0.00191    ?     0.08765+-0.00118       ?
   splay                                    x2       0.35815+-0.00486          0.35459+-0.00362         might be 1.0100x faster
   regexp                                   x2      24.71603+-0.33356    ?    25.13240+-0.75541       ? might be 1.0168x slower
   pdfjs                                    x2      37.88894+-0.47309         37.77564+-0.38864       
   mandreel                                 x2      42.95863+-1.09026    ?    43.02200+-0.49352       ?
   gbemu                                    x2      31.66432+-2.77180         29.66118+-0.32451         might be 1.0675x faster
   closure                                           0.58602+-0.00683    ?     0.58677+-0.00357       ?
   jquery                                            7.38007+-0.02069    ?     7.43754+-0.04320       ?
   box2d                                    x2       9.15746+-0.12026    ?     9.21716+-0.10905       ?
   zlib                                     x2     385.36054+-16.73333       382.45790+-13.40567      
   typescript                               x2     731.06698+-112.98063      679.46102+-5.84942         might be 1.0760x faster

   <geometric>                                       5.38338+-0.10386          5.33141+-0.00931         might be 1.0097x faster

                                                        TipOfTree              FixHaveABadTime                                  
Kraken:
   ai-astar                                          132.999+-13.238           127.697+-2.451           might be 1.0415x faster
   audio-beat-detection                               49.293+-0.348      ?      49.619+-0.497         ?
   audio-dft                                          97.313+-2.179             97.153+-2.638         
   audio-fft                                          35.473+-0.854      ?      35.627+-1.031         ?
   audio-oscillator                                   58.407+-1.142      ?      59.168+-3.048         ? might be 1.0130x slower
   imaging-darkroom                                   60.098+-1.266             59.889+-0.375         
   imaging-desaturate                                 48.137+-0.589      ?      48.421+-0.572         ?
   imaging-gaussian-blur                              88.598+-1.800             87.571+-2.062           might be 1.0117x faster
   json-parse-financial                               38.053+-0.387      ?      38.507+-1.120         ? might be 1.0119x slower
   json-stringify-tinderbox                           23.418+-1.066             22.799+-0.449           might be 1.0271x faster
   stanford-crypto-aes                                43.623+-1.522      ?      43.759+-1.325         ?
   stanford-crypto-ccm                                36.860+-2.009      ?      37.345+-1.405         ? might be 1.0132x slower
   stanford-crypto-pbkdf2                             98.051+-1.817      ?      98.719+-2.491         ?
   stanford-crypto-sha256-iterative                   37.550+-1.113      ?      37.747+-1.374         ?

   <arithmetic>                                       60.562+-1.074             60.287+-0.317           might be 1.0046x faster

                                                        TipOfTree              FixHaveABadTime                                  
JSRegress:
   abc-forward-loop-equal                            30.1322+-1.3661     ?     30.7639+-1.2361        ? might be 1.0210x slower
   abc-postfix-backward-loop                         30.1215+-1.0399     ?     30.4857+-0.3970        ? might be 1.0121x slower
   abc-simple-backward-loop                          29.5752+-0.9108     ?     29.9264+-0.5045        ? might be 1.0119x slower
   abc-simple-forward-loop                           29.2525+-1.2255     ?     30.0510+-1.4475        ? might be 1.0273x slower
   abc-skippy-loop                                   22.2823+-1.9941           21.7677+-0.7434          might be 1.0236x faster
   abs-boolean                                        2.5964+-0.2889            2.4926+-0.0640          might be 1.0417x faster
   adapt-to-double-divide                            16.6478+-0.9750     ?     16.7989+-0.5186        ?
   aliased-arguments-getbyval                         1.2558+-0.0701            1.1847+-0.0375          might be 1.0600x faster
   allocate-big-object                                2.6897+-0.1190            2.4059+-0.1815          might be 1.1179x faster
   arguments-named-and-reflective                    12.1578+-3.0185           10.5727+-0.3637          might be 1.1499x faster
   arguments-out-of-bounds                           10.8231+-0.2793     ?     11.5318+-1.2473        ? might be 1.0655x slower
   arguments-strict-mode                             10.0608+-0.4707            9.7955+-0.4086          might be 1.0271x faster
   arguments                                          8.7599+-0.4417            8.6665+-0.2407          might be 1.0108x faster
   arity-mismatch-inlining                            0.8846+-0.0203     ?      0.9344+-0.0940        ? might be 1.0563x slower
   array-access-polymorphic-structure                 7.3519+-0.2008     ?      7.6230+-0.4657        ? might be 1.0369x slower
   array-nonarray-polymorhpic-access                 24.7501+-1.2275     ?     25.0380+-0.9785        ? might be 1.0116x slower
   array-prototype-every                             76.3396+-1.8681           75.6656+-1.4694        
   array-prototype-forEach                           73.8610+-0.8239     ?     75.7705+-1.6997        ? might be 1.0259x slower
   array-prototype-map                               83.9255+-2.2356     ?     84.0771+-1.7482        ?
   array-prototype-reduce                            73.4764+-2.5240           72.3269+-1.5497          might be 1.0159x faster
   array-prototype-reduceRight                       72.7973+-0.6911     ?     73.6764+-2.0102        ? might be 1.0121x slower
   array-prototype-some                              75.1159+-1.0362     ?     75.2390+-1.4290        ?
   array-splice-contiguous                           25.1567+-3.1960           24.3128+-0.4037          might be 1.0347x faster
   array-with-double-add                              3.6100+-0.1331            3.5353+-0.0409          might be 1.0211x faster
   array-with-double-increment                        3.2132+-0.1076            3.1582+-0.0299          might be 1.0174x faster
   array-with-double-mul-add                          4.3829+-0.0522     ?      4.4202+-0.1107        ?
   array-with-double-sum                              3.3010+-0.1802            3.2991+-0.1680        
   array-with-int32-add-sub                           6.2327+-0.2128     ?      6.2476+-0.2383        ?
   array-with-int32-or-double-sum                     3.3154+-0.0674            3.2995+-0.1233        
   ArrayBuffer-DataView-alloc-large-long-lived   
                                                     29.2995+-8.8801           26.7764+-0.9093          might be 1.0942x faster
   ArrayBuffer-DataView-alloc-long-lived             12.0307+-0.4106     ?     12.2861+-0.7996        ? might be 1.0212x slower
   ArrayBuffer-Int32Array-byteOffset                  3.5576+-0.0959     ?      4.1005+-1.3524        ? might be 1.1526x slower
   ArrayBuffer-Int8Array-alloc-large-long-lived   
                                                     26.2618+-0.6219     ?     26.4215+-0.7158        ?
   ArrayBuffer-Int8Array-alloc-long-lived-buffer   
                                                     19.4521+-0.6306     ?     19.7951+-1.3965        ? might be 1.0176x slower
   ArrayBuffer-Int8Array-alloc-long-lived            11.3927+-0.8287           11.0737+-0.4032          might be 1.0288x faster
   ArrayBuffer-Int8Array-alloc                        9.8278+-0.6378            9.5295+-0.2669          might be 1.0313x faster
   arrowfunction-call                                10.8807+-0.1784     ?     10.9379+-0.1861        ?
   asmjs_bool_bug                                     7.6265+-0.4434            7.4852+-0.0967          might be 1.0189x faster
   assign-custom-setter-polymorphic                   2.5675+-0.5694            2.3503+-0.0961          might be 1.0924x faster
   assign-custom-setter                               3.4685+-0.1425            3.4212+-0.1067          might be 1.0138x faster
   basic-set                                          7.6326+-0.4047     ?      7.7495+-0.5303        ? might be 1.0153x slower
   big-int-mul                                        3.4594+-0.1045     ?      3.4751+-0.0437        ?
   boolean-test                                       3.0751+-0.2322     ?      3.0760+-0.1218        ?
   branch-fold                                        3.8863+-0.5386            3.7133+-0.1880          might be 1.0466x faster
   branch-on-string-as-boolean                       16.8364+-0.9176     ?     17.0212+-0.3603        ? might be 1.0110x slower
   by-val-generic                                     2.5649+-0.1239            2.5504+-0.1987        
   call-spread-apply                                 29.0836+-0.8641           28.6434+-0.5410          might be 1.0154x faster
   call-spread-call                                  25.2570+-2.4380           24.5729+-1.8173          might be 1.0278x faster
   captured-assignments                               0.4723+-0.0148     ?      0.5582+-0.2095        ? might be 1.1819x slower
   cast-int-to-double                                 5.1618+-0.1686     ?      5.1620+-0.1976        ?
   cell-argument                                      6.0861+-0.7472            6.0195+-0.4260          might be 1.0111x faster
   cfg-simplify                                       2.9403+-0.1019            2.8992+-0.0511          might be 1.0142x faster
   chain-getter-access                                8.3966+-0.1897            8.2987+-0.3428          might be 1.0118x faster
   cmpeq-obj-to-obj-other                            12.4406+-0.7489           11.8656+-1.3081          might be 1.0485x faster
   constant-test                                      4.7801+-0.1669     ?      4.8866+-0.1751        ? might be 1.0223x slower
   create-lots-of-functions                          10.0356+-0.6732     ?     10.0519+-0.7552        ?
   cse-new-array-buffer                               2.4510+-0.0551     ?      2.4835+-0.0702        ? might be 1.0133x slower
   cse-new-array                                      2.5229+-0.1084     ?      2.5407+-0.1947        ?
   custom-setter-getter-as-put-get-by-id              0.5463+-0.0887            0.5109+-0.0074          might be 1.0693x faster
   DataView-custom-properties                        31.1537+-1.2413           31.0021+-0.5536        
   delay-tear-off-arguments-strictmode               13.1677+-0.3482     ?     13.9482+-1.0940        ? might be 1.0593x slower
   deltablue-varargs                                164.8975+-5.9332     ?    165.1125+-2.4068        ?
   destructuring-arguments                          164.2359+-5.1090          162.8920+-1.5647        
   destructuring-parameters-overridden-by-function   
                                                      0.4657+-0.0133     ?      0.4734+-0.0243        ? might be 1.0166x slower
   destructuring-swap                                 4.7713+-0.1501     ?      4.8837+-0.2661        ? might be 1.0235x slower
   direct-arguments-getbyval                          1.2657+-0.1356            1.1772+-0.0194          might be 1.0752x faster
   div-boolean-double                                 5.2853+-0.0742     ?      5.4574+-0.3883        ? might be 1.0326x slower
   div-boolean                                        8.1388+-0.1105            8.1311+-0.0644        
   double-get-by-val-out-of-bounds                    4.5207+-0.0883     ?      4.5715+-0.2147        ? might be 1.0112x slower
   double-pollution-getbyval                          8.4202+-0.2090     ?      8.5758+-0.2130        ? might be 1.0185x slower
   double-pollution-putbyoffset                       3.7322+-0.0651            3.7030+-0.1120        
   double-real-use                                   24.6287+-0.8862     ?     25.7397+-2.4478        ? might be 1.0451x slower
   double-to-int32-typed-array-no-inline              2.2186+-0.0521            2.1746+-0.0624          might be 1.0202x faster
   double-to-int32-typed-array                        2.0741+-0.1100     ?      2.2885+-0.4901        ? might be 1.1033x slower
   double-to-uint32-typed-array-no-inline             2.4187+-0.3041            2.3315+-0.1052          might be 1.0374x faster
   double-to-uint32-typed-array                       2.1423+-0.1745     ?      2.1590+-0.2012        ?
   elidable-new-object-dag                           35.0370+-1.6282     ?     35.2459+-0.6833        ?
   elidable-new-object-roflcopter                    32.7841+-2.3874           32.6312+-1.8492        
   elidable-new-object-then-call                     32.8380+-1.3100           32.6296+-0.8486        
   elidable-new-object-tree                          38.3618+-0.9858           37.6353+-0.5743          might be 1.0193x faster
   empty-string-plus-int                              4.7936+-0.1469            4.7494+-0.0597        
   emscripten-cube2hash                              28.9413+-1.2718           28.6537+-2.2784          might be 1.0100x faster
   exit-length-on-plain-object                       16.4740+-0.5130           16.0778+-0.8920          might be 1.0246x faster
   external-arguments-getbyval                        1.4109+-0.4047            1.2008+-0.0517          might be 1.1750x faster
   external-arguments-putbyval                        2.2005+-0.0668     ?      2.2260+-0.0596        ? might be 1.0116x slower
   fixed-typed-array-storage-var-index                1.2638+-0.0422     ?      1.3129+-0.1539        ? might be 1.0389x slower
   fixed-typed-array-storage                          0.9323+-0.0367     ?      0.9388+-0.0103        ?
   Float32Array-matrix-mult                           4.3302+-0.1785     ?      4.4559+-0.2639        ? might be 1.0290x slower
   Float32Array-to-Float64Array-set                  50.6870+-0.9810           49.8850+-2.0209          might be 1.0161x faster
   Float64Array-alloc-long-lived                     61.7568+-1.6909           60.2603+-1.9304          might be 1.0248x faster
   Float64Array-to-Int16Array-set                    59.9610+-1.3008     ?     60.4945+-1.3313        ?
   fold-double-to-int                                12.3905+-0.1484     ?     12.6344+-0.5396        ? might be 1.0197x slower
   fold-get-by-id-to-multi-get-by-offset-rare-int   
                                                     11.3590+-1.3921     ?     11.4015+-0.9762        ?
   fold-get-by-id-to-multi-get-by-offset              9.8805+-0.4730            9.8133+-0.3949        
   fold-multi-get-by-offset-to-get-by-offset   
                                                      8.9971+-0.9889     ?      9.2677+-1.6593        ? might be 1.0301x slower
   fold-multi-get-by-offset-to-poly-get-by-offset   
                                                      8.7304+-0.5709            8.5934+-1.6454          might be 1.0159x faster
   fold-multi-put-by-offset-to-poly-put-by-offset   
                                                     10.1680+-2.3980            9.1187+-1.2688          might be 1.1151x faster
   fold-multi-put-by-offset-to-put-by-offset   
                                                     10.4715+-1.1992     ?     10.5722+-1.5343        ?
   fold-multi-put-by-offset-to-replace-or-transition-put-by-offset   
                                                     10.3168+-1.0534     ?     10.8636+-0.6548        ? might be 1.0530x slower
   fold-put-by-id-to-multi-put-by-offset             11.1741+-1.0630     ?     11.7869+-1.6460        ? might be 1.0548x slower
   fold-put-by-val-with-string-to-multi-put-by-offset   
                                                     10.8947+-0.5155     ?     10.9926+-1.9739        ?
   fold-put-by-val-with-symbol-to-multi-put-by-offset   
                                                     10.6984+-1.2764           10.3977+-0.9508          might be 1.0289x faster
   fold-put-structure                                 7.5305+-0.9506     ?      7.8062+-0.9053        ? might be 1.0366x slower
   for-of-iterate-array-entries                      11.2560+-0.6325           11.0399+-0.2817          might be 1.0196x faster
   for-of-iterate-array-keys                          3.8263+-0.1725            3.6395+-0.2115          might be 1.0513x faster
   for-of-iterate-array-values                        3.5133+-0.1013     ?      3.5382+-0.1631        ?
   fround                                            17.7100+-0.6158           17.6396+-0.3691        
   ftl-library-inlining-dataview                     57.6569+-1.1045           56.7499+-1.6591          might be 1.0160x faster
   ftl-library-inlining                              77.0457+-1.8400           76.2876+-1.2934        
   ftl-object-mul                                   249.5327+-17.0448         237.6401+-3.6946          might be 1.0500x faster
   ftl-object-sub                                   310.3518+-4.0236     ?    311.4880+-10.6757       ?
   function-call                                     11.0163+-0.2556           10.9898+-0.1871        
   function-dot-apply                                 2.0182+-0.0449     ?      2.0812+-0.1490        ? might be 1.0312x slower
   function-test                                      2.8751+-0.1958            2.7697+-0.0992          might be 1.0381x faster
   function-with-eval                                82.6756+-2.2886           82.6165+-2.0450        
   gcse-poly-get-less-obvious                        21.7782+-0.3886     ?     22.8342+-1.5967        ? might be 1.0485x slower
   gcse-poly-get                                     23.1727+-0.8286     ?     23.4139+-0.6746        ? might be 1.0104x slower
   gcse                                               3.4124+-0.0775     ?      3.4950+-0.2468        ? might be 1.0242x slower
   get-by-id-bimorphic-check-structure-elimination-simple   
                                                      2.6124+-0.0440     ?      2.7583+-0.3033        ? might be 1.0558x slower
   get-by-id-bimorphic-check-structure-elimination   
                                                      4.7884+-0.1552            4.7070+-0.0830          might be 1.0173x faster
   get-by-id-chain-from-try-block                     2.5997+-0.0454     ?      2.6479+-0.0739        ? might be 1.0185x slower
   get-by-id-check-structure-elimination              3.8755+-0.0433     ?      4.5163+-1.6121        ? might be 1.1653x slower
   get-by-id-proto-or-self                           16.3519+-1.2111     ?     16.7084+-1.7031        ? might be 1.0218x slower
   get-by-id-quadmorphic-check-structure-elimination-simple   
                                                      2.9261+-0.1046     ?      2.9651+-0.1215        ? might be 1.0133x slower
   get-by-id-self-or-proto                           16.5037+-1.1815     ?     16.5980+-1.4407        ?
   get-by-val-out-of-bounds                           4.4145+-0.1086            4.3451+-0.1414          might be 1.0160x faster
   get-by-val-with-string-bimorphic-check-structure-elimination-simple   
                                                      3.1157+-0.8005            2.8834+-0.3733          might be 1.0806x faster
   get-by-val-with-string-bimorphic-check-structure-elimination   
                                                      6.1749+-0.2815            6.0002+-0.1073          might be 1.0291x faster
   get-by-val-with-string-chain-from-try-block   
                                                      2.6581+-0.0603            2.6558+-0.0665        
   get-by-val-with-string-check-structure-elimination   
                                                      5.6875+-0.5087            5.5810+-0.0786          might be 1.0191x faster
   get-by-val-with-string-proto-or-self              17.0150+-0.8662     ?     17.0332+-1.5114        ?
   get-by-val-with-string-quadmorphic-check-structure-elimination-simple   
                                                      3.1191+-0.0861            3.1001+-0.1044        
   get-by-val-with-string-self-or-proto              17.8250+-1.1209           16.4047+-0.4969          might be 1.0866x faster
   get-by-val-with-symbol-bimorphic-check-structure-elimination-simple   
                                                      3.3580+-0.3405     ?      3.5108+-1.0042        ? might be 1.0455x slower
   get-by-val-with-symbol-bimorphic-check-structure-elimination   
                                                     12.3708+-0.0888     ?     12.4168+-0.1729        ?
   get-by-val-with-symbol-chain-from-try-block   
                                                      2.8561+-0.4339            2.6755+-0.0599          might be 1.0675x faster
   get-by-val-with-symbol-check-structure-elimination   
                                                     11.3817+-0.1478     ?     11.4029+-0.1072        ?
   get-by-val-with-symbol-proto-or-self              17.6340+-1.4909           17.5231+-1.3436        
   get-by-val-with-symbol-quadmorphic-check-structure-elimination-simple   
                                                      3.7382+-0.0785            3.6967+-0.1029          might be 1.0112x faster
   get-by-val-with-symbol-self-or-proto              16.9338+-0.7897           16.7657+-0.7220          might be 1.0100x faster
   get_callee_monomorphic                             2.3902+-0.0806     ?      2.6720+-0.3238        ? might be 1.1179x slower
   get_callee_polymorphic                             3.7194+-0.3307            3.6573+-0.4405          might be 1.0170x faster
   getter-no-activation                               4.9829+-0.3977            4.7826+-0.1256          might be 1.0419x faster
   getter-prototype                                   8.0411+-0.1143            7.9951+-0.1821        
   getter-richards-try-catch                       1006.8602+-8.5908          996.9032+-20.6103       
   getter-richards                                  109.8268+-5.3511     ?    118.7571+-8.2795        ? might be 1.0813x slower
   getter                                             6.0581+-0.6912            5.7689+-0.6810          might be 1.0501x faster
   global-object-access-with-mutating-structure   
                                                      5.5636+-0.1518     ?      5.7445+-0.1711        ? might be 1.0325x slower
   global-var-const-infer-fire-from-opt               0.7364+-0.0593     ?      0.7738+-0.1062        ? might be 1.0508x slower
   global-var-const-infer                             0.6343+-0.0199            0.6330+-0.0110        
   hard-overflow-check-equal                         26.2214+-0.6172     ?     26.6503+-0.8437        ? might be 1.0164x slower
   hard-overflow-check                               27.2172+-0.8467     ?     27.2753+-1.2328        ?
   HashMap-put-get-iterate-keys                      25.9263+-1.7106     ?     26.3619+-1.8016        ? might be 1.0168x slower
   HashMap-put-get-iterate                           27.4174+-0.6832     ?     30.6132+-8.1498        ? might be 1.1166x slower
   HashMap-string-put-get-iterate                    23.7707+-0.6255     ?     24.4837+-0.8736        ? might be 1.0300x slower
   hoist-make-rope                                    9.1542+-1.3390            8.0563+-0.2805          might be 1.1363x faster
   hoist-poly-check-structure-effectful-loop   
                                                      3.5834+-0.0853     ?      3.7327+-0.2067        ? might be 1.0417x slower
   hoist-poly-check-structure                         3.0768+-0.0744     ?      3.1326+-0.0487        ? might be 1.0182x slower
   imul-double-only                                   8.0436+-0.3267            7.6824+-0.5212          might be 1.0470x faster
   imul-int-only                                      8.7725+-0.9682            8.7659+-0.9172        
   imul-mixed                                         7.1217+-0.3304     ?      7.1903+-0.3856        ?
   in-four-cases                                     18.6545+-0.2361     ?     19.0954+-0.8223        ? might be 1.0236x slower
   in-one-case-false                                 10.1552+-0.2214     ?     10.6380+-0.6749        ? might be 1.0475x slower
   in-one-case-true                                  10.6110+-0.5084           10.1614+-0.2845          might be 1.0442x faster
   in-two-cases                                      10.7600+-0.5541           10.5264+-0.2552          might be 1.0222x faster
   indexed-properties-in-objects                      2.7848+-0.0230     ?      2.8327+-0.0640        ? might be 1.0172x slower
   infer-closure-const-then-mov-no-inline             3.6670+-0.1191            3.5978+-0.0403          might be 1.0192x faster
   infer-closure-const-then-mov                      17.3808+-1.0452           16.3253+-0.9275          might be 1.0647x faster
   infer-closure-const-then-put-to-scope-no-inline   
                                                     11.1562+-0.3449           11.0035+-0.4610          might be 1.0139x faster
   infer-closure-const-then-put-to-scope             22.7361+-1.6585     ?     23.7787+-1.3690        ? might be 1.0459x slower
   infer-closure-const-then-reenter-no-inline   
                                                     45.2188+-0.7207           45.1691+-0.7747        
   infer-closure-const-then-reenter                  23.8660+-0.7163           23.1686+-0.5916          might be 1.0301x faster
   infer-constant-global-property                     3.4327+-0.0801     ?      3.5020+-0.1260        ? might be 1.0202x slower
   infer-constant-property                            2.6551+-0.0774     ?      2.7636+-0.2873        ? might be 1.0409x slower
   infer-one-time-closure-ten-vars                    8.2583+-1.0148     ?      8.3385+-1.1764        ?
   infer-one-time-closure-two-vars                    7.2550+-0.2230     ?      7.4054+-0.6526        ? might be 1.0207x slower
   infer-one-time-closure                             7.4498+-0.2221            7.2904+-0.2472          might be 1.0219x faster
   infer-one-time-deep-closure                       10.6131+-0.3799     ?     11.1488+-0.4680        ? might be 1.0505x slower
   inline-arguments-access                            3.7279+-0.0811     ?      3.9032+-0.6041        ? might be 1.0470x slower
   inline-arguments-aliased-access                    3.7131+-0.1496     ?      4.2780+-1.1851        ? might be 1.1521x slower
   inline-arguments-local-escape                      3.8189+-0.3413     ?      3.8897+-0.3096        ? might be 1.0185x slower
   inline-get-scoped-var                              4.7074+-0.2151     ?      4.7450+-0.3438        ?
   inlined-put-by-id-transition                      10.6682+-0.7013           10.4755+-0.7940          might be 1.0184x faster
   inlined-put-by-val-with-string-transition   
                                                     47.2891+-5.9059           43.7875+-1.1215          might be 1.0800x faster
   inlined-put-by-val-with-symbol-transition   
                                                     43.5885+-2.1499     ?     43.8370+-1.4736        ?
   int-or-other-abs-then-get-by-val                   4.6393+-0.2568            4.5793+-0.1297          might be 1.0131x faster
   int-or-other-abs-zero-then-get-by-val             16.2547+-0.7756           15.6610+-0.1451          might be 1.0379x faster
   int-or-other-add-then-get-by-val                   4.5085+-0.5578            4.2666+-0.1660          might be 1.0567x faster
   int-or-other-add                                   5.1711+-0.2025            4.9961+-0.1003          might be 1.0350x faster
   int-or-other-div-then-get-by-val                   3.8892+-0.2027            3.8363+-0.1724          might be 1.0138x faster
   int-or-other-max-then-get-by-val                   3.8996+-0.2044            3.8649+-0.1813        
   int-or-other-min-then-get-by-val                   3.9352+-0.1244            3.8505+-0.1320          might be 1.0220x faster
   int-or-other-mod-then-get-by-val                   3.7153+-0.2109            3.6321+-0.0720          might be 1.0229x faster
   int-or-other-mul-then-get-by-val                   3.6137+-0.0380     ?      3.9141+-0.4295        ? might be 1.0831x slower
   int-or-other-neg-then-get-by-val                   4.1493+-0.1085            4.1407+-0.0665        
   int-or-other-neg-zero-then-get-by-val             17.6705+-3.6069           15.9209+-0.4536          might be 1.1099x faster
   int-or-other-sub-then-get-by-val                   4.1459+-0.1949     ?      4.1982+-0.1683        ? might be 1.0126x slower
   int-or-other-sub                                   3.5035+-0.0907     ?      3.5057+-0.1314        ?
   int-overflow-local                                 4.1654+-0.2427            4.1388+-0.1281        
   Int16Array-alloc-long-lived                       45.2759+-1.3910     ?     45.3420+-1.6248        ?
   Int16Array-bubble-sort-with-byteLength            22.1933+-0.5176     ?     22.9316+-0.9134        ? might be 1.0333x slower
   Int16Array-bubble-sort                            21.4557+-1.1033           21.0347+-0.9085          might be 1.0200x faster
   Int16Array-load-int-mul                            1.5215+-0.0451            1.5114+-0.0355        
   Int16Array-to-Int32Array-set                      45.0546+-0.9621     ?     45.5268+-1.4244        ? might be 1.0105x slower
   Int32Array-alloc-large                            11.9457+-0.5744     ?     13.0739+-0.5879        ? might be 1.0944x slower
   Int32Array-alloc-long-lived                       51.1591+-1.5226           49.0992+-0.8866          might be 1.0420x faster
   Int32Array-alloc                                   3.1429+-0.3172            3.1136+-0.4678        
   Int32Array-Int8Array-view-alloc                    5.9653+-0.3061            5.9143+-0.1196        
   int52-spill                                        4.9307+-0.5306            4.6196+-0.1314          might be 1.0674x faster
   Int8Array-alloc-long-lived                        40.9536+-0.4892     ?     41.3460+-1.0738        ?
   Int8Array-load-with-byteLength                     3.4930+-0.0744            3.4673+-0.0571        
   Int8Array-load                                     3.5711+-0.3076     ?      3.6174+-0.4993        ? might be 1.0130x slower
   integer-divide                                    10.6500+-0.4326           10.4464+-0.2147          might be 1.0195x faster
   integer-modulo                                     1.6259+-0.0536            1.6057+-0.0716          might be 1.0126x faster
   is-boolean-fold-tricky                             3.7377+-0.0617     ?      3.8944+-0.2017        ? might be 1.0419x slower
   is-boolean-fold                                    2.6807+-0.1076     ?      2.6997+-0.0531        ?
   is-function-fold-tricky-internal-function   
                                                     10.1545+-0.6807     ?     11.3162+-3.8319        ? might be 1.1144x slower
   is-function-fold-tricky                            4.1199+-0.1625     ?      4.1831+-0.3906        ? might be 1.0154x slower
   is-function-fold                                   2.7283+-0.0380     ?      2.7467+-0.2365        ?
   is-number-fold-tricky                              4.0315+-0.0693            3.9811+-0.1124          might be 1.0127x faster
   is-number-fold                                     2.8931+-0.2758            2.6635+-0.0454          might be 1.0862x faster
   is-object-or-null-fold-functions                   2.8556+-0.4232            2.6926+-0.0584          might be 1.0605x faster
   is-object-or-null-fold-less-tricky                 3.9926+-0.0366     ?      4.0204+-0.0590        ?
   is-object-or-null-fold-tricky                      4.8228+-0.1965            4.7923+-0.0948        
   is-object-or-null-fold                             2.7559+-0.1213            2.6919+-0.0435          might be 1.0238x faster
   is-object-or-null-trickier-function                4.0791+-0.1144     ?      4.2086+-0.3982        ? might be 1.0318x slower
   is-object-or-null-trickier-internal-function   
                                                     10.0790+-0.3027            9.7434+-0.3407          might be 1.0344x faster
   is-object-or-null-tricky-function                  4.7602+-1.2147            4.0673+-0.1951          might be 1.1704x faster
   is-object-or-null-tricky-internal-function   
                                                      7.6009+-0.4046            7.4367+-0.1118          might be 1.0221x faster
   is-string-fold-tricky                              4.0232+-0.1932     ?      4.0405+-0.1736        ?
   is-string-fold                                     2.6977+-0.0673            2.6696+-0.0372          might be 1.0105x faster
   is-undefined-fold-tricky                           3.3635+-0.0757     ?      3.5208+-0.3255        ? might be 1.0468x slower
   is-undefined-fold                                  2.7272+-0.1154            2.6659+-0.0741          might be 1.0230x faster
   JSONP-negative-0                                   0.3017+-0.0530            0.2858+-0.0236          might be 1.0555x faster
   large-int-captured                                 4.2212+-0.0995            4.0815+-0.1098          might be 1.0342x faster
   large-int-neg                                     14.4345+-0.6066     ?     14.9257+-1.7991        ? might be 1.0340x slower
   large-int                                         13.1518+-0.2619           13.0269+-0.2933        
   load-varargs-elimination                          20.9637+-0.7354           20.8700+-0.6568        
   logical-not-weird-types                            3.1479+-0.2238            3.0979+-0.1258          might be 1.0162x faster
   logical-not                                        4.5065+-0.1320     ?      4.9751+-1.2324        ? might be 1.1040x slower
   lots-of-fields                                     9.7729+-0.5110            9.7159+-0.0639        
   make-indexed-storage                               2.9403+-0.3270            2.8333+-0.1714          might be 1.0378x faster
   make-rope-cse                                      3.7690+-0.1207     ?      3.9782+-0.1958        ? might be 1.0555x slower
   marsaglia-larger-ints                             32.0185+-0.6958     ?     32.0925+-1.0580        ?
   marsaglia-osr-entry                               21.6153+-0.6194     ?     21.9233+-0.9714        ? might be 1.0143x slower
   math-with-out-of-bounds-array-values              21.6850+-0.6862     ?     21.8440+-0.7324        ?
   max-boolean                                        2.6462+-0.0531     ?      2.7584+-0.1623        ? might be 1.0424x slower
   method-on-number                                  16.5376+-0.5572           16.4640+-0.5378        
   min-boolean                                        2.6430+-0.0659     ?      2.7611+-0.1570        ? might be 1.0447x slower
   minus-boolean-double                               3.1277+-0.0456     ?      3.2392+-0.1741        ? might be 1.0356x slower
   minus-boolean                                      2.3480+-0.0497     ?      2.3519+-0.0468        ?
   misc-strict-eq                                    30.0936+-1.0696           30.0927+-1.5630        
   mod-boolean-double                                11.2639+-0.3590           11.2450+-0.4783        
   mod-boolean                                        8.4692+-0.2403            8.3675+-0.1194          might be 1.0122x faster
   mul-boolean-double                                 3.6050+-0.0648            3.5781+-0.0245        
   mul-boolean                                        2.8663+-0.1264     ?      2.9248+-0.1787        ? might be 1.0204x slower
   neg-boolean                                        3.1708+-0.1420            3.0754+-0.0609          might be 1.0310x faster
   negative-zero-divide                               0.3840+-0.0354     ?      0.3947+-0.0212        ? might be 1.0278x slower
   negative-zero-modulo                               0.3975+-0.0872            0.3679+-0.0138          might be 1.0806x faster
   negative-zero-negate                               0.3653+-0.0091            0.3579+-0.0239          might be 1.0207x faster
   nested-function-parsing                           46.2105+-0.8572     ?     46.5100+-0.9401        ?
   new-array-buffer-dead                             88.2043+-0.5560     ?     88.4877+-1.4146        ?
   new-array-buffer-push                              6.7006+-0.2665     ?      6.8978+-0.6492        ? might be 1.0294x slower
   new-array-dead                                    14.5657+-0.8679     ?     15.1468+-1.1530        ? might be 1.0399x slower
   new-array-push                                     4.5248+-0.2613            4.4871+-0.2425        
   no-inline-constructor                             30.5920+-1.2365           30.1595+-0.6218          might be 1.0143x faster
   number-test                                        3.0254+-0.0381     ?      3.0634+-0.1849        ? might be 1.0126x slower
   object-closure-call                                5.0675+-0.3630            4.8656+-0.0993          might be 1.0415x faster
   object-get-own-property-symbols-on-large-array   
                                                      4.2583+-0.1074     ?      4.2756+-0.1740        ?
   object-test                                        2.7727+-0.0789            2.7473+-0.0248        
   obvious-sink-pathology-taken                      97.6997+-1.0905           97.4204+-0.9395        
   obvious-sink-pathology                            30.6306+-1.3404           30.4011+-1.5573        
   obviously-elidable-new-object                     29.3586+-1.7934     ?     29.5815+-1.2909        ?
   plus-boolean-arith                                 2.4094+-0.0317     ?      2.6396+-0.4705        ? might be 1.0955x slower
   plus-boolean-double                                3.1225+-0.1274     ?      3.3410+-0.3707        ? might be 1.0700x slower
   plus-boolean                                       2.7531+-0.3602            2.5507+-0.0615          might be 1.0794x faster
   poly-chain-access-different-prototypes-simple   
                                                      2.6268+-0.0336            2.6159+-0.0606        
   poly-chain-access-different-prototypes             2.5893+-0.0195     ?      2.7285+-0.4051        ? might be 1.0538x slower
   poly-chain-access-simpler                          2.6297+-0.1143     ?      2.6302+-0.0472        ?
   poly-chain-access                                  2.5605+-0.0591     ?      2.5788+-0.1020        ?
   poly-stricteq                                     53.2386+-1.2911           53.0135+-0.9749        
   polymorphic-array-call                             1.3300+-0.0343     ?      1.3344+-0.1006        ?
   polymorphic-get-by-id                              3.0169+-0.3875            2.8641+-0.0464          might be 1.0534x faster
   polymorphic-put-by-id                             25.9185+-1.6083           25.2945+-0.6122          might be 1.0247x faster
   polymorphic-put-by-val-with-string                27.0744+-0.3206     ?     28.7346+-1.3809        ? might be 1.0613x slower
   polymorphic-put-by-val-with-symbol                28.7233+-1.6373           28.2612+-0.9868          might be 1.0164x faster
   polymorphic-structure                             12.8849+-1.0105           12.6584+-0.3276          might be 1.0179x faster
   polyvariant-monomorphic-get-by-id                  7.8937+-1.5898            6.3809+-0.9162          might be 1.2371x faster
   proto-getter-access                                8.2992+-0.2773     ?      8.4213+-0.2824        ? might be 1.0147x slower
   prototype-access-with-mutating-prototype           5.8830+-0.6896            5.5242+-0.1988          might be 1.0650x faster
   put-by-id-replace-and-transition                   8.4335+-0.5774     ?      9.2566+-1.0624        ? might be 1.0976x slower
   put-by-id-slightly-polymorphic                     2.7771+-0.1941            2.7033+-0.0391          might be 1.0273x faster
   put-by-id                                         10.0937+-0.5917           10.0758+-0.8493        
   put-by-val-direct                                  0.3641+-0.0238            0.3589+-0.0135          might be 1.0143x faster
   put-by-val-large-index-blank-indexing-type   
                                                      5.6980+-0.5752     ?      5.7371+-0.6070        ?
   put-by-val-machine-int                             2.7143+-0.1540     ?      2.7340+-0.1378        ?
   put-by-val-with-string-replace-and-transition   
                                                     10.7849+-0.8240     ?     11.1118+-0.9870        ? might be 1.0303x slower
   put-by-val-with-string-slightly-polymorphic   
                                                      3.0102+-0.0411            2.9782+-0.1025          might be 1.0107x faster
   put-by-val-with-string                            10.6618+-0.6264     ?     11.3653+-0.6322        ? might be 1.0660x slower
   put-by-val-with-symbol-replace-and-transition   
                                                     12.5205+-0.6703           12.2457+-0.7502          might be 1.0224x faster
   put-by-val-with-symbol-slightly-polymorphic   
                                                      3.1689+-0.0305            3.1567+-0.0184        
   put-by-val-with-symbol                            11.1058+-0.9080           10.5723+-0.4306          might be 1.0505x faster
   rare-osr-exit-on-local                            14.1798+-0.6940           14.1307+-0.1018        
   raytrace-with-empty-try-catch                      5.5822+-0.2847            5.4397+-0.0748          might be 1.0262x faster
   raytrace-with-try-catch                           10.8249+-0.9441     ?     11.3222+-0.9133        ? might be 1.0459x slower
   register-pressure-from-osr                        16.3572+-0.2269           16.3032+-0.2395        
   repeat-multi-get-by-offset                        20.9683+-0.6551           20.3644+-0.3281          might be 1.0297x faster
   richards-empty-try-catch                          60.7735+-0.8443           60.2592+-2.1860        
   richards-try-catch                               236.8393+-4.6277          236.7333+-3.0964        
   setter-prototype                                   7.7185+-0.1332     ?      8.0754+-0.5170        ? might be 1.0462x slower
   setter                                             5.4272+-0.2812            5.3364+-0.2083          might be 1.0170x faster
   simple-activation-demo                            24.2666+-0.7459     ?     24.6819+-0.6828        ? might be 1.0171x slower
   simple-getter-access                              11.0025+-0.3686           10.9294+-0.3483        
   simple-poly-call-nested                            8.4601+-0.4818     ?      8.5418+-0.4118        ?
   simple-poly-call                                   1.3431+-0.0668            1.2748+-0.0224          might be 1.0536x faster
   sin-boolean                                       19.3708+-1.9812     ?     20.3643+-1.6437        ? might be 1.0513x slower
   singleton-scope                                   56.0975+-0.4842     ?     56.8381+-0.4039        ? might be 1.0132x slower
   sink-function                                      9.8592+-0.7517            9.7241+-0.8378          might be 1.0139x faster
   sink-huge-activation                              16.4606+-1.0532     ?     16.5975+-0.8271        ?
   sinkable-new-object-dag                           52.8740+-1.2748     ?     54.1207+-1.1213        ? might be 1.0236x slower
   sinkable-new-object-taken                         41.7742+-2.6126     ?     42.9224+-1.5638        ? might be 1.0275x slower
   sinkable-new-object                               29.8542+-0.5961     ?     30.2126+-1.3700        ? might be 1.0120x slower
   slow-array-profile-convergence                     2.6265+-0.0323            2.5886+-0.1075          might be 1.0146x faster
   slow-convergence                                   2.5404+-0.1782            2.5278+-0.1421        
   slow-ternaries                                    17.6618+-0.6691     ?     18.0479+-2.0718        ? might be 1.0219x slower
   sorting-benchmark                                 17.4327+-0.5663     ?     17.6689+-0.5321        ? might be 1.0136x slower
   sparse-conditional                                 1.1695+-0.0210     ?      1.2118+-0.0626        ? might be 1.0361x slower
   splice-to-remove                                  12.8482+-0.7841           12.6544+-0.5308          might be 1.0153x faster
   string-char-code-at                               13.0174+-0.1785     ?     13.3518+-0.3785        ? might be 1.0257x slower
   string-concat-object                               2.2516+-0.1362     ?      2.3090+-0.1304        ? might be 1.0255x slower
   string-concat-pair-object                          2.2128+-0.2604     ?      2.4110+-0.5535        ? might be 1.0896x slower
   string-concat-pair-simple                          9.3021+-0.4723     ?      9.4489+-0.4740        ? might be 1.0158x slower
   string-concat-simple                               9.9745+-1.0563            9.5232+-0.5800          might be 1.0474x faster
   string-cons-repeat                                 6.8426+-0.4086            6.7048+-0.4615          might be 1.0206x faster
   string-cons-tower                                  6.9078+-0.4941     ?      7.0073+-0.3108        ? might be 1.0144x slower
   string-equality                                   21.3980+-1.6673           21.0417+-0.7646          might be 1.0169x faster
   string-get-by-val-big-char                         6.5040+-0.1221     ?      6.5188+-0.1480        ?
   string-get-by-val-out-of-bounds-insane             3.1446+-0.1779     ?      3.2617+-0.1653        ? might be 1.0373x slower
   string-get-by-val-out-of-bounds                    3.9770+-0.0349     ?      3.9929+-0.1334        ?
   string-get-by-val                                  2.8026+-0.0353            2.7968+-0.0355        
   string-hash                                        1.8856+-0.0272     ?      1.9063+-0.1186        ? might be 1.0110x slower
   string-long-ident-equality                        15.0896+-0.5393     ?     15.1098+-0.3204        ?
   string-out-of-bounds                              11.5348+-0.4906     ?     11.6157+-0.5419        ?
   string-repeat-arith                               26.0588+-0.4658     ?     26.6868+-1.3811        ? might be 1.0241x slower
   string-rope-with-object                           20.2616+-0.5672           19.9355+-0.7142          might be 1.0164x faster
   string-sub                                        33.9962+-1.7063           32.1047+-0.6480          might be 1.0589x faster
   string-test                                        2.8989+-0.1090     ?      3.0211+-0.2457        ? might be 1.0422x slower
   string-var-equality                               28.1892+-0.8127           27.7115+-0.8032          might be 1.0172x faster
   structure-hoist-over-transitions                   2.4371+-0.0610     ?      2.4513+-0.1451        ?
   substring-concat-weird                            35.8584+-1.0937     ?     36.0135+-1.4828        ?
   substring-concat                                  40.1361+-2.3171     ?     40.5419+-3.1723        ? might be 1.0101x slower
   substring                                         45.9618+-2.0689           45.2758+-1.1046          might be 1.0152x faster
   switch-char-constant                               2.7277+-0.0401            2.6993+-0.0396          might be 1.0105x faster
   switch-char                                        6.2537+-0.9606            5.9792+-0.9150          might be 1.0459x faster
   switch-constant                                    9.0791+-1.3888            9.0762+-0.9817        
   switch-string-basic-big-var                       14.4875+-0.5174           14.4349+-0.5027        
   switch-string-basic-big                           14.9680+-0.6750           14.9087+-0.6470        
   switch-string-basic-var                           13.5571+-0.3689           13.3395+-0.3996          might be 1.0163x faster
   switch-string-basic                               12.8414+-0.1319     ?     12.9699+-0.5035        ? might be 1.0100x slower
   switch-string-big-length-tower-var                18.1615+-0.4896     ?     18.5400+-0.6005        ? might be 1.0208x slower
   switch-string-length-tower-var                    13.7026+-0.8227           13.5827+-0.3596        
   switch-string-length-tower                        11.8352+-0.1365     ?     12.2133+-0.6201        ? might be 1.0320x slower
   switch-string-short                               11.9230+-0.3295     ?     11.9451+-0.3552        ?
   switch                                            11.3816+-0.9499     ?     11.5787+-0.5030        ? might be 1.0173x slower
   symbol-tostringtag                                 2.9775+-0.0796            2.9615+-0.0810        
   tear-off-arguments-simple                          3.1254+-0.1328     ?      3.1886+-0.1841        ? might be 1.0202x slower
   tear-off-arguments                                 4.3052+-0.2429            4.1321+-0.1138          might be 1.0419x faster
   temporal-structure                                12.1155+-0.2766           11.7581+-0.2537          might be 1.0304x faster
   to-int32-boolean                                  12.8524+-0.6087     ?     13.0495+-0.9353        ? might be 1.0153x slower
   try-catch-get-by-val-cloned-arguments             10.2799+-0.3656     ?     10.5908+-0.5696        ? might be 1.0302x slower
   try-catch-get-by-val-direct-arguments              2.2653+-0.1003     ?      2.3745+-0.2140        ? might be 1.0482x slower
   try-catch-get-by-val-scoped-arguments              4.3999+-0.1141     ?      4.4610+-0.2346        ? might be 1.0139x slower
   typed-array-get-set-by-val-profiling              28.0103+-1.2152           27.6597+-0.5596          might be 1.0127x faster
   undefined-property-access                        214.1300+-2.6274          214.0369+-1.0765        
   undefined-test                                     3.2952+-0.6779            3.0688+-0.2496          might be 1.0738x faster
   unprofiled-licm                                    9.3026+-0.3715     ?      9.3350+-0.3571        ?
   v8-raytrace-with-empty-try-catch                  56.8751+-1.0279     ?     57.7849+-3.0238        ? might be 1.0160x slower
   v8-raytrace-with-try-catch                        65.9536+-1.3655     ?     68.2026+-3.0064        ? might be 1.0341x slower
   varargs-call                                      13.2026+-0.3296           13.1112+-0.4662        
   varargs-construct-inline                          22.9137+-1.0605     ?     23.0184+-0.9014        ?
   varargs-construct                                 20.7609+-1.0829           20.2942+-0.6249          might be 1.0230x faster
   varargs-inline                                     9.8029+-2.6765            8.8253+-0.3772          might be 1.1108x faster
   varargs-strict-mode                                9.8269+-0.3907     ?      9.9683+-0.5899        ? might be 1.0144x slower
   varargs                                            9.4658+-0.0960     ?      9.6429+-0.2723        ? might be 1.0187x slower
   weird-inlining-const-prop                          2.2439+-0.1481            2.2098+-0.1451          might be 1.0154x faster

   <geometric>                                        8.3241+-0.0482            8.3172+-0.0354          might be 1.0008x faster

                                                        TipOfTree              FixHaveABadTime                                  
AsmBench:
   bigfib.cpp                                       457.2447+-5.0017     ^    445.9034+-3.1939        ^ definitely 1.0254x faster
   cray.c                                           394.7990+-3.6883          392.3593+-1.8840        
   dry.c                                            418.0999+-9.7510     ?    427.6073+-2.7771        ? might be 1.0227x slower
   FloatMM.c                                        729.3641+-119.2431        685.3346+-3.3129          might be 1.0642x faster
   gcc-loops.cpp                                   3432.5186+-14.4056    ?   3441.5873+-31.6705       ?
   n-body.c                                         822.0666+-3.8641     ?    825.6723+-4.1239        ?
   Quicksort.c                                      408.1700+-2.2338     ?    409.3711+-2.3097        ?
   stepanov_container.cpp                          3492.2030+-22.2584    ?   3505.5135+-27.2011       ?
   Towers.c                                         233.0100+-1.8187          232.2543+-1.9069        

   <geometric>                                      718.7064+-10.7953         714.5347+-1.3662          might be 1.0058x faster

                                                        TipOfTree              FixHaveABadTime                                  
CompressionBench:
   huffman                                           64.5032+-1.7719           64.3647+-1.5710        
   arithmetic-simple                                274.8807+-2.7058     ?    275.8952+-2.8182        ?
   arithmetic-precise                               250.0825+-5.1600     ?    251.5269+-3.7361        ?
   arithmetic-complex-precise                       250.5483+-1.6745     ?    251.8541+-2.3642        ?
   arithmetic-precise-order-0                       289.5922+-3.2884     ?    290.9906+-3.2370        ?
   arithmetic-precise-order-1                       305.4971+-2.6671     ?    306.4960+-2.5116        ?
   arithmetic-precise-order-2                       354.5165+-4.5271     ?    356.5973+-5.6946        ?
   arithmetic-simple-order-1                        324.1150+-3.0915          324.0888+-1.9589        
   arithmetic-simple-order-2                        375.1155+-4.9804     ?    376.1454+-7.4492        ?
   lz-string                                        314.8448+-4.7401          311.5894+-3.1762          might be 1.0104x faster

   <geometric>                                      258.5120+-1.6989     ?    258.9945+-0.9396        ? might be 1.0019x slower

                                                        TipOfTree              FixHaveABadTime                                  
Geomean of preferred means:
   <scaled-result>                                   50.9208+-0.2121           50.9070+-0.1643          might be 1.0003x faster
Comment 3 Geoffrey Garen 2015-12-04 14:17:06 PST
Comment on attachment 266656 [details]
the patch

r=me
Comment 4 Filip Pizlo 2015-12-04 14:26:38 PST
Landed in http://trac.webkit.org/changeset/193470
Comment 5 Filip Pizlo 2015-12-04 14:55:09 PST
Test really landed in http://trac.webkit.org/changeset/193480