Bug 149047 - Structure should be able to tell you if it had ever been a dictionary
Summary: Structure should be able to tell you if it had ever been a dictionary
Status: RESOLVED FIXED
Alias: None
Product: WebKit
Classification: Unclassified
Component: JavaScriptCore (show other bugs)
Version: Other
Hardware: All All
: P2 Normal
Assignee: Filip Pizlo
URL:
Keywords:
Depends on:
Blocks: 148610
  Show dependency treegraph
 
Reported: 2015-09-10 15:19 PDT by Filip Pizlo
Modified: 2015-09-10 16:08 PDT (History)
10 users (show)

See Also:


Attachments
the patch (4.78 KB, patch)
2015-09-10 15:24 PDT, Filip Pizlo
mark.lam: 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-09-10 15:19:50 PDT
Patch forthcoming.
Comment 1 Filip Pizlo 2015-09-10 15:23:45 PDT
No effect in performance.


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 (r189587)
"HadBeenDictionary" at /Volumes/Data/quartary/OpenSource/WebKitBuild/Release/jsc (r189587)

Collected 7 samples per benchmark/VM, with 7 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             HadBeenDictionary                                 
SunSpider:
   3d-cube                                            4.5484+-0.1868            4.4932+-0.0604          might be 1.0123x faster
   3d-morph                                           5.3273+-0.1239            5.3057+-0.0786        
   3d-raytrace                                        5.1646+-0.1413     ?      5.2421+-0.1809        ? might be 1.0150x slower
   access-binary-trees                                2.1409+-0.1366            2.0882+-0.1225          might be 1.0253x faster
   access-fannkuch                                    5.5551+-0.2943            5.4924+-0.1919          might be 1.0114x faster
   access-nbody                                       2.4316+-0.0317     ?      2.4984+-0.1239        ? might be 1.0275x slower
   access-nsieve                                      3.0859+-0.2067            3.0838+-0.1797        
   bitops-3bit-bits-in-byte                           1.1880+-0.1319            1.1451+-0.0200          might be 1.0375x faster
   bitops-bits-in-byte                                3.2035+-0.0894     ?      3.2890+-0.1519        ? might be 1.0267x slower
   bitops-bitwise-and                                 1.9686+-0.0220     ?      1.9917+-0.0307        ? might be 1.0117x slower
   bitops-nsieve-bits                                 2.8856+-0.0403     ?      3.2065+-0.7025        ? might be 1.1112x slower
   controlflow-recursive                              2.2413+-0.0526     ?      2.3464+-0.1394        ? might be 1.0469x slower
   crypto-aes                                         4.0924+-0.2810            3.9734+-0.2900          might be 1.0300x faster
   crypto-md5                                         2.5262+-0.1681            2.4966+-0.1334          might be 1.0118x faster
   crypto-sha1                                        2.3731+-0.2344     ?      2.4709+-0.1596        ? might be 1.0412x slower
   date-format-tofte                                  6.7256+-0.1986            6.5319+-0.1639          might be 1.0296x faster
   date-format-xparb                                  4.6461+-0.1205            4.6107+-0.1429        
   math-cordic                                        2.7595+-0.0350            2.7385+-0.0376        
   math-partial-sums                                  5.0843+-0.4993            4.9267+-0.1874          might be 1.0320x faster
   math-spectral-norm                                 1.9493+-0.1176            1.8831+-0.0254          might be 1.0352x faster
   regexp-dna                                         6.3726+-0.2758            6.3387+-0.1673        
   string-base64                                      4.4130+-0.0687     ?      4.4247+-0.0743        ?
   string-fasta                                       5.7889+-0.0950     ?      5.8398+-0.1499        ?
   string-tagcloud                                    7.8006+-0.0743     ?      7.8723+-0.1783        ?
   string-unpack-code                                18.4937+-0.9837           18.4657+-0.3408        
   string-validate-input                              4.5219+-0.0788            4.5195+-0.2117        

   <arithmetic>                                       4.5111+-0.0569            4.5106+-0.0429          might be 1.0001x faster

                                                        TipOfTree             HadBeenDictionary                                 
LongSpider:
   3d-cube                                          803.9150+-4.8476     ?    807.7874+-8.7679        ?
   3d-morph                                        1485.2722+-6.0491         1485.2058+-2.6934        
   3d-raytrace                                      594.3250+-4.1560     ?    599.4346+-12.3711       ?
   access-binary-trees                              811.4703+-14.8876         802.9386+-5.5729          might be 1.0106x faster
   access-fannkuch                                  274.7748+-4.5641          274.1466+-3.6128        
   access-nbody                                     504.4099+-3.1736          503.6348+-1.2861        
   access-nsieve                                    366.1334+-12.8173    ?    366.9667+-11.4852       ?
   bitops-3bit-bits-in-byte                          33.6703+-0.2941           33.6579+-0.6837        
   bitops-bits-in-byte                               76.5929+-1.4377     ?     79.0998+-6.7652        ? might be 1.0327x slower
   bitops-nsieve-bits                               397.4933+-4.3606     ?    400.9241+-3.3511        ?
   controlflow-recursive                            437.3930+-7.2179     ?    439.5846+-4.0585        ?
   crypto-aes                                       550.9779+-8.2192          549.5395+-7.0163        
   crypto-md5                                       431.7021+-3.9093     ?    469.3243+-35.2790       ? might be 1.0871x slower
   crypto-sha1                                      634.9014+-7.2747     ?    639.9991+-6.8333        ?
   date-format-tofte                                503.3420+-10.5502         502.1632+-10.6279       
   date-format-xparb                                659.2119+-12.7500         652.2907+-2.5182          might be 1.0106x faster
   hash-map                                         165.9629+-1.7468          163.1754+-4.3369          might be 1.0171x faster
   math-cordic                                      479.0855+-11.7747         474.4596+-0.4157        
   math-partial-sums                                460.3169+-2.3360     ?    461.4179+-1.4190        ?
   math-spectral-norm                               546.2925+-1.7710     ?    546.9702+-2.1879        ?
   string-base64                                    356.5776+-4.1980          352.9001+-2.3322          might be 1.0104x faster
   string-fasta                                     362.2102+-1.6207     ?    364.7783+-1.1670        ?
   string-tagcloud                                  176.1984+-1.9193          174.2996+-1.2480          might be 1.0109x faster

   <geometric>                                      385.3328+-1.0058     ?    386.6762+-2.0670        ? might be 1.0035x slower

                                                        TipOfTree             HadBeenDictionary                                 
V8Spider:
   crypto                                            49.2168+-1.5615           48.7959+-1.1810        
   deltablue                                         87.5009+-2.8601           87.2125+-3.7951        
   earley-boyer                                      41.2515+-1.1978           40.5612+-1.6696          might be 1.0170x faster
   raytrace                                          32.3792+-1.8500           31.6664+-1.5763          might be 1.0225x faster
   regexp                                            62.6013+-1.2672           62.2545+-1.9577        
   richards                                          62.1379+-2.1877     ?     62.8290+-0.8132        ? might be 1.0111x slower
   splay                                             34.6456+-1.1144           33.9073+-0.7199          might be 1.0218x faster

   <geometric>                                       49.9187+-0.7404           49.4439+-0.6754          might be 1.0096x faster

                                                        TipOfTree             HadBeenDictionary                                 
Octane:
   encrypt                                           0.16716+-0.00370    ?     0.16931+-0.00377       ? might be 1.0128x slower
   decrypt                                           3.04597+-0.02161    ?     3.06470+-0.07618       ?
   deltablue                                x2       0.15509+-0.00241    ?     0.15524+-0.00209       ?
   earley                                            0.28208+-0.00277    ?     0.28422+-0.00351       ?
   boyer                                             4.63219+-0.74070          4.29933+-0.04935         might be 1.0774x faster
   navier-stokes                            x2       4.80549+-0.01575          4.79750+-0.01208       
   raytrace                                 x2       0.89511+-0.00468          0.89432+-0.00540       
   richards                                 x2       0.10811+-0.00147    ?     0.10817+-0.00177       ?
   splay                                    x2       0.32733+-0.00979          0.32602+-0.00336       
   regexp                                   x2      24.66339+-0.33049         24.11303+-0.24880         might be 1.0228x faster
   pdfjs                                    x2      36.54248+-0.43325         36.40273+-0.23029       
   mandreel                                 x2      42.30890+-0.13816    ?    42.97806+-1.12797       ? might be 1.0158x slower
   gbemu                                    x2      35.05550+-0.07206         35.00887+-0.23274       
   closure                                           0.57191+-0.00230    ?     0.57321+-0.00176       ?
   jquery                                            7.10215+-0.02229    ?     7.13476+-0.03440       ?
   box2d                                    x2      10.06030+-0.11757    ?    10.11245+-0.28057       ?
   zlib                                     x2     378.64950+-19.28781   ?   383.73069+-5.94058       ? might be 1.0134x slower
   typescript                               x2     633.49704+-9.38588        626.80978+-3.88401         might be 1.0107x faster

   <geometric>                                       5.49062+-0.04307          5.48190+-0.01992         might be 1.0016x faster

                                                        TipOfTree             HadBeenDictionary                                 
Kraken:
   ai-astar                                          220.790+-1.343            219.775+-1.466         
   audio-beat-detection                               50.419+-0.277      ?      50.455+-0.207         ?
   audio-dft                                          97.561+-2.450             97.312+-2.458         
   audio-fft                                          35.220+-0.525             34.896+-0.107         
   audio-oscillator                                   58.928+-0.714      ?      59.261+-0.676         ?
   imaging-darkroom                                   63.768+-7.859             61.082+-1.066           might be 1.0440x faster
   imaging-desaturate                                 48.478+-0.355      ?      48.545+-0.278         ?
   imaging-gaussian-blur                              85.481+-1.040      ?      86.875+-4.513         ? might be 1.0163x slower
   json-parse-financial                               39.473+-1.747             37.597+-0.554           might be 1.0499x faster
   json-stringify-tinderbox                           22.604+-0.574             22.590+-1.063         
   stanford-crypto-aes                                40.258+-1.253      ?      41.193+-2.012         ? might be 1.0232x slower
   stanford-crypto-ccm                                35.427+-0.482      ?      36.065+-1.014         ? might be 1.0180x slower
   stanford-crypto-pbkdf2                             92.759+-0.965             92.312+-0.240         
   stanford-crypto-sha256-iterative                   36.110+-0.477      ?      36.467+-0.975         ?

   <arithmetic>                                       66.234+-0.721             66.030+-0.373           might be 1.0031x faster

                                                        TipOfTree             HadBeenDictionary                                 
JSRegress:
   abc-forward-loop-equal                            29.9226+-0.8060           29.4533+-0.4847          might be 1.0159x faster
   abc-postfix-backward-loop                         30.0069+-0.9167           29.6167+-0.6365          might be 1.0132x faster
   abc-simple-backward-loop                          29.2213+-0.2357     ?     29.6125+-0.4902        ? might be 1.0134x slower
   abc-simple-forward-loop                           29.6481+-1.5024     ?     30.1333+-1.5636        ? might be 1.0164x slower
   abc-skippy-loop                                   21.1682+-0.6863     ?     21.9814+-1.0279        ? might be 1.0384x slower
   abs-boolean                                        2.4125+-0.0549     ?      2.4940+-0.0700        ? might be 1.0338x slower
   adapt-to-double-divide                            16.4610+-0.4747           16.2454+-0.2545          might be 1.0133x faster
   aliased-arguments-getbyval                         1.1952+-0.0569     ?      1.3242+-0.2081        ? might be 1.1079x slower
   allocate-big-object                                2.4534+-0.1459     ?      2.6174+-0.5624        ? might be 1.0669x slower
   arguments-named-and-reflective                    10.9750+-1.0168           10.6739+-0.3555          might be 1.0282x faster
   arguments-out-of-bounds                            9.1850+-0.2681     ?      9.4850+-0.3312        ? might be 1.0327x slower
   arguments-strict-mode                             10.0109+-0.7375            9.3173+-0.3000          might be 1.0744x faster
   arguments                                          8.4855+-0.1167     !      8.9716+-0.3628        ! definitely 1.0573x slower
   arity-mismatch-inlining                            0.8713+-0.0347            0.8508+-0.0288          might be 1.0240x faster
   array-access-polymorphic-structure                 6.3261+-1.2864            5.9134+-0.0719          might be 1.0698x faster
   array-nonarray-polymorhpic-access                 23.5055+-0.4575     ?     23.6870+-0.4564        ?
   array-prototype-every                             76.6991+-0.8006     ?     77.6501+-4.1054        ? might be 1.0124x slower
   array-prototype-forEach                           76.3063+-1.1062           75.1778+-1.2989          might be 1.0150x faster
   array-prototype-map                               80.4846+-0.6179     ?     82.7153+-4.0730        ? might be 1.0277x slower
   array-prototype-reduce                            73.6867+-4.6107           70.6594+-0.6869          might be 1.0428x faster
   array-prototype-reduceRight                       71.4385+-0.9022           70.2194+-1.0505          might be 1.0174x faster
   array-prototype-some                              76.8035+-0.8877           75.9250+-0.7902          might be 1.0116x faster
   array-splice-contiguous                           21.4637+-0.5053     ^     20.0083+-0.4123        ^ definitely 1.0727x faster
   array-with-double-add                              3.3880+-0.0814            3.3842+-0.0998        
   array-with-double-increment                        3.1357+-0.2470            3.0852+-0.0850          might be 1.0164x faster
   array-with-double-mul-add                          4.2669+-0.2244            4.1722+-0.1072          might be 1.0227x faster
   array-with-double-sum                              3.1431+-0.0159            3.1425+-0.0268        
   array-with-int32-add-sub                           5.6534+-0.0885     ?      5.6756+-0.1535        ?
   array-with-int32-or-double-sum                     3.7269+-0.8357            3.2454+-0.0633          might be 1.1484x faster
   ArrayBuffer-DataView-alloc-large-long-lived   
                                                     25.5996+-0.8578           25.3231+-0.4020          might be 1.0109x faster
   ArrayBuffer-DataView-alloc-long-lived             11.7461+-0.3269     ?     11.8380+-0.4223        ?
   ArrayBuffer-Int32Array-byteOffset                  3.5513+-0.0594            3.5457+-0.0580        
   ArrayBuffer-Int8Array-alloc-large-long-lived   
                                                     30.3485+-1.3656           29.9502+-1.0730          might be 1.0133x faster
   ArrayBuffer-Int8Array-alloc-long-lived-buffer   
                                                     19.9550+-0.4892           19.8095+-0.3499        
   ArrayBuffer-Int8Array-alloc-long-lived            12.4602+-0.3953           12.3812+-0.3310        
   ArrayBuffer-Int8Array-alloc                        9.6617+-0.3314     ?     10.1949+-1.3033        ? might be 1.0552x slower
   arrowfunction-call                                10.5548+-0.1100     ?     10.5613+-0.1300        ?
   asmjs_bool_bug                                     7.3871+-0.1005     ?      7.4943+-0.2610        ? might be 1.0145x slower
   assign-custom-setter-polymorphic                   2.4260+-0.0169     !      2.4746+-0.0305        ! definitely 1.0200x slower
   assign-custom-setter                               3.2556+-0.0317     !      3.5284+-0.1615        ! definitely 1.0838x slower
   basic-set                                          8.5995+-0.5193            8.4205+-0.1896          might be 1.0213x faster
   big-int-mul                                        3.4850+-0.1169     ?      3.5008+-0.0701        ?
   boolean-test                                       2.9133+-0.0439            2.9120+-0.0345        
   branch-fold                                        3.6135+-0.0427     ?      3.6237+-0.0733        ?
   branch-on-string-as-boolean                       17.2792+-0.8156           16.7443+-0.5919          might be 1.0319x faster
   by-val-generic                                     2.5782+-0.1943            2.4899+-0.1199          might be 1.0355x faster
   call-spread-apply                                 27.0928+-1.7045           26.5018+-1.0794          might be 1.0223x faster
   call-spread-call                                  21.3524+-0.4475     ?     21.4330+-0.5908        ?
   captured-assignments                               0.4194+-0.0136     ?      0.5242+-0.1067        ? might be 1.2500x slower
   cast-int-to-double                                 5.2962+-0.2751            5.0864+-0.1086          might be 1.0413x faster
   cell-argument                                      6.4089+-0.4221            6.3632+-0.3944        
   cfg-simplify                                       2.8324+-0.0570     ?      2.8359+-0.0643        ?
   chain-getter-access                                8.5171+-0.2926            8.2798+-0.1676          might be 1.0287x faster
   cmpeq-obj-to-obj-other                            13.0303+-0.6553           12.6916+-0.8027          might be 1.0267x faster
   constant-test                                      4.8243+-0.0705            4.8035+-0.1627        
   create-lots-of-functions                           9.7561+-0.6140            9.7192+-0.4688        
   cse-new-array-buffer                               2.3721+-0.1236            2.2829+-0.0549          might be 1.0390x faster
   cse-new-array                                      2.4500+-0.1189     ?      2.4611+-0.0741        ?
   DataView-custom-properties                        30.2717+-0.4478     ?     31.2779+-1.2696        ? might be 1.0332x slower
   delay-tear-off-arguments-strictmode               12.3236+-0.7757           11.9990+-0.2069          might be 1.0271x faster
   deltablue-varargs                                160.8242+-4.3530          156.8786+-1.5841          might be 1.0252x faster
   destructuring-arguments                          160.1809+-1.7017     ?    161.9851+-2.2730        ? might be 1.0113x slower
   destructuring-parameters-overridden-by-function   
                                                      0.4579+-0.0427            0.4505+-0.0314          might be 1.0163x faster
   destructuring-swap                                 4.8797+-0.2624            4.7841+-0.1794          might be 1.0200x faster
   direct-arguments-getbyval                          1.3183+-0.2323            1.1722+-0.0694          might be 1.1246x faster
   div-boolean-double                                 5.3259+-0.1229            5.2677+-0.0402          might be 1.0111x faster
   div-boolean                                        8.1120+-0.1208            8.0765+-0.0615        
   double-get-by-val-out-of-bounds                    4.3650+-0.2450            4.2918+-0.0842          might be 1.0170x faster
   double-pollution-getbyval                          8.7589+-0.1406            8.6497+-0.0242          might be 1.0126x faster
   double-pollution-putbyoffset                       3.8226+-0.2037            3.7843+-0.2495          might be 1.0101x faster
   double-real-use                                   24.6627+-1.4057     ?     24.7039+-0.6227        ?
   double-to-int32-typed-array-no-inline              2.1588+-0.0269            2.1285+-0.0674          might be 1.0143x faster
   double-to-int32-typed-array                        2.3058+-0.5758            2.1325+-0.2078          might be 1.0813x faster
   double-to-uint32-typed-array-no-inline             2.1772+-0.0597     ?      2.2166+-0.0539        ? might be 1.0181x slower
   double-to-uint32-typed-array                       2.0341+-0.0209     ?      2.0639+-0.0424        ? might be 1.0146x slower
   elidable-new-object-dag                           34.5283+-0.9445           34.2069+-1.0932        
   elidable-new-object-roflcopter                    34.8069+-3.0649           33.8184+-1.1699          might be 1.0292x faster
   elidable-new-object-then-call                     32.9406+-1.9558           31.7195+-0.6785          might be 1.0385x faster
   elidable-new-object-tree                          37.2430+-0.3818     ?     37.7310+-1.1250        ? might be 1.0131x slower
   empty-string-plus-int                              4.6635+-0.0293     ?      5.4127+-1.6027        ? might be 1.1606x slower
   emscripten-cube2hash                              30.5248+-4.5345           26.6845+-1.3638          might be 1.1439x faster
   exit-length-on-plain-object                       12.5484+-0.5365           12.2246+-0.2542          might be 1.0265x faster
   external-arguments-getbyval                        1.2568+-0.0668            1.2301+-0.0841          might be 1.0217x faster
   external-arguments-putbyval                        2.1329+-0.0987     ?      2.1737+-0.1491        ? might be 1.0191x slower
   fixed-typed-array-storage-var-index                1.3072+-0.1917            1.2054+-0.0416          might be 1.0845x faster
   fixed-typed-array-storage                          0.9334+-0.0656     ?      0.9435+-0.0508        ? might be 1.0108x slower
   Float32Array-matrix-mult                           3.9294+-0.0859            3.9128+-0.1056        
   Float32Array-to-Float64Array-set                  46.8109+-0.8170           46.5897+-0.6521        
   Float64Array-alloc-long-lived                     69.4708+-1.4832     ?     69.5059+-1.7339        ?
   Float64Array-to-Int16Array-set                    58.1280+-1.5292           57.1260+-1.5489          might be 1.0175x faster
   fold-double-to-int                                11.9867+-0.1732     ?     12.0598+-0.3136        ?
   fold-get-by-id-to-multi-get-by-offset-rare-int   
                                                     10.5495+-1.5360     ?     11.6589+-2.2314        ? might be 1.1052x slower
   fold-get-by-id-to-multi-get-by-offset              9.6364+-0.6887            9.4368+-0.4030          might be 1.0212x faster
   fold-multi-get-by-offset-to-get-by-offset   
                                                      7.6577+-1.2224     ?      7.8945+-1.7137        ? might be 1.0309x slower
   fold-multi-get-by-offset-to-poly-get-by-offset   
                                                      8.4059+-1.9391            8.2728+-1.0458          might be 1.0161x faster
   fold-multi-put-by-offset-to-poly-put-by-offset   
                                                      9.4082+-0.8455     ?     11.5941+-2.6004        ? might be 1.2323x slower
   fold-multi-put-by-offset-to-put-by-offset   
                                                      6.8249+-1.6413            4.5810+-0.6548          might be 1.4898x faster
   fold-multi-put-by-offset-to-replace-or-transition-put-by-offset   
                                                      9.7920+-1.2680            9.1458+-0.1974          might be 1.0707x faster
   fold-put-by-id-to-multi-put-by-offset             10.1426+-0.5382     ?     10.7518+-0.5180        ? might be 1.0601x slower
   fold-put-by-val-with-string-to-multi-put-by-offset   
                                                      9.4140+-0.8557     ?     10.5704+-0.6889        ? might be 1.1228x slower
   fold-put-by-val-with-symbol-to-multi-put-by-offset   
                                                     10.9592+-1.3274           10.5978+-1.0187          might be 1.0341x faster
   fold-put-structure                                 5.7178+-1.2820            4.7115+-0.7528          might be 1.2136x faster
   for-of-iterate-array-entries                      11.0674+-0.2947     ?     11.0944+-0.3715        ?
   for-of-iterate-array-keys                          3.5045+-0.1674            3.3626+-0.1077          might be 1.0422x faster
   for-of-iterate-array-values                        3.5266+-0.2253     ?      3.5888+-0.2640        ? might be 1.0176x slower
   fround                                            18.1862+-1.3147           17.7234+-0.3369          might be 1.0261x faster
   ftl-library-inlining-dataview                     56.1008+-0.7148     ?     56.5181+-1.4412        ?
   ftl-library-inlining                              94.3547+-1.1235     ?     96.7208+-2.0017        ? might be 1.0251x slower
   function-call                                     10.6928+-0.1651     ?     10.7511+-0.1625        ?
   function-dot-apply                                 2.1087+-0.0734            2.0738+-0.1020          might be 1.0168x faster
   function-test                                      2.7238+-0.0966     ?      2.7463+-0.0941        ?
   function-with-eval                                93.3595+-2.9834     ?     93.7366+-2.9441        ?
   gcse-poly-get-less-obvious                        22.7973+-1.1538           22.6275+-0.3999        
   gcse-poly-get                                     24.1448+-0.9406           23.9677+-0.3669        
   gcse                                               3.8271+-0.1020     ?      3.8320+-0.0669        ?
   get-by-id-bimorphic-check-structure-elimination-simple   
                                                      2.6992+-0.1975            2.6311+-0.1196          might be 1.0259x faster
   get-by-id-bimorphic-check-structure-elimination   
                                                      5.7853+-0.3368            5.7708+-0.1458        
   get-by-id-chain-from-try-block                     5.3995+-0.1165     ?      5.4290+-0.1083        ?
   get-by-id-check-structure-elimination              4.5668+-0.3676            4.3807+-0.1127          might be 1.0425x faster
   get-by-id-proto-or-self                           15.3529+-0.4410     ?     15.8455+-0.6926        ? might be 1.0321x slower
   get-by-id-quadmorphic-check-structure-elimination-simple   
                                                      2.9506+-0.1763            2.8735+-0.0310          might be 1.0268x faster
   get-by-id-self-or-proto                           15.5701+-0.6835     ?     15.5927+-0.7393        ?
   get-by-val-out-of-bounds                           4.2054+-0.1076            4.1873+-0.0900        
   get-by-val-with-string-bimorphic-check-structure-elimination-simple   
                                                      2.7679+-0.0279     ?      2.8686+-0.1750        ? might be 1.0364x slower
   get-by-val-with-string-bimorphic-check-structure-elimination   
                                                      6.0482+-0.1784     ?      6.0525+-0.1683        ?
   get-by-val-with-string-chain-from-try-block   
                                                      5.5859+-0.1486     ?      5.6648+-0.2184        ? might be 1.0141x slower
   get-by-val-with-string-check-structure-elimination   
                                                      5.1614+-0.1481     ?      5.2352+-0.2017        ? might be 1.0143x slower
   get-by-val-with-string-proto-or-self              15.7975+-0.7428     ?     16.4343+-1.7059        ? might be 1.0403x slower
   get-by-val-with-string-quadmorphic-check-structure-elimination-simple   
                                                      3.3354+-0.0473     ?      3.4006+-0.0693        ? might be 1.0196x slower
   get-by-val-with-string-self-or-proto              15.3388+-0.5133     ?     15.8661+-0.9316        ? might be 1.0344x slower
   get-by-val-with-symbol-bimorphic-check-structure-elimination-simple   
                                                      3.1597+-0.1147            3.1117+-0.0244          might be 1.0154x faster
   get-by-val-with-symbol-bimorphic-check-structure-elimination   
                                                     13.8079+-3.7231           12.4038+-0.3140          might be 1.1132x faster
   get-by-val-with-symbol-chain-from-try-block   
                                                      5.7446+-0.2136     ?      5.8039+-0.3735        ? might be 1.0103x slower
   get-by-val-with-symbol-check-structure-elimination   
                                                     11.2724+-0.0885     ?     11.2896+-0.0814        ?
   get-by-val-with-symbol-proto-or-self              15.8689+-0.7938           15.3286+-0.6512          might be 1.0353x faster
   get-by-val-with-symbol-quadmorphic-check-structure-elimination-simple   
                                                      3.7463+-0.1823     ?      3.7716+-0.1229        ?
   get-by-val-with-symbol-self-or-proto              15.9845+-0.6036           15.7354+-0.6173          might be 1.0158x faster
   get_callee_monomorphic                             2.3305+-0.0673     ?      2.5684+-0.5164        ? might be 1.1021x slower
   get_callee_polymorphic                             3.4080+-0.0455            3.3905+-0.2788        
   getter-no-activation                               4.6846+-0.0693     ?      4.7357+-0.1895        ? might be 1.0109x slower
   getter-prototype                                   8.9555+-0.1245     ?      9.0510+-0.1880        ? might be 1.0107x slower
   getter-richards                                  123.4459+-6.0295     ?    125.0789+-5.9572        ? might be 1.0132x slower
   getter                                             5.8159+-0.6893            5.7056+-0.7268          might be 1.0193x faster
   global-object-access-with-mutating-structure   
                                                      5.5709+-0.1409     ?      5.9248+-0.3347        ? might be 1.0635x slower
   global-var-const-infer-fire-from-opt               0.8189+-0.0983            0.7943+-0.0619          might be 1.0309x faster
   global-var-const-infer                             0.7197+-0.1159     ?      0.7219+-0.1915        ?
   hard-overflow-check-equal                         32.7468+-0.5352           32.4355+-0.8520        
   hard-overflow-check                               32.7937+-0.5117     ?     32.8119+-0.7161        ?
   HashMap-put-get-iterate-keys                      27.5013+-1.4109     ?     30.6899+-7.1244        ? might be 1.1159x slower
   HashMap-put-get-iterate                           29.4412+-0.8782           28.4832+-1.9864          might be 1.0336x faster
   HashMap-string-put-get-iterate                    24.9207+-1.4816           24.8544+-1.2298        
   hoist-make-rope                                    9.0402+-0.9303            8.2839+-0.4098          might be 1.0913x faster
   hoist-poly-check-structure-effectful-loop   
                                                      4.1411+-0.0667     ?      4.1891+-0.0927        ? might be 1.0116x slower
   hoist-poly-check-structure                         3.4304+-0.2043            3.2762+-0.0387          might be 1.0471x faster
   imul-double-only                                   7.4465+-0.5518            7.2902+-0.2249          might be 1.0214x faster
   imul-int-only                                      8.3580+-0.9697     ?      8.9621+-1.3922        ? might be 1.0723x slower
   imul-mixed                                         7.0237+-0.1373            6.9173+-0.3772          might be 1.0154x faster
   in-four-cases                                     17.1506+-0.1761     ?     17.2688+-0.7483        ?
   in-one-case-false                                  9.3697+-0.3673     ?     10.2035+-0.7778        ? might be 1.0890x slower
   in-one-case-true                                   9.5844+-0.5953     ?      9.7040+-0.5077        ? might be 1.0125x slower
   in-two-cases                                       9.8260+-0.8834     ?      9.8997+-0.9214        ?
   indexed-properties-in-objects                      2.7076+-0.0365     ?      2.8003+-0.1717        ? might be 1.0342x slower
   infer-closure-const-then-mov-no-inline             3.5463+-0.0498            3.5374+-0.0634        
   infer-closure-const-then-mov                      18.4205+-0.4841           18.3859+-0.6533        
   infer-closure-const-then-put-to-scope-no-inline   
                                                     11.0693+-0.4424           10.8773+-0.3623          might be 1.0177x faster
   infer-closure-const-then-put-to-scope             23.4626+-0.7211           23.0719+-0.5353          might be 1.0169x faster
   infer-closure-const-then-reenter-no-inline   
                                                     44.8144+-0.7335     ?     45.7795+-1.4875        ? might be 1.0215x slower
   infer-closure-const-then-reenter                  23.4508+-0.5554           23.2121+-0.1804          might be 1.0103x faster
   infer-constant-global-property                     3.4741+-0.1479            3.4317+-0.0390          might be 1.0123x faster
   infer-constant-property                            2.6105+-0.0194            2.6062+-0.0783        
   infer-one-time-closure-ten-vars                    8.1554+-0.7278     ?      8.4794+-1.6851        ? might be 1.0397x slower
   infer-one-time-closure-two-vars                    7.5562+-0.3999     ?      7.6087+-0.5436        ?
   infer-one-time-closure                             7.3348+-0.2213     ?      7.3564+-0.2948        ?
   infer-one-time-deep-closure                       11.1733+-0.6975           10.9764+-0.3886          might be 1.0179x faster
   inline-arguments-access                            3.7691+-0.2572            3.6990+-0.1974          might be 1.0189x faster
   inline-arguments-aliased-access                    3.7461+-0.2234            3.6710+-0.2221          might be 1.0205x faster
   inline-arguments-local-escape                      3.7411+-0.3308            3.5311+-0.1005          might be 1.0595x faster
   inline-get-scoped-var                              4.6255+-0.1732            4.5490+-0.2126          might be 1.0168x faster
   inlined-put-by-id-transition                       9.6363+-0.3341            9.2660+-0.7506          might be 1.0400x faster
   inlined-put-by-val-with-string-transition   
                                                     43.6478+-2.3170           40.6309+-1.6435          might be 1.0743x faster
   inlined-put-by-val-with-symbol-transition   
                                                     41.2502+-0.9437           41.0821+-0.9289        
   int-or-other-abs-then-get-by-val                   4.5444+-0.1551            4.4027+-0.0491          might be 1.0322x faster
   int-or-other-abs-zero-then-get-by-val             15.7410+-0.3704     ?     16.3595+-0.9225        ? might be 1.0393x slower
   int-or-other-add-then-get-by-val                   4.1037+-0.0906     ?      4.1218+-0.1372        ?
   int-or-other-add                                   4.9255+-0.0800     ?      4.9608+-0.1266        ?
   int-or-other-div-then-get-by-val                   3.7878+-0.1604     ?      3.8608+-0.2869        ? might be 1.0193x slower
   int-or-other-max-then-get-by-val                   3.9039+-0.1424     ?      3.9396+-0.0826        ?
   int-or-other-min-then-get-by-val                   3.7468+-0.0743     ?      3.8703+-0.3134        ? might be 1.0330x slower
   int-or-other-mod-then-get-by-val                   3.4192+-0.0689     ?      3.6436+-0.3714        ? might be 1.0656x slower
   int-or-other-mul-then-get-by-val                   3.6143+-0.1626     ?      3.7124+-0.1738        ? might be 1.0271x slower
   int-or-other-neg-then-get-by-val                   3.9896+-0.0684            3.9843+-0.0497        
   int-or-other-neg-zero-then-get-by-val             15.5476+-0.2480     ?     15.6283+-0.3687        ?
   int-or-other-sub-then-get-by-val                   4.0554+-0.0538     ?      4.1202+-0.1778        ? might be 1.0160x slower
   int-or-other-sub                                   3.4152+-0.0529     ?      3.4859+-0.1213        ? might be 1.0207x slower
   int-overflow-local                                 4.0944+-0.1089            4.0624+-0.0190        
   Int16Array-alloc-long-lived                       46.5220+-1.4846     ?     48.3868+-1.4158        ? might be 1.0401x slower
   Int16Array-bubble-sort-with-byteLength            17.7399+-0.9889     ?     18.9678+-1.6016        ? might be 1.0692x slower
   Int16Array-bubble-sort                            16.7401+-0.2438     ?     17.0311+-0.3826        ? might be 1.0174x slower
   Int16Array-load-int-mul                            1.4024+-0.0213     ?      1.4257+-0.0569        ? might be 1.0166x slower
   Int16Array-to-Int32Array-set                      43.9822+-1.1510           42.9190+-0.5950          might be 1.0248x faster
   Int32Array-alloc-large                            11.9320+-0.6578           11.6017+-0.4092          might be 1.0285x faster
   Int32Array-alloc-long-lived                       54.9731+-1.3877     ?     55.1195+-1.0623        ?
   Int32Array-alloc                                   2.8379+-0.2221     ?      2.8694+-0.1528        ? might be 1.0111x slower
   Int32Array-Int8Array-view-alloc                    5.9451+-0.2701     ?      6.0115+-0.1896        ? might be 1.0112x slower
   int52-spill                                        4.6143+-0.0641     ?      4.6823+-0.2484        ? might be 1.0147x slower
   Int8Array-alloc-long-lived                        40.5197+-0.9005     ?     41.7100+-1.8506        ? might be 1.0294x slower
   Int8Array-load-with-byteLength                     3.4576+-0.1075            3.3902+-0.1039          might be 1.0199x faster
   Int8Array-load                                     3.4670+-0.3252            3.3530+-0.0262          might be 1.0340x faster
   integer-divide                                    10.4722+-0.2187     ?     10.6029+-0.4478        ? might be 1.0125x slower
   integer-modulo                                     1.5955+-0.0680     ?      1.7506+-0.1973        ? might be 1.0972x slower
   is-boolean-fold-tricky                             3.7666+-0.0925     ?      3.7834+-0.0739        ?
   is-boolean-fold                                    2.6331+-0.0936     ?      2.6909+-0.1304        ? might be 1.0220x slower
   is-function-fold-tricky-internal-function   
                                                     10.0226+-0.2173            9.7202+-0.2730          might be 1.0311x faster
   is-function-fold-tricky                            4.0253+-0.1122     ?      4.0442+-0.1448        ?
   is-function-fold                                   2.6235+-0.0237     ?      2.7294+-0.1712        ? might be 1.0404x slower
   is-number-fold-tricky                              3.8883+-0.0494     ?      3.9281+-0.0801        ? might be 1.0102x slower
   is-number-fold                                     2.6368+-0.0623            2.5869+-0.0322          might be 1.0193x faster
   is-object-or-null-fold-functions                   2.6964+-0.0737     ?      2.7766+-0.1762        ? might be 1.0297x slower
   is-object-or-null-fold-less-tricky                 3.9566+-0.0418     ?      3.9957+-0.0702        ?
   is-object-or-null-fold-tricky                      4.9423+-0.4160            4.8186+-0.1078          might be 1.0257x faster
   is-object-or-null-fold                             2.6656+-0.0499     ?      2.6722+-0.0839        ?
   is-object-or-null-trickier-function                4.0212+-0.0700            3.9946+-0.0424        
   is-object-or-null-trickier-internal-function   
                                                      9.9909+-0.3764     ?     10.1204+-0.2998        ? might be 1.0130x slower
   is-object-or-null-tricky-function                  4.1637+-0.3345     ?      4.6263+-0.9982        ? might be 1.1111x slower
   is-object-or-null-tricky-internal-function   
                                                      7.4839+-0.1523            7.3706+-0.1821          might be 1.0154x faster
   is-string-fold-tricky                              3.9153+-0.1115            3.9008+-0.0636        
   is-string-fold                                     2.5912+-0.0171     ?      2.6467+-0.0686        ? might be 1.0214x slower
   is-undefined-fold-tricky                           3.3026+-0.0270     ?      3.3778+-0.0714        ? might be 1.0228x slower
   is-undefined-fold                                  2.6396+-0.0517            2.6208+-0.0425        
   JSONP-negative-0                                   0.2506+-0.0149     ?      0.2563+-0.0122        ? might be 1.0230x slower
   large-int-captured                                 4.1051+-0.1739            4.0620+-0.0749          might be 1.0106x faster
   large-int-neg                                     14.3971+-0.5482     ?     14.9686+-2.6794        ? might be 1.0397x slower
   large-int                                         13.2225+-0.4559           13.0018+-0.4083          might be 1.0170x faster
   load-varargs-elimination                          22.2261+-1.4800           21.0321+-1.6805          might be 1.0568x faster
   logical-not-weird-types                            2.9984+-0.0582     ?      3.0461+-0.0752        ? might be 1.0159x slower
   logical-not                                        4.4798+-0.3340            4.4146+-0.1728          might be 1.0148x faster
   lots-of-fields                                     9.3145+-0.8870            8.9781+-0.2797          might be 1.0375x faster
   make-indexed-storage                               2.8607+-0.2503            2.7013+-0.1817          might be 1.0590x faster
   make-rope-cse                                      3.6955+-0.1781     ?      3.8549+-0.4253        ? might be 1.0431x slower
   marsaglia-larger-ints                             32.2848+-0.8349           32.1129+-1.4168        
   marsaglia-osr-entry                               21.8675+-1.4434           21.4625+-0.5675          might be 1.0189x faster
   math-with-out-of-bounds-array-values              21.4282+-0.4640     ?     21.7995+-0.5201        ? might be 1.0173x slower
   max-boolean                                        2.6394+-0.0578     ?      2.7077+-0.1604        ? might be 1.0258x slower
   method-on-number                                  15.8733+-1.1031           15.4413+-0.3652          might be 1.0280x faster
   min-boolean                                        2.6396+-0.0604     ?      2.7235+-0.2020        ? might be 1.0318x slower
   minus-boolean-double                               3.0948+-0.0740     ?      3.1078+-0.0602        ?
   minus-boolean                                      2.3133+-0.0152     ?      2.3386+-0.1395        ? might be 1.0109x slower
   misc-strict-eq                                    29.1038+-1.3434     ?     29.5019+-1.3996        ? might be 1.0137x slower
   mod-boolean-double                                11.0588+-0.2239     ?     11.1354+-0.2819        ?
   mod-boolean                                        8.3876+-0.2436            8.3834+-0.2247        
   mul-boolean-double                                 3.5926+-0.0415     ?      3.6387+-0.0610        ? might be 1.0128x slower
   mul-boolean                                        2.7831+-0.0425     ?      2.9049+-0.1157        ? might be 1.0438x slower
   neg-boolean                                        3.1139+-0.0564            3.1125+-0.0800        
   negative-zero-divide                               0.3390+-0.0215            0.3389+-0.0129        
   negative-zero-modulo                               0.3454+-0.0363     ?      0.3457+-0.0270        ?
   negative-zero-negate                               0.3219+-0.0069     ?      0.4509+-0.2851        ? might be 1.4005x slower
   nested-function-parsing                           44.0095+-0.2765     ?     44.8081+-1.3013        ? might be 1.0181x slower
   new-array-buffer-dead                             87.5370+-0.8261     ?     88.3066+-1.5190        ?
   new-array-buffer-push                              6.0236+-0.1905     ?      6.1351+-0.3283        ? might be 1.0185x slower
   new-array-dead                                    15.2589+-0.9293           14.7754+-0.5978          might be 1.0327x faster
   new-array-push                                     3.6710+-0.3664            3.5113+-0.1796          might be 1.0455x faster
   no-inline-constructor                             30.6869+-0.3430     ?     30.9748+-0.5719        ?
   number-test                                        2.8920+-0.0455     ?      2.9183+-0.0708        ?
   object-closure-call                                5.1836+-0.0992     ?      5.4467+-0.3609        ? might be 1.0508x slower
   object-get-own-property-symbols-on-large-array   
                                                      4.1345+-0.0727     ?      4.3110+-0.5079        ? might be 1.0427x slower
   object-test                                        2.8194+-0.1079            2.6690+-0.0508          might be 1.0563x faster
   obvious-sink-pathology-taken                      97.7534+-0.7129     ?     98.5205+-0.3558        ?
   obvious-sink-pathology                            93.4459+-1.2158     ?     93.6890+-1.0111        ?
   obviously-elidable-new-object                     28.5506+-0.8607     ?     28.8557+-1.3629        ? might be 1.0107x slower
   plus-boolean-arith                                 2.3616+-0.0320     ?      2.4151+-0.1295        ? might be 1.0227x slower
   plus-boolean-double                                3.0865+-0.0478     ?      3.1588+-0.1044        ? might be 1.0234x slower
   plus-boolean                                       2.5640+-0.0390            2.5040+-0.0482          might be 1.0240x faster
   poly-chain-access-different-prototypes-simple   
                                                      3.3784+-0.4093     ?      3.5345+-0.7592        ? might be 1.0462x slower
   poly-chain-access-different-prototypes             3.2539+-0.0395     ?      3.3674+-0.1619        ? might be 1.0349x slower
   poly-chain-access-simpler                          3.1864+-0.0441     ?      3.2483+-0.0643        ? might be 1.0194x slower
   poly-chain-access                                  3.2407+-0.0649            3.2249+-0.0463        
   poly-stricteq                                     49.7998+-0.6580           49.7332+-1.9167        
   polymorphic-array-call                             1.2162+-0.0493     ?      1.2797+-0.0855        ? might be 1.0522x slower
   polymorphic-get-by-id                              2.8436+-0.0390     ?      2.8829+-0.0730        ? might be 1.0138x slower
   polymorphic-put-by-id                             28.6059+-0.8234           28.2192+-0.5463          might be 1.0137x faster
   polymorphic-put-by-val-with-string                28.3771+-0.7619     ?     28.4015+-1.5028        ?
   polymorphic-put-by-val-with-symbol                29.1444+-1.3629           27.9656+-0.8095          might be 1.0422x faster
   polymorphic-structure                             13.0973+-0.3687     ?     13.5173+-1.2221        ? might be 1.0321x slower
   polyvariant-monomorphic-get-by-id                  6.5159+-0.9381            6.4459+-0.7414          might be 1.0109x faster
   proto-getter-access                                8.2967+-0.1919     ?      8.3513+-0.1460        ?
   prototype-access-with-mutating-prototype           5.4629+-0.1500     ?      5.5945+-0.3292        ? might be 1.0241x slower
   put-by-id-replace-and-transition                   7.8061+-0.7906            7.6679+-0.5106          might be 1.0180x faster
   put-by-id-slightly-polymorphic                     2.6414+-0.0485     ?      2.6458+-0.0889        ?
   put-by-id                                         10.0577+-0.6188            9.6987+-0.3939          might be 1.0370x faster
   put-by-val-direct                                  0.3569+-0.0226            0.3383+-0.0082          might be 1.0549x faster
   put-by-val-large-index-blank-indexing-type   
                                                      5.2567+-0.2014            5.2170+-0.1986        
   put-by-val-machine-int                             2.5792+-0.2543            2.4504+-0.1010          might be 1.0526x faster
   put-by-val-with-string-replace-and-transition   
                                                     10.2464+-0.4073     ?     10.4081+-0.6744        ? might be 1.0158x slower
   put-by-val-with-string-slightly-polymorphic   
                                                      2.8806+-0.0494     ?      3.1216+-0.3088        ? might be 1.0837x slower
   put-by-val-with-string                            10.4606+-0.4435     ?     11.2776+-1.4195        ? might be 1.0781x slower
   put-by-val-with-symbol-replace-and-transition   
                                                     11.8852+-0.5117     ?     12.5080+-0.7651        ? might be 1.0524x slower
   put-by-val-with-symbol-slightly-polymorphic   
                                                      3.1637+-0.0920     ?      3.2050+-0.1616        ? might be 1.0131x slower
   put-by-val-with-symbol                            10.6388+-0.4815           10.4873+-0.4633          might be 1.0145x faster
   rare-osr-exit-on-local                            13.4313+-0.1027     ?     13.4915+-0.1970        ?
   register-pressure-from-osr                        17.6110+-0.6383     ?     18.0674+-1.0277        ? might be 1.0259x slower
   repeat-multi-get-by-offset                        21.8665+-0.3678     ?     22.5002+-1.0372        ? might be 1.0290x slower
   setter-prototype                                   7.9379+-0.5231            7.7884+-0.2951          might be 1.0192x faster
   setter                                             5.6581+-0.6857            5.5548+-0.4432          might be 1.0186x faster
   simple-activation-demo                            24.5319+-0.2406           24.1442+-0.4515          might be 1.0161x faster
   simple-getter-access                              10.5985+-0.1297     ?     10.7711+-0.2011        ? might be 1.0163x slower
   simple-poly-call-nested                            8.5588+-0.5554     ?      8.7672+-0.5920        ? might be 1.0243x slower
   simple-poly-call                                   1.2782+-0.0373     ?      1.3290+-0.1720        ? might be 1.0397x slower
   sin-boolean                                       19.5162+-1.9450     ?     21.2072+-1.3243        ? might be 1.0866x slower
   singleton-scope                                   57.7898+-0.5417     ?     57.8015+-0.8334        ?
   sink-function                                     10.8051+-1.2449            9.9220+-0.3380          might be 1.0890x faster
   sink-huge-activation                              16.5303+-0.5515     ?     16.7507+-0.6303        ? might be 1.0133x slower
   sinkable-new-object-dag                           53.3579+-1.0259     ?     53.6307+-1.7802        ?
   sinkable-new-object-taken                         43.8796+-0.6260           43.7714+-0.8259        
   sinkable-new-object                               30.0031+-0.5401     ?     30.3299+-0.9878        ? might be 1.0109x slower
   slow-array-profile-convergence                     2.4131+-0.0865     ?      2.4413+-0.1153        ? might be 1.0117x slower
   slow-convergence                                   2.3476+-0.0475            2.3465+-0.0627        
   slow-ternaries                                    18.4766+-1.5149           18.4454+-1.7478        
   sorting-benchmark                                 16.9309+-0.4036           16.8250+-0.1927        
   sparse-conditional                                 1.1479+-0.0444     ?      1.1858+-0.0621        ? might be 1.0330x slower
   splice-to-remove                                  11.8521+-0.1114     ?     12.1000+-0.3780        ? might be 1.0209x slower
   string-char-code-at                               13.2772+-0.2350     ?     13.4928+-0.8981        ? might be 1.0162x slower
   string-concat-object                               2.1737+-0.0999     ?      2.2434+-0.1201        ? might be 1.0321x slower
   string-concat-pair-object                          2.0744+-0.0810     ?      2.1122+-0.0921        ? might be 1.0182x slower
   string-concat-pair-simple                          9.5300+-0.5252     ?      9.7369+-0.4355        ? might be 1.0217x slower
   string-concat-simple                               9.9810+-0.8556            9.5912+-0.5626          might be 1.0406x faster
   string-cons-repeat                                 6.4404+-0.2627     ?      6.4713+-0.3387        ?
   string-cons-tower                                  6.6388+-0.2565            6.5749+-0.1192        
   string-equality                                   16.7649+-0.9911           16.3496+-0.5671          might be 1.0254x faster
   string-get-by-val-big-char                         6.4899+-0.0943     ?      6.6227+-0.2041        ? might be 1.0205x slower
   string-get-by-val-out-of-bounds-insane             3.0652+-0.1326     ?      3.1561+-0.1866        ? might be 1.0297x slower
   string-get-by-val-out-of-bounds                    3.8946+-0.0310     ?      4.0047+-0.1737        ? might be 1.0283x slower
   string-get-by-val                                  2.8349+-0.1009            2.8112+-0.0585        
   string-hash                                        1.8433+-0.0437            1.8304+-0.0498        
   string-long-ident-equality                        15.0740+-0.3290     ?     15.1531+-0.4664        ?
   string-out-of-bounds                              10.1203+-0.5585           10.0190+-0.2472          might be 1.0101x faster
   string-repeat-arith                               26.7010+-0.3962     ?     26.9368+-0.6501        ?
   string-sub                                        57.8300+-10.9460          53.2603+-0.3414          might be 1.0858x faster
   string-test                                        2.7977+-0.0318     ?      2.8207+-0.0618        ?
   string-var-equality                               26.7196+-0.6273           26.6905+-0.5171        
   structure-hoist-over-transitions                   2.3745+-0.0976     ?      2.4174+-0.0799        ? might be 1.0181x slower
   substring-concat-weird                            36.8462+-1.5069           36.2921+-0.9855          might be 1.0153x faster
   substring-concat                                  40.0787+-0.8984     ?     40.4617+-1.0261        ?
   substring                                         44.8496+-0.9578           44.7626+-1.5853        
   switch-char-constant                               2.6896+-0.0655            2.6145+-0.0441          might be 1.0287x faster
   switch-char                                        5.5411+-0.9362     ?      5.7995+-0.7648        ? might be 1.0466x slower
   switch-constant                                    8.5790+-0.7716     ?      9.3266+-1.0617        ? might be 1.0871x slower
   switch-string-basic-big-var                       14.5267+-0.3464     ?     14.6875+-0.5117        ? might be 1.0111x slower
   switch-string-basic-big                           15.1917+-1.0286           15.0090+-0.6407          might be 1.0122x faster
   switch-string-basic-var                           13.2975+-0.3707     ?     13.5329+-0.3635        ? might be 1.0177x slower
   switch-string-basic                               12.5054+-0.1195           12.4624+-0.3123        
   switch-string-big-length-tower-var                18.1817+-0.7308           17.8241+-0.4827          might be 1.0201x faster
   switch-string-length-tower-var                    14.3693+-3.0201           13.0288+-0.1956          might be 1.1029x faster
   switch-string-length-tower                        11.5341+-0.2474           11.3273+-0.2515          might be 1.0183x faster
   switch-string-short                               11.6365+-0.6071           11.3704+-0.3113          might be 1.0234x faster
   switch                                            11.2735+-0.7650           11.2407+-0.6594        
   tear-off-arguments-simple                          3.0665+-0.1381     ?      3.4880+-0.4691        ? might be 1.1374x slower
   tear-off-arguments                                 4.0928+-0.1097     ?      4.1238+-0.1362        ?
   temporal-structure                                11.8871+-0.1905           11.8255+-0.2746        
   to-int32-boolean                                  12.5016+-0.3251           12.4897+-0.0849        
   try-catch-get-by-val-cloned-arguments             14.1649+-0.4791           13.7198+-0.5174          might be 1.0324x faster
   try-catch-get-by-val-direct-arguments              7.0572+-1.0096            6.4601+-0.4270          might be 1.0924x faster
   try-catch-get-by-val-scoped-arguments              7.8568+-0.5870     ?      8.2882+-2.0976        ? might be 1.0549x slower
   typed-array-get-set-by-val-profiling              27.2337+-1.7177     ?     27.3196+-0.9672        ?
   undefined-property-access                        224.9351+-3.3191          223.2358+-0.5847        
   undefined-test                                     3.0521+-0.2421     ?      3.9728+-2.5919        ? might be 1.3016x slower
   unprofiled-licm                                   13.9478+-0.4604     ?     14.0096+-0.4820        ?
   varargs-call                                      13.4193+-0.4245           12.9343+-0.3102          might be 1.0375x faster
   varargs-construct-inline                          21.9944+-0.6145     ?     23.4446+-4.4979        ? might be 1.0659x slower
   varargs-construct                                 20.5804+-0.8263           19.7509+-0.8354          might be 1.0420x faster
   varargs-inline                                     8.6286+-0.0689     ?      8.6709+-0.1987        ?
   varargs-strict-mode                                9.7021+-0.4173            9.5163+-0.1323          might be 1.0195x faster
   varargs                                            9.5831+-0.2570     ?      9.5937+-0.1470        ?
   weird-inlining-const-prop                          2.2389+-0.1367            2.1890+-0.0919          might be 1.0228x faster

   <geometric>                                        7.9047+-0.0201     ?      7.9173+-0.0348        ? might be 1.0016x slower

                                                        TipOfTree             HadBeenDictionary                                 
AsmBench:
   bigfib.cpp                                       453.0993+-10.6389         449.1185+-10.3073       
   cray.c                                           390.4268+-1.8177     ?    391.7875+-1.9913        ?
   dry.c                                            426.1380+-1.9203          421.3887+-8.4256          might be 1.0113x faster
   FloatMM.c                                        683.0668+-4.2244          682.0515+-3.2651        
   gcc-loops.cpp                                   3413.6844+-7.8313         3411.3935+-10.8806       
   n-body.c                                         825.4658+-15.8070         821.1726+-2.3901        
   Quicksort.c                                      405.2366+-4.4828          404.4930+-5.0818        
   stepanov_container.cpp                          3469.9463+-21.4182    ?   3531.2835+-76.0227       ? might be 1.0177x slower
   Towers.c                                         231.7296+-1.6961     ?    233.4662+-3.2328        ?

   <geometric>                                      712.3846+-1.7164          712.3011+-2.0391          might be 1.0001x faster

                                                        TipOfTree             HadBeenDictionary                                 
CompressionBench:
   huffman                                           60.9854+-1.4215           60.0262+-0.7235          might be 1.0160x faster
   arithmetic-simple                                271.5886+-1.4796     ?    271.9766+-1.5692        ?
   arithmetic-precise                               244.4862+-1.4820          242.1832+-1.3596        
   arithmetic-complex-precise                       264.1210+-49.4218         243.5593+-1.0055          might be 1.0844x faster
   arithmetic-precise-order-0                       279.1149+-1.7153     ?    279.2021+-1.6622        ?
   arithmetic-precise-order-1                       293.9162+-1.0506          292.5996+-1.0059        
   arithmetic-precise-order-2                       340.6184+-2.2551     ?    341.7030+-2.0446        ?
   arithmetic-simple-order-1                        316.9361+-2.4820     ?    317.3271+-1.3949        ?
   arithmetic-simple-order-2                        367.6014+-4.7144          365.6509+-2.2353        
   lz-string                                        313.8441+-7.9630          309.2454+-1.9415          might be 1.0149x faster

   <geometric>                                      253.0887+-4.6598          250.2800+-0.5614          might be 1.0112x faster

                                                        TipOfTree             HadBeenDictionary                                 
Geomean of preferred means:
   <scaled-result>                                   50.8857+-0.1323           50.7568+-0.0943          might be 1.0025x faster
Comment 2 Filip Pizlo 2015-09-10 15:24:10 PDT
Created attachment 260960 [details]
the patch
Comment 3 Mark Lam 2015-09-10 15:27:41 PDT
Comment on attachment 260960 [details]
the patch

r=me
Comment 4 Filip Pizlo 2015-09-10 16:08:12 PDT
Landed in http://trac.webkit.org/changeset/189596