<?xml version="1.0" encoding="UTF-8" standalone="yes" ?>
<!DOCTYPE bugzilla SYSTEM "https://bugs.webkit.org/page.cgi?id=bugzilla.dtd">

<bugzilla version="5.0.4.1"
          urlbase="https://bugs.webkit.org/"
          
          maintainer="admin@webkit.org"
>

    <bug>
          <bug_id>148288</bug_id>
          
          <creation_ts>2015-08-20 21:30:09 -0700</creation_ts>
          <short_desc>Create ById IC for ByVal operation only when the specific Id comes more than once</short_desc>
          <delta_ts>2015-08-24 13:26:18 -0700</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>JavaScriptCore</component>
          <version>WebKit Nightly Build</version>
          <rep_platform>Unspecified</rep_platform>
          <op_sys>Unspecified</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords></keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Yusuke Suzuki">ysuzuki</reporter>
          <assigned_to name="Yusuke Suzuki">ysuzuki</assigned_to>
          <cc>fpizlo</cc>
    
    <cc>ggaren</cc>
    
    <cc>mark.lam</cc>
    
    <cc>msaboff</cc>
    
    <cc>saam</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1119651</commentid>
    <comment_count>0</comment_count>
    <who name="Yusuke Suzuki">ysuzuki</who>
    <bug_when>2015-08-20 21:30:09 -0700</bug_when>
    <thetext>After introducing byId ICs into byVal ops, byVal ops creates much ICs than before.

https://bugs.webkit.org/show_bug.cgi?id=148273
The failure figures out these ICs are created even if this op is executed only once.

The situation is the following;
In the current code, when byVal op is executed with the Id, we immediately set up the byId IC for that byVal op.
But setting up JITGetByIdGenerator generates the fast path IC code and consumes executable memory.
As a result, if we call eval(&quot;contains byVal ops&quot;) with the different strings repeatedly under no-llint environment, each eval call creates byId IC for byVal and consumes executable memory.

To solve it, we will add &quot;seen&quot; flag to ByValInfo.
And we will create the IC on the second byVal op call with the same Id.

The rough design is the following,

if (!byValInfo-&gt;seen) {
    byValInfo-&gt;seen = true;
    byValInfo-&gt;cachedId = givenId;
} else if (byValInfo-&gt;cachedId == givenId)
    Generate IC!
else
    Make the call site generic.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1119664</commentid>
    <comment_count>1</comment_count>
    <who name="Yusuke Suzuki">ysuzuki</who>
    <bug_when>2015-08-20 22:20:59 -0700</bug_when>
    <thetext>Once getting the patch into shape, we need to drop the skip in https://bugs.webkit.org/show_bug.cgi?id=148273</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1120294</commentid>
    <comment_count>2</comment_count>
      <attachid>259757</attachid>
    <who name="Yusuke Suzuki">ysuzuki</who>
    <bug_when>2015-08-24 10:43:12 -0700</bug_when>
    <thetext>Created attachment 259757
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1120297</commentid>
    <comment_count>3</comment_count>
    <who name="Yusuke Suzuki">ysuzuki</who>
    <bug_when>2015-08-24 10:44:54 -0700</bug_when>
    <thetext>Benchmark results.

Benchmark report for SunSpider, LongSpider, V8Spider, Octane, Kraken, and JSRegress on Yusukes-MacBook-Pro (MacBookPro11,3).

VMs tested:
&quot;master&quot; at /Users/yusukesuzuki/development/WebKit/WebKitBuild/master-for-ic-fix/Release/jsc
&quot;ic&quot; at /Users/yusukesuzuki/development/WebKit/WebKitBuild/ic-fix/Release/jsc

Collected 4 samples per benchmark/VM, with 4 VM invocations per benchmark. Emitted a call to gc() between sample measurements.
Used 1 benchmark iteration per VM invocation for warm-up. Used the jsc-specific preciseTime() function to get microsecond-level
timing. Reporting benchmark execution times with 95% confidence intervals in milliseconds.

                                                          master                      ic                                        
SunSpider:
   3d-cube                                            4.8950+-0.1237     ^      4.4082+-0.0484        ^ definitely 1.1104x faster
   3d-morph                                           5.5245+-0.7775            5.2208+-0.0188          might be 1.0582x faster
   3d-raytrace                                        5.1266+-0.1239     ?      5.2955+-0.2978        ? might be 1.0329x slower
   access-binary-trees                                1.9720+-0.1269     ?      2.0294+-0.0276        ? might be 1.0291x slower
   access-fannkuch                                    5.2841+-0.0388     ?      5.3985+-0.1370        ? might be 1.0217x slower
   access-nbody                                       2.4684+-0.1640     ?      2.4731+-0.1834        ?
   access-nsieve                                      3.0925+-0.2057            3.0574+-0.1677          might be 1.0115x faster
   bitops-3bit-bits-in-byte                           1.5672+-0.2066            1.4465+-0.0167          might be 1.0835x faster
   bitops-bits-in-byte                                3.3809+-0.2352            3.2858+-0.0191          might be 1.0289x faster
   bitops-bitwise-and                                 1.9889+-0.0968     ?      1.9914+-0.0396        ?
   bitops-nsieve-bits                                 2.9876+-0.0164     ?      3.0338+-0.1690        ? might be 1.0154x slower
   controlflow-recursive                              2.0355+-0.1398            1.9357+-0.0834          might be 1.0516x faster
   crypto-aes                                         3.8264+-0.2044            3.8166+-0.0641        
   crypto-md5                                         2.4739+-0.3817            2.3403+-0.0256          might be 1.0571x faster
   crypto-sha1                                        2.5663+-0.3692            2.3836+-0.2679          might be 1.0766x faster
   date-format-tofte                                  6.7745+-0.3135            6.7235+-0.1192        
   date-format-xparb                                  4.9304+-0.5542            4.7330+-0.3545          might be 1.0417x faster
   math-cordic                                        2.8828+-0.2677            2.7490+-0.0661          might be 1.0487x faster
   math-partial-sums                                  5.1415+-0.0567     ?      5.1788+-0.2729        ?
   math-spectral-norm                                 1.7795+-0.0444     ?      1.8533+-0.0759        ? might be 1.0415x slower
   regexp-dna                                         6.5806+-0.2016            6.4329+-0.1036          might be 1.0230x faster
   string-base64                                      4.4734+-0.3616            4.3055+-0.1398          might be 1.0390x faster
   string-fasta                                       5.8469+-0.1348            5.7702+-0.1275          might be 1.0133x faster
   string-tagcloud                                    8.1245+-0.0813            8.0292+-0.0949          might be 1.0119x faster
   string-unpack-code                                20.5140+-2.4691           19.4479+-1.7026          might be 1.0548x faster
   string-validate-input                              4.6157+-0.2543     ?      4.6782+-0.4178        ? might be 1.0135x slower

   &lt;arithmetic&gt;                                       4.6482+-0.1122            4.5392+-0.0631          might be 1.0240x faster

                                                          master                      ic                                        
LongSpider:
   3d-cube                                          834.9989+-14.3271    ?    838.7601+-22.0063       ?
   3d-morph                                        1542.4050+-23.6740    ?   1548.9382+-37.5757       ?
   3d-raytrace                                      625.3683+-10.0351         620.1567+-7.4127        
   access-binary-trees                              812.1281+-16.5889    ?    829.5452+-13.3014       ? might be 1.0214x slower
   access-fannkuch                                  288.7075+-13.3416         285.6575+-6.2635          might be 1.0107x faster
   access-nbody                                     522.8333+-8.2151          522.0870+-3.4390        
   access-nsieve                                    368.9378+-21.6602         360.1088+-18.2949         might be 1.0245x faster
   bitops-3bit-bits-in-byte                          39.8757+-2.8274           38.9567+-0.9192          might be 1.0236x faster
   bitops-bits-in-byte                               76.4435+-0.6506     ?     76.8669+-2.9014        ?
   bitops-nsieve-bits                               417.9351+-5.9119     ?    423.9992+-10.2671       ? might be 1.0145x slower
   controlflow-recursive                            458.6976+-15.3114    ?    467.2002+-29.5969       ? might be 1.0185x slower
   crypto-aes                                       590.9203+-6.3986          586.2678+-20.6003       
   crypto-md5                                       506.0730+-14.1717    ?    508.7957+-11.1478       ?
   crypto-sha1                                      639.4576+-19.1304         633.2165+-16.9996       
   date-format-tofte                                521.1271+-10.7640         511.8284+-3.0682          might be 1.0182x faster
   date-format-xparb                                683.6581+-12.6768    !    717.0543+-14.3318       ! definitely 1.0488x slower
   hash-map                                         158.3597+-3.2474          153.3233+-3.6711          might be 1.0328x faster
   math-cordic                                      499.6251+-4.0220     ?    502.0118+-19.4527       ?
   math-partial-sums                                484.6980+-8.0056          479.9955+-1.7999        
   math-spectral-norm                               571.4684+-10.2683         569.0518+-13.0031       
   string-base64                                    352.6993+-11.7840         349.8032+-8.7139        
   string-fasta                                     374.6824+-2.7157     ?    379.2657+-4.8389        ? might be 1.0122x slower
   string-tagcloud                                  182.2364+-3.2024     ?    186.6809+-7.0021        ? might be 1.0244x slower

   &lt;geometric&gt;                                      401.4190+-2.2804     ?    401.4886+-1.6300        ? might be 1.0002x slower

                                                          master                      ic                                        
V8Spider:
   crypto                                            48.5731+-1.7374     ?     49.5720+-1.1053        ? might be 1.0206x slower
   deltablue                                         87.1987+-4.4169           86.7971+-8.5308        
   earley-boyer                                      41.5285+-3.2256           40.5745+-0.7233          might be 1.0235x faster
   raytrace                                          31.7237+-2.5370           31.0477+-2.3190          might be 1.0218x faster
   regexp                                            62.9616+-0.4965     ?     63.3495+-0.9610        ?
   richards                                          65.6168+-2.8144     ?     66.2745+-1.9340        ? might be 1.0100x slower
   splay                                             37.0652+-3.3255           34.4015+-7.0583          might be 1.0774x faster

   &lt;geometric&gt;                                       50.6183+-0.9148           49.9637+-1.9877          might be 1.0131x faster

                                                          master                      ic                                        
Octane:
   encrypt                                           0.17049+-0.01028    ?     0.17455+-0.00094       ? might be 1.0238x slower
   decrypt                                           3.41426+-0.05678          3.37818+-0.05413         might be 1.0107x faster
   deltablue                                x2       0.16250+-0.00451          0.16098+-0.00364       
   earley                                            0.28154+-0.00575    ?     0.28243+-0.00408       ?
   boyer                                             4.30470+-0.08769    ?     4.42376+-0.32720       ? might be 1.0277x slower
   navier-stokes                            x2       4.98274+-0.04305    ?     4.99842+-0.09226       ?
   raytrace                                 x2       1.04741+-0.13765          1.02645+-0.12160         might be 1.0204x faster
   richards                                 x2       0.11442+-0.00529          0.11337+-0.00105       
   splay                                    x2       0.34131+-0.01083          0.33655+-0.00896         might be 1.0142x faster
   regexp                                   x2      25.21667+-0.30216         25.03787+-0.35599       
   pdfjs                                    x2      37.80714+-0.35772    ?    37.86931+-0.31105       ?
   mandreel                                 x2      46.69843+-0.69445    ^    44.84475+-0.89287       ^ definitely 1.0413x faster
   gbemu                                    x2      34.88492+-0.16671         34.53472+-0.99010         might be 1.0101x faster
   closure                                           0.57865+-0.01483          0.57655+-0.00430       
   jquery                                            7.33573+-0.18689          7.30656+-0.12705       
   box2d                                    x2      10.16154+-0.28041         10.15637+-0.15428       
   zlib                                     x2     383.61766+-10.28099   ?   393.39746+-8.15394       ? might be 1.0255x slower
   typescript                               x2     656.22577+-25.01901       650.64197+-6.27099       

   &lt;geometric&gt;                                       5.71541+-0.05831          5.68845+-0.04739         might be 1.0047x faster

                                                          master                      ic                                        
Kraken:
   ai-astar                                          228.913+-5.311      ?     231.935+-14.226        ? might be 1.0132x slower
   audio-beat-detection                               50.493+-0.338      ?      50.536+-0.703         ?
   audio-dft                                          98.184+-4.139      ?      99.560+-4.044         ? might be 1.0140x slower
   audio-fft                                          36.033+-1.748      ?      36.038+-1.532         ?
   audio-oscillator                                   61.721+-1.650             60.102+-0.206           might be 1.0269x faster
   imaging-darkroom                                   62.508+-0.619             62.263+-0.444         
   imaging-desaturate                                 50.657+-0.508             50.479+-1.064         
   imaging-gaussian-blur                              85.809+-0.711             85.551+-0.298         
   json-parse-financial                               40.069+-1.572             39.584+-0.848           might be 1.0122x faster
   json-stringify-tinderbox                           22.964+-1.046      ?      23.209+-2.626         ? might be 1.0107x slower
   stanford-crypto-aes                                40.803+-0.360      ?      41.672+-2.089         ? might be 1.0213x slower
   stanford-crypto-ccm                                36.229+-3.330             35.187+-1.727           might be 1.0296x faster
   stanford-crypto-pbkdf2                             96.209+-0.313      ?      97.294+-3.192         ? might be 1.0113x slower
   stanford-crypto-sha256-iterative                   37.438+-2.183             37.333+-0.541         

   &lt;arithmetic&gt;                                       67.716+-0.577      ?      67.910+-1.288         ? might be 1.0029x slower

                                                          master                      ic                                        
JSRegress:
   abc-forward-loop-equal                            29.8595+-0.7297     ?     30.3467+-1.4902        ? might be 1.0163x slower
   abc-postfix-backward-loop                         30.4935+-0.9854           29.7267+-0.4203          might be 1.0258x faster
   abc-simple-backward-loop                          29.4898+-0.4402     ?     29.8400+-0.7036        ? might be 1.0119x slower
   abc-simple-forward-loop                           30.9755+-3.1297           30.4270+-2.0284          might be 1.0180x faster
   abc-skippy-loop                                   21.9113+-0.9080     ?     22.4575+-3.0962        ? might be 1.0249x slower
   abs-boolean                                        2.4988+-0.1626            2.4568+-0.0284          might be 1.0171x faster
   adapt-to-double-divide                            16.4841+-0.4656     ?     16.9908+-0.2320        ? might be 1.0307x slower
   aliased-arguments-getbyval                         1.0909+-0.0355     ?      1.1826+-0.1496        ? might be 1.0840x slower
   allocate-big-object                                2.5242+-0.5127     ?      2.5753+-0.5468        ? might be 1.0202x slower
   arguments-named-and-reflective                    11.4116+-0.4350           11.1919+-0.2104          might be 1.0196x faster
   arguments-out-of-bounds                            9.1530+-0.1378     ?      9.2842+-0.2499        ? might be 1.0143x slower
   arguments-strict-mode                             10.1381+-0.7049            9.9100+-0.5031          might be 1.0230x faster
   arguments                                          8.5581+-0.0894     ?      8.6145+-0.3134        ?
   arity-mismatch-inlining                            0.8025+-0.1001            0.7802+-0.0054          might be 1.0286x faster
   array-access-polymorphic-structure                 6.2133+-0.5647            5.8093+-0.1150          might be 1.0695x faster
   array-nonarray-polymorhpic-access                 25.2977+-0.9252     ?     25.8604+-1.6085        ? might be 1.0222x slower
   array-prototype-every                             76.8730+-0.5969     ^     75.8251+-0.2037        ^ definitely 1.0138x faster
   array-prototype-forEach                           76.1814+-2.0485           74.7393+-0.1150          might be 1.0193x faster
   array-prototype-map                               82.7990+-1.0863     ?     82.8018+-1.8119        ?
   array-prototype-reduce                            76.0932+-9.7637           71.7655+-0.5369          might be 1.0603x faster
   array-prototype-reduceRight                       73.4560+-3.1455           70.8948+-0.3995          might be 1.0361x faster
   array-prototype-some                              76.9339+-0.8111           76.0162+-0.5338          might be 1.0121x faster
   array-splice-contiguous                           21.1316+-0.8088           20.7238+-0.7087          might be 1.0197x faster
   array-with-double-add                              3.4008+-0.0577     ?      3.4280+-0.0602        ?
   array-with-double-increment                        3.0478+-0.0401     ?      3.1226+-0.0818        ? might be 1.0245x slower
   array-with-double-mul-add                          4.2631+-0.1845     ?      4.3263+-0.4530        ? might be 1.0148x slower
   array-with-double-sum                              3.1741+-0.0574     ?      3.2684+-0.1079        ? might be 1.0297x slower
   array-with-int32-add-sub                           6.0027+-0.3666     ?      6.0318+-0.3860        ?
   array-with-int32-or-double-sum                     3.3506+-0.1358            3.2935+-0.1823          might be 1.0173x faster
   ArrayBuffer-DataView-alloc-large-long-lived   
                                                     27.1061+-0.3800           26.8340+-0.9249          might be 1.0101x faster
   ArrayBuffer-DataView-alloc-long-lived             12.7910+-0.4169     ?     12.9314+-1.5583        ? might be 1.0110x slower
   ArrayBuffer-Int32Array-byteOffset                  3.6448+-0.1867     ?      3.7703+-0.2439        ? might be 1.0344x slower
   ArrayBuffer-Int8Array-alloc-large-long-lived   
                                                     27.3103+-0.9297           26.9379+-0.3566          might be 1.0138x faster
   ArrayBuffer-Int8Array-alloc-long-lived-buffer   
                                                     20.5690+-0.9768           20.3438+-0.3516          might be 1.0111x faster
   ArrayBuffer-Int8Array-alloc-long-lived            12.4053+-1.4617           11.9770+-0.2646          might be 1.0358x faster
   ArrayBuffer-Int8Array-alloc                       10.3818+-0.3362           10.2670+-0.2096          might be 1.0112x faster
   arrowfunction-call                                11.0336+-0.3947           10.8059+-0.2675          might be 1.0211x faster
   asmjs_bool_bug                                     7.0331+-0.2693            6.9392+-0.0903          might be 1.0135x faster
   assign-custom-setter-polymorphic                   2.4085+-0.0676            2.3884+-0.0429        
   assign-custom-setter                               3.3239+-0.3104            3.2825+-0.1273          might be 1.0126x faster
   basic-set                                          7.5746+-0.1816            7.4528+-0.1129          might be 1.0163x faster
   big-int-mul                                        3.5036+-0.1081     ?      3.5056+-0.1281        ?
   boolean-test                                       3.0070+-0.1343     ?      3.0465+-0.2660        ? might be 1.0131x slower
   branch-fold                                        3.6291+-0.0241     ?      3.6296+-0.0535        ?
   branch-on-string-as-boolean                       16.5719+-0.2635     ?     17.5350+-1.3162        ? might be 1.0581x slower
   by-val-generic                                     2.4099+-0.1915            2.3078+-0.0660          might be 1.0442x faster
   call-spread-apply                                 26.1016+-0.4388     ?     26.3210+-1.3901        ?
   call-spread-call                                  22.5133+-4.0671           22.3873+-1.6941        
   captured-assignments                               0.4208+-0.0057     ?      0.4286+-0.0455        ? might be 1.0187x slower
   cast-int-to-double                                 5.2396+-0.2164            5.2356+-0.1769        
   cell-argument                                      6.3983+-0.1498            6.2240+-0.2727          might be 1.0280x faster
   cfg-simplify                                       2.6733+-0.1116     ?      2.6992+-0.1046        ?
   chain-getter-access                                8.2831+-0.0707            8.2705+-0.1552        
   cmpeq-obj-to-obj-other                            11.7294+-1.3279     ?     12.1580+-1.9574        ? might be 1.0365x slower
   constant-test                                      4.8545+-0.0543            4.8096+-0.0332        
   create-lots-of-functions                           9.5565+-0.5683            9.0632+-0.4105          might be 1.0544x faster
   cse-new-array-buffer                               2.1256+-0.2297     ?      2.1523+-0.2898        ? might be 1.0125x slower
   cse-new-array                                      2.2620+-0.1203            2.2200+-0.2428          might be 1.0189x faster
   DataView-custom-properties                        32.0752+-0.6685           31.8375+-0.3639        
   delay-tear-off-arguments-strictmode               12.5389+-0.0694           12.4146+-0.2743          might be 1.0100x faster
   deltablue-varargs                                157.2288+-3.4997          155.3830+-6.2472          might be 1.0119x faster
   destructuring-arguments                          163.8407+-2.4533     ?    165.7385+-7.3056        ? might be 1.0116x slower
   destructuring-parameters-overridden-by-function   
                                                      0.4651+-0.0755     ?      0.5261+-0.2979        ? might be 1.1311x slower
   destructuring-swap                                 4.7777+-0.1657            4.7100+-0.0590          might be 1.0144x faster
   direct-arguments-getbyval                          1.1246+-0.1080     ?      1.1695+-0.1100        ? might be 1.0399x slower
   div-boolean-double                                 5.4355+-0.1137     ?      6.1593+-2.2676        ? might be 1.1332x slower
   div-boolean                                        8.4579+-0.3552            8.2567+-0.2389          might be 1.0244x faster
   double-get-by-val-out-of-bounds                    4.1487+-0.0757     ?      4.2742+-0.1059        ? might be 1.0302x slower
   double-pollution-getbyval                          8.8266+-0.1263     ?      8.9526+-0.2625        ? might be 1.0143x slower
   double-pollution-putbyoffset                       3.7956+-0.5411            3.7083+-0.0645          might be 1.0235x faster
   double-real-use                                   24.6331+-0.4881           24.4310+-1.4050        
   double-to-int32-typed-array-no-inline              1.9970+-0.0762     ?      2.0125+-0.0651        ?
   double-to-int32-typed-array                        1.7657+-0.1482            1.7280+-0.0225          might be 1.0218x faster
   double-to-uint32-typed-array-no-inline             1.9799+-0.0978     ?      2.1161+-0.2628        ? might be 1.0688x slower
   double-to-uint32-typed-array                       1.8338+-0.0972     ?      1.8915+-0.1200        ? might be 1.0315x slower
   elidable-new-object-dag                           34.0840+-0.7215           33.7549+-0.9851        
   elidable-new-object-roflcopter                    33.4189+-0.8327     ?     33.7923+-2.0537        ? might be 1.0112x slower
   elidable-new-object-then-call                     32.1600+-1.4739           31.5402+-0.2576          might be 1.0196x faster
   elidable-new-object-tree                          37.0881+-0.9939     ?     37.1515+-0.7734        ?
   empty-string-plus-int                              4.9228+-0.1352     ?      5.0630+-0.1889        ? might be 1.0285x slower
   emscripten-cube2hash                              26.0952+-2.6913           25.7183+-2.3421          might be 1.0147x faster
   exit-length-on-plain-object                       12.9370+-1.4071     ?     13.2047+-1.7485        ? might be 1.0207x slower
   external-arguments-getbyval                        1.1230+-0.0871     ?      1.1346+-0.0149        ? might be 1.0104x slower
   external-arguments-putbyval                        2.1518+-0.0730            2.0323+-0.0596          might be 1.0588x faster
   fixed-typed-array-storage-var-index                1.1478+-0.0705            1.1198+-0.0284          might be 1.0250x faster
   fixed-typed-array-storage                          0.8663+-0.0956            0.8329+-0.0166          might be 1.0402x faster
   Float32Array-matrix-mult                           3.8990+-0.2635            3.7900+-0.0208          might be 1.0288x faster
   Float32Array-to-Float64Array-set                  46.1259+-0.8944           45.9468+-0.6212        
   Float64Array-alloc-long-lived                     56.7482+-0.7941     ?     57.6157+-2.1011        ? might be 1.0153x slower
   Float64Array-to-Int16Array-set                    57.3625+-2.6708           55.9687+-0.7054          might be 1.0249x faster
   fold-double-to-int                                12.7402+-1.7053           12.3546+-0.7229          might be 1.0312x faster
   fold-get-by-id-to-multi-get-by-offset-rare-int   
                                                     10.7925+-2.4531     ?     11.5863+-1.8796        ? might be 1.0735x slower
   fold-get-by-id-to-multi-get-by-offset             10.8633+-3.5888           10.2806+-1.0208          might be 1.0567x faster
   fold-multi-get-by-offset-to-get-by-offset   
                                                      8.6937+-0.8856            7.6913+-2.9715          might be 1.1303x faster
   fold-multi-get-by-offset-to-poly-get-by-offset   
                                                      8.0280+-0.4111     ?      8.1999+-1.4194        ? might be 1.0214x slower
   fold-multi-put-by-offset-to-poly-put-by-offset   
                                                      8.7241+-2.1186            8.2817+-1.5226          might be 1.0534x faster
   fold-multi-put-by-offset-to-put-by-offset   
                                                      6.3060+-3.0903     ?      6.6070+-1.7516        ? might be 1.0477x slower
   fold-multi-put-by-offset-to-replace-or-transition-put-by-offset   
                                                      8.0148+-0.2526     ?      8.0930+-0.4485        ?
   fold-put-by-id-to-multi-put-by-offset             11.3260+-3.0555            9.6570+-1.1946          might be 1.1728x faster
   fold-put-by-val-with-string-to-multi-put-by-offset   
                                                      9.6727+-1.4171     ?     11.5368+-2.4112        ? might be 1.1927x slower
   fold-put-by-val-with-symbol-to-multi-put-by-offset   
                                                     10.7723+-2.2721           10.7657+-1.8728        
   fold-put-structure                                 6.0835+-1.3030            5.9879+-1.8007          might be 1.0160x faster
   for-of-iterate-array-entries                      11.1656+-0.1600     ?     11.2230+-0.2368        ?
   for-of-iterate-array-keys                          3.5482+-0.5597            3.3846+-0.2923          might be 1.0483x faster
   for-of-iterate-array-values                        3.2512+-0.2528            3.2095+-0.1168          might be 1.0130x faster
   fround                                            18.0048+-0.3863           17.9282+-0.4280        
   ftl-library-inlining-dataview                     56.5247+-0.5651     ?     57.0070+-1.9220        ?
   ftl-library-inlining                              88.5607+-4.2671     ?     92.1458+-7.7512        ? might be 1.0405x slower
   function-call                                     10.6230+-0.1857     ?     10.7385+-0.2380        ? might be 1.0109x slower
   function-dot-apply                                 1.7810+-0.0357     ?      1.8659+-0.1666        ? might be 1.0477x slower
   function-test                                      2.7573+-0.0614     ?      2.7816+-0.0389        ?
   function-with-eval                               106.2371+-1.4698          104.9832+-6.3696          might be 1.0119x faster
   gcse-poly-get-less-obvious                        14.5601+-0.2089           14.5359+-0.4296        
   gcse-poly-get                                     16.1840+-0.2824     ?     16.2252+-0.4798        ?
   gcse                                               3.8709+-0.0906     ?      4.1512+-0.9831        ? might be 1.0724x slower
   get-by-id-bimorphic-check-structure-elimination-simple   
                                                      2.6221+-0.0218     ?      2.6815+-0.1218        ? might be 1.0227x slower
   get-by-id-bimorphic-check-structure-elimination   
                                                      5.7979+-0.0929     ?      5.8700+-0.2118        ? might be 1.0124x slower
   get-by-id-chain-from-try-block                     5.5823+-0.4524            5.5805+-0.2151        
   get-by-id-check-structure-elimination              4.3612+-0.0537     ?      4.5378+-0.1993        ? might be 1.0405x slower
   get-by-id-proto-or-self                           14.7100+-0.6991     ?     14.7985+-0.5740        ?
   get-by-id-quadmorphic-check-structure-elimination-simple   
                                                      2.9917+-0.2217            2.9033+-0.1003          might be 1.0304x faster
   get-by-id-self-or-proto                           15.2495+-1.1265     ?     16.1349+-1.6869        ? might be 1.0581x slower
   get-by-val-out-of-bounds                           3.8292+-0.2710            3.7325+-0.2053          might be 1.0259x faster
   get-by-val-with-string-bimorphic-check-structure-elimination-simple   
                                                      2.8304+-0.0209            2.7816+-0.0550          might be 1.0176x faster
   get-by-val-with-string-bimorphic-check-structure-elimination   
                                                      6.0577+-0.1007            5.9914+-0.0507          might be 1.0111x faster
   get-by-val-with-string-chain-from-try-block   
                                                      5.6625+-0.2226     ?      5.6917+-0.3084        ?
   get-by-val-with-string-check-structure-elimination   
                                                      5.2808+-0.0878     ^      5.1152+-0.0656        ^ definitely 1.0324x faster
   get-by-val-with-string-proto-or-self              15.2231+-1.3060     ?     15.4296+-0.4679        ? might be 1.0136x slower
   get-by-val-with-string-quadmorphic-check-structure-elimination-simple   
                                                      3.2448+-0.1090            3.1426+-0.0549          might be 1.0325x faster
   get-by-val-with-string-self-or-proto              15.2403+-1.2300     ?     15.4368+-0.3428        ? might be 1.0129x slower
   get-by-val-with-symbol-bimorphic-check-structure-elimination-simple   
                                                      3.0792+-0.1326            3.0345+-0.0412          might be 1.0147x faster
   get-by-val-with-symbol-bimorphic-check-structure-elimination   
                                                     12.5380+-0.1988     ?     12.9760+-0.9895        ? might be 1.0349x slower
   get-by-val-with-symbol-chain-from-try-block   
                                                      5.6661+-0.0657            5.6600+-0.2204        
   get-by-val-with-symbol-check-structure-elimination   
                                                     11.3857+-0.4118           11.3061+-0.1538        
   get-by-val-with-symbol-proto-or-self              15.0023+-0.3338     ?     15.4300+-0.3824        ? might be 1.0285x slower
   get-by-val-with-symbol-quadmorphic-check-structure-elimination-simple   
                                                      3.9248+-0.1546     ?      3.9620+-0.0974        ?
   get-by-val-with-symbol-self-or-proto              15.9385+-1.8642           15.8679+-1.3356        
   get_callee_monomorphic                             2.1970+-0.4615     ?      2.2095+-0.2650        ?
   get_callee_polymorphic                             3.2006+-0.1882     ?      3.2177+-0.2738        ?
   getter-no-activation                               4.9707+-0.6498            4.9581+-0.2819        
   getter-prototype                                   9.1134+-0.3425            8.9020+-0.2575          might be 1.0237x faster
   getter-richards                                  121.8536+-1.5967          121.4000+-13.1129       
   getter                                             5.7363+-1.1464     ?      5.7505+-1.1965        ?
   global-object-access-with-mutating-structure   
                                                      5.9109+-0.4967            5.6653+-0.1563          might be 1.0434x faster
   global-var-const-infer-fire-from-opt               0.7849+-0.1236     ?      0.7891+-0.0604        ?
   global-var-const-infer                             0.5965+-0.0410            0.5855+-0.0172          might be 1.0188x faster
   hard-overflow-check-equal                         33.1633+-0.3162     ?     33.7616+-0.6005        ? might be 1.0180x slower
   hard-overflow-check                               33.7747+-1.1612           33.5032+-0.7842        
   HashMap-put-get-iterate-keys                      24.5500+-2.5442     ?     25.5380+-1.6537        ? might be 1.0402x slower
   HashMap-put-get-iterate                           28.0864+-1.5715     ?     28.7688+-0.8076        ? might be 1.0243x slower
   HashMap-string-put-get-iterate                    24.9203+-1.2797     ?     25.0547+-2.5213        ?
   hoist-make-rope                                    9.0181+-1.0342            8.7068+-1.1349          might be 1.0358x faster
   hoist-poly-check-structure-effectful-loop   
                                                      4.2309+-0.1333            4.1293+-0.1266          might be 1.0246x faster
   hoist-poly-check-structure                         3.3557+-0.0671            3.3110+-0.1063          might be 1.0135x faster
   imul-double-only                                   7.8038+-0.2698            7.5412+-0.1495          might be 1.0348x faster
   imul-int-only                                      8.8829+-1.5250            8.3496+-1.2906          might be 1.0639x faster
   imul-mixed                                         7.0240+-0.3030            6.4846+-0.5118          might be 1.0832x faster
   in-four-cases                                     17.2755+-0.4816     ?     17.5363+-0.5430        ? might be 1.0151x slower
   in-one-case-false                                  9.4630+-0.1430     ?      9.5732+-0.6543        ? might be 1.0116x slower
   in-one-case-true                                   9.4034+-0.0591     ?      9.6580+-0.7539        ? might be 1.0271x slower
   in-two-cases                                      10.0729+-0.1567           10.0198+-0.4635        
   indexed-properties-in-objects                      2.9058+-0.2877            2.8453+-0.0517          might be 1.0213x faster
   infer-closure-const-then-mov-no-inline             3.0150+-0.0524     ?      3.0666+-0.1359        ? might be 1.0171x slower
   infer-closure-const-then-mov                      18.2485+-0.6513     ?     18.6837+-0.5439        ? might be 1.0239x slower
   infer-closure-const-then-put-to-scope-no-inline   
                                                     10.6857+-0.1239           10.5746+-0.1796          might be 1.0105x faster
   infer-closure-const-then-put-to-scope             22.3870+-0.1555     ?     22.4141+-1.0093        ?
   infer-closure-const-then-reenter-no-inline   
                                                     50.0638+-2.1530     ?     50.6323+-0.4296        ? might be 1.0114x slower
   infer-closure-const-then-reenter                  22.7377+-1.7264           22.6592+-0.9931        
   infer-constant-global-property                     3.4305+-0.0586            3.4190+-0.0594        
   infer-constant-property                            2.6453+-0.0982            2.6198+-0.0151        
   infer-one-time-closure-ten-vars                    8.0192+-1.3151            7.9390+-0.5926          might be 1.0101x faster
   infer-one-time-closure-two-vars                    7.5959+-0.5960            7.4789+-0.1308          might be 1.0156x faster
   infer-one-time-closure                             7.3837+-0.4044     ?      7.5453+-0.4461        ? might be 1.0219x slower
   infer-one-time-deep-closure                       11.0098+-0.6171           10.8545+-0.4641          might be 1.0143x faster
   inline-arguments-access                            3.7162+-0.3650            3.6309+-0.4785          might be 1.0235x faster
   inline-arguments-aliased-access                    3.4761+-0.1216     ?      3.5188+-0.1812        ? might be 1.0123x slower
   inline-arguments-local-escape                      3.7236+-0.4132            3.5103+-0.1033          might be 1.0608x faster
   inline-get-scoped-var                              4.6288+-0.3872     ?      4.7238+-0.4024        ? might be 1.0205x slower
   inlined-put-by-id-transition                       9.2322+-0.8125     ?      9.8571+-0.5359        ? might be 1.0677x slower
   inlined-put-by-val-with-string-transition   
                                                     74.2982+-1.5676           73.0778+-3.1577          might be 1.0167x faster
   inlined-put-by-val-with-symbol-transition   
                                                     73.6242+-4.7703           72.9174+-5.3258        
   int-or-other-abs-then-get-by-val                   4.8758+-0.0661     ?      4.8940+-0.1318        ?
   int-or-other-abs-zero-then-get-by-val             16.3628+-0.6860     ?     16.4833+-0.1655        ?
   int-or-other-add-then-get-by-val                   4.0894+-0.1002     ?      4.2795+-0.4265        ? might be 1.0465x slower
   int-or-other-add                                   4.9225+-0.1076     ?      4.9460+-0.1669        ?
   int-or-other-div-then-get-by-val                   3.8594+-0.1243     ?      3.9260+-0.2372        ? might be 1.0172x slower
   int-or-other-max-then-get-by-val                   3.9117+-0.2108     ?      3.9583+-0.0523        ? might be 1.0119x slower
   int-or-other-min-then-get-by-val                   4.0477+-0.1788     ?      4.1005+-0.1164        ? might be 1.0131x slower
   int-or-other-mod-then-get-by-val                   3.5281+-0.0583     ?      3.5896+-0.1923        ? might be 1.0174x slower
   int-or-other-mul-then-get-by-val                   3.6618+-0.0333            3.6617+-0.0761        
   int-or-other-neg-then-get-by-val                   4.7662+-0.5264            4.4993+-0.0748          might be 1.0593x faster
   int-or-other-neg-zero-then-get-by-val             15.8652+-0.4588     ?     16.6387+-0.4271        ? might be 1.0488x slower
   int-or-other-sub-then-get-by-val                   4.2489+-0.4719            4.1135+-0.0376          might be 1.0329x faster
   int-or-other-sub                                   3.5066+-0.3145            3.3619+-0.0693          might be 1.0430x faster
   int-overflow-local                                 4.2388+-0.0771     ?      4.3074+-0.0565        ? might be 1.0162x slower
   Int16Array-alloc-long-lived                       41.8030+-0.9500           41.6678+-0.9136        
   Int16Array-bubble-sort-with-byteLength            18.1948+-1.6207           17.9051+-0.4010          might be 1.0162x faster
   Int16Array-bubble-sort                            17.7326+-0.4540     ?     17.7626+-0.7975        ?
   Int16Array-load-int-mul                            1.4246+-0.0763     ?      1.5241+-0.1759        ? might be 1.0699x slower
   Int16Array-to-Int32Array-set                      43.5377+-0.4511     ?     43.6970+-1.4693        ?
   Int32Array-alloc-large                            12.6503+-0.7549           12.5895+-0.5526        
   Int32Array-alloc-long-lived                       47.0074+-0.9142     ?     47.0518+-1.2839        ?
   Int32Array-alloc                                   2.7180+-0.1741            2.6770+-0.3051          might be 1.0153x faster
   Int32Array-Int8Array-view-alloc                    6.1983+-0.1834     ?      6.2695+-0.1333        ? might be 1.0115x slower
   int52-spill                                        4.6816+-0.1467     ?      4.7322+-0.1429        ? might be 1.0108x slower
   Int8Array-alloc-long-lived                        37.9771+-1.0245           37.8018+-1.3227        
   Int8Array-load-with-byteLength                     3.3795+-0.0177     ?      3.4133+-0.0317        ?
   Int8Array-load                                     3.4643+-0.1781     ?      3.4645+-0.1111        ?
   integer-divide                                    10.2011+-0.1334     ?     10.3015+-0.3847        ?
   integer-modulo                                     1.5140+-0.0374     ?      1.5223+-0.0304        ?
   is-boolean-fold-tricky                             3.8115+-0.0582     ?      3.8665+-0.2901        ? might be 1.0144x slower
   is-boolean-fold                                    2.6703+-0.1191            2.6487+-0.0348        
   is-function-fold-tricky-internal-function   
                                                     10.7545+-1.1558           10.4650+-0.4100          might be 1.0277x faster
   is-function-fold-tricky                            4.1351+-0.0730     ?      4.2383+-0.3451        ? might be 1.0250x slower
   is-function-fold                                   2.7321+-0.1270     ?      2.8052+-0.2724        ? might be 1.0268x slower
   is-number-fold-tricky                              4.0364+-0.0408     ?      4.1665+-0.2142        ? might be 1.0322x slower
   is-number-fold                                     2.6550+-0.1003            2.5937+-0.0282          might be 1.0236x faster
   is-object-or-null-fold-functions                   2.7165+-0.1399            2.6998+-0.0848        
   is-object-or-null-fold-less-tricky                 4.1103+-0.0707     ?      4.1295+-0.1064        ?
   is-object-or-null-fold-tricky                      5.3396+-0.2152     ?      5.4630+-0.2709        ? might be 1.0231x slower
   is-object-or-null-fold                             2.6954+-0.1040     ?      2.7151+-0.0814        ?
   is-object-or-null-trickier-function                4.1752+-0.1299     ?      4.2006+-0.2605        ?
   is-object-or-null-trickier-internal-function   
                                                     11.1157+-0.3756           11.1145+-0.5175        
   is-object-or-null-tricky-function                  4.2040+-0.2032     ?      4.4085+-0.8306        ? might be 1.0487x slower
   is-object-or-null-tricky-internal-function   
                                                      7.8646+-0.0261            7.8260+-0.2548        
   is-string-fold-tricky                              4.2056+-0.3948     ?      4.2700+-0.4323        ? might be 1.0153x slower
   is-string-fold                                     2.6758+-0.1156            2.6705+-0.0802        
   is-undefined-fold-tricky                           3.4949+-0.3506            3.3853+-0.2625          might be 1.0324x faster
   is-undefined-fold                                  2.6564+-0.0548     ?      2.6770+-0.0600        ?
   JSONP-negative-0                                   0.2738+-0.0603            0.2495+-0.0181          might be 1.0974x faster
   large-int-captured                                 3.9795+-0.4921     ?      4.1501+-0.6562        ? might be 1.0429x slower
   large-int-neg                                     13.8777+-0.3828     !     14.4685+-0.1778        ! definitely 1.0426x slower
   large-int                                         12.8430+-0.1558           12.8150+-0.5884        
   load-varargs-elimination                          21.3097+-0.7692     ?     21.8483+-1.6914        ? might be 1.0253x slower
   logical-not-weird-types                            2.8102+-0.0451     ?      2.8473+-0.0397        ? might be 1.0132x slower
   logical-not                                        4.2790+-0.0876     ?      4.3753+-0.1466        ? might be 1.0225x slower
   lots-of-fields                                     9.4100+-0.2096            9.2604+-0.4021          might be 1.0161x faster
   make-indexed-storage                               2.8793+-0.1856            2.7849+-0.0528          might be 1.0339x faster
   make-rope-cse                                      3.7170+-0.1305            3.6479+-0.1936          might be 1.0189x faster
   marsaglia-larger-ints                             32.5799+-0.9843     ?     33.0995+-3.4805        ? might be 1.0159x slower
   marsaglia-osr-entry                               22.1675+-1.6771           21.6620+-1.1644          might be 1.0233x faster
   math-with-out-of-bounds-array-values              22.5804+-1.9985           21.7222+-0.8605          might be 1.0395x faster
   max-boolean                                        2.7355+-0.1517            2.7045+-0.0929          might be 1.0115x faster
   method-on-number                                  16.2837+-0.2479     ?     16.3297+-0.9759        ?
   min-boolean                                        2.7079+-0.0776            2.6533+-0.0139          might be 1.0206x faster
   minus-boolean-double                               3.1587+-0.1517            3.0910+-0.0271          might be 1.0219x faster
   minus-boolean                                      2.4570+-0.0784            2.3641+-0.1038          might be 1.0393x faster
   misc-strict-eq                                    29.6487+-1.9028           29.0220+-1.6698          might be 1.0216x faster
   mod-boolean-double                                11.2670+-0.2916     ?     11.3707+-0.5519        ?
   mod-boolean                                        8.5316+-0.4079            8.4761+-0.2221        
   mul-boolean-double                                 3.8253+-0.6636            3.6747+-0.1802          might be 1.0410x faster
   mul-boolean                                        2.7743+-0.0311     ?      2.8549+-0.0798        ? might be 1.0290x slower
   neg-boolean                                        3.0958+-0.0370     ?      3.2518+-0.2714        ? might be 1.0504x slower
   negative-zero-divide                               0.3384+-0.0458            0.3323+-0.0120          might be 1.0184x faster
   negative-zero-modulo                               0.3282+-0.0255     ?      0.3496+-0.0582        ? might be 1.0653x slower
   negative-zero-negate                               0.3328+-0.0643            0.3204+-0.0431          might be 1.0387x faster
   nested-function-parsing                           43.7238+-1.2252           43.6808+-1.8066        
   new-array-buffer-dead                             88.1812+-0.8185     ?     88.4558+-2.2062        ?
   new-array-buffer-push                              6.0616+-0.4634            5.9085+-0.3618          might be 1.0259x faster
   new-array-dead                                    14.2520+-1.0183           14.1730+-1.1884        
   new-array-push                                     3.3697+-0.2466     ?      3.3990+-0.5187        ?
   no-inline-constructor                             31.4152+-0.3353           30.9752+-0.3689          might be 1.0142x faster
   number-test                                        2.8688+-0.0562     ?      2.9843+-0.2171        ? might be 1.0403x slower
   object-closure-call                                4.7980+-0.0666     ?      4.8828+-0.2007        ? might be 1.0177x slower
   object-get-own-property-symbols-on-large-array   
                                                      3.8921+-0.4617            3.8208+-0.2094          might be 1.0187x faster
   object-test                                        2.6859+-0.0219     ?      2.7470+-0.1606        ? might be 1.0227x slower
   obvious-sink-pathology-taken                     100.4803+-0.9445     ?    102.3992+-4.4146        ? might be 1.0191x slower
   obvious-sink-pathology                            95.6542+-3.7173     ?     97.4943+-4.1099        ? might be 1.0192x slower
   obviously-elidable-new-object                     29.6540+-1.7499           28.8183+-0.9666          might be 1.0290x faster
   plus-boolean-arith                                 2.4147+-0.0739            2.3815+-0.0326          might be 1.0140x faster
   plus-boolean-double                                3.1518+-0.1955     ?      3.1730+-0.2041        ?
   plus-boolean                                       2.5930+-0.0467            2.5906+-0.1468        
   poly-chain-access-different-prototypes-simple   
                                                      3.2790+-0.1050            3.2437+-0.1120          might be 1.0109x faster
   poly-chain-access-different-prototypes             2.8547+-0.0341     ?      2.9502+-0.1692        ? might be 1.0334x slower
   poly-chain-access-simpler                          3.2599+-0.0990            3.2086+-0.0691          might be 1.0160x faster
   poly-chain-access                                  3.3028+-0.2138     ?      3.3071+-0.1569        ?
   poly-stricteq                                     49.3000+-1.2059     ?     49.7143+-4.0754        ?
   polymorphic-array-call                             1.1692+-0.0422            1.1622+-0.1316        
   polymorphic-get-by-id                              2.8282+-0.0693     ?      2.9143+-0.1753        ? might be 1.0305x slower
   polymorphic-put-by-id                             24.5225+-0.9868     ?     25.2138+-0.6557        ? might be 1.0282x slower
   polymorphic-put-by-val-with-string                25.5485+-1.0072     ?     25.8920+-0.5061        ? might be 1.0134x slower
   polymorphic-put-by-val-with-symbol                26.9161+-3.1024           25.8444+-0.9545          might be 1.0415x faster
   polymorphic-structure                             13.7256+-0.2925     ?     13.9382+-0.6701        ? might be 1.0155x slower
   polyvariant-monomorphic-get-by-id                  6.4048+-0.8124     ?      6.8221+-1.6161        ? might be 1.0651x slower
   proto-getter-access                                8.3434+-0.1927     ?      8.7647+-0.6950        ? might be 1.0505x slower
   prototype-access-with-mutating-prototype           5.5140+-0.2439     ?      5.5255+-0.3280        ?
   put-by-id-replace-and-transition                   7.4097+-0.3363     ?      7.5705+-0.2344        ? might be 1.0217x slower
   put-by-id-slightly-polymorphic                     2.6052+-0.0367     ?      2.6405+-0.0432        ? might be 1.0135x slower
   put-by-id                                          9.8137+-0.6639            9.6863+-0.5898          might be 1.0132x faster
   put-by-val-direct                                  0.3308+-0.0061     ?      0.3314+-0.0220        ?
   put-by-val-large-index-blank-indexing-type   
                                                      5.3942+-0.5202            5.3632+-0.5994        
   put-by-val-machine-int                             2.2728+-0.1572     ?      2.2760+-0.2796        ?
   put-by-val-with-string-replace-and-transition   
                                                      9.9028+-0.2141            9.7835+-0.1142          might be 1.0122x faster
   put-by-val-with-string-slightly-polymorphic   
                                                      2.9301+-0.2435            2.8995+-0.0922          might be 1.0105x faster
   put-by-val-with-string                             9.9100+-0.1848     ?     10.0553+-0.2667        ? might be 1.0147x slower
   put-by-val-with-symbol-replace-and-transition   
                                                     11.3708+-0.6768     ?     11.4318+-0.2460        ?
   put-by-val-with-symbol-slightly-polymorphic   
                                                      3.1978+-0.2464            3.1544+-0.0269          might be 1.0138x faster
   put-by-val-with-symbol                             9.9905+-0.4642     ?     10.1990+-0.5719        ? might be 1.0209x slower
   rare-osr-exit-on-local                            14.8854+-0.4985     ?     14.9319+-0.0427        ?
   register-pressure-from-osr                        17.0052+-0.6850           16.8113+-0.2335          might be 1.0115x faster
   repeat-multi-get-by-offset                        22.1315+-0.4095           21.8903+-0.4884          might be 1.0110x faster
   setter-prototype                                   7.6112+-0.1311     ?      7.9045+-0.6543        ? might be 1.0385x slower
   setter                                             5.2043+-0.2915     ?      5.8081+-1.9893        ? might be 1.1160x slower
   simple-activation-demo                            25.2322+-1.1894           25.0563+-0.8716        
   simple-getter-access                              10.5020+-0.1085     ?     10.8397+-0.4613        ? might be 1.0322x slower
   simple-poly-call-nested                            8.4013+-0.5934     ?      8.6512+-0.7781        ? might be 1.0298x slower
   simple-poly-call                                   1.2472+-0.1697            1.1693+-0.0448          might be 1.0666x faster
   sin-boolean                                       18.7330+-0.6632     ?     19.5982+-2.6864        ? might be 1.0462x slower
   singleton-scope                                   56.2826+-1.3003           55.8004+-0.2202        
   sink-function                                      9.4662+-0.4476     ?      9.7155+-0.4840        ? might be 1.0263x slower
   sink-huge-activation                              16.6417+-1.0626     ?     17.1593+-1.1199        ? might be 1.0311x slower
   sinkable-new-object-dag                           54.4528+-1.5822           54.3275+-1.2257        
   sinkable-new-object-taken                         44.4813+-0.7230           44.1118+-1.3918        
   sinkable-new-object                               30.2390+-1.0944           29.7305+-0.7087          might be 1.0171x faster
   slow-array-profile-convergence                     2.5305+-0.2305            2.4818+-0.2254          might be 1.0197x faster
   slow-convergence                                   2.3052+-0.1725     ?      2.3788+-0.2427        ? might be 1.0319x slower
   slow-ternaries                                    17.7302+-0.6771     ?     18.7717+-2.9550        ? might be 1.0587x slower
   sorting-benchmark                                 17.1846+-0.6074     ?     17.2240+-0.5126        ?
   sparse-conditional                                 1.1235+-0.0976            1.1027+-0.0534          might be 1.0189x faster
   splice-to-remove                                  12.7888+-1.0544     ?     12.7957+-1.4742        ?
   string-char-code-at                               14.3842+-0.0882     ?     14.6514+-0.6229        ? might be 1.0186x slower
   string-concat-object                               2.2728+-0.3274            2.0866+-0.3451          might be 1.0892x faster
   string-concat-pair-object                          1.9673+-0.1521     ?      2.1064+-0.1825        ? might be 1.0707x slower
   string-concat-pair-simple                          9.3093+-0.4821            9.3093+-0.5101        
   string-concat-simple                               9.1638+-0.2796     ?      9.2353+-0.4552        ?
   string-cons-repeat                                 6.4625+-0.2712     ?      6.5366+-0.0532        ? might be 1.0115x slower
   string-cons-tower                                  6.6470+-0.2653     ?      6.7004+-0.2722        ?
   string-equality                                   15.5760+-0.2399     ?     16.4789+-2.9705        ? might be 1.0580x slower
   string-get-by-val-big-char                         6.8549+-0.3630            6.7303+-0.0759          might be 1.0185x faster
   string-get-by-val-out-of-bounds-insane             3.3106+-0.3256            3.2628+-0.2144          might be 1.0147x faster
   string-get-by-val-out-of-bounds                    4.1352+-0.1314            4.0615+-0.1919          might be 1.0181x faster
   string-get-by-val                                  2.8570+-0.1857            2.8516+-0.0865        
   string-hash                                        1.8170+-0.0291            1.8091+-0.0347        
   string-long-ident-equality                        14.0700+-0.8734     ^     12.5887+-0.3730        ^ definitely 1.1177x faster
   string-out-of-bounds                               9.8864+-0.2354     ?     10.4703+-0.5968        ? might be 1.0591x slower
   string-repeat-arith                               27.1256+-0.3945     ?     27.6539+-0.7851        ? might be 1.0195x slower
   string-sub                                        52.1514+-1.0280     ?     53.3043+-1.1536        ? might be 1.0221x slower
   string-test                                        2.8203+-0.0988            2.7872+-0.0740          might be 1.0119x faster
   string-var-equality                               27.3907+-2.0776           25.3070+-0.5394          might be 1.0823x faster
   structure-hoist-over-transitions                   2.3138+-0.1852     ?      2.4303+-0.1183        ? might be 1.0503x slower
   substring-concat-weird                            36.9525+-2.6178     ?     37.2427+-3.5895        ?
   substring-concat                                  40.2090+-1.4453           39.7189+-1.4179          might be 1.0123x faster
   substring                                         45.4710+-0.6038     ?     45.9222+-1.6579        ?
   switch-char-constant                               2.6689+-0.0318     ?      2.6865+-0.1020        ?
   switch-char                                        5.3908+-0.3552     ?      6.5712+-1.2822        ? might be 1.2190x slower
   switch-constant                                    7.0085+-0.7191     ?      7.4216+-0.1992        ? might be 1.0589x slower
   switch-string-basic-big-var                       14.7617+-1.9152           14.2913+-0.2913          might be 1.0329x faster
   switch-string-basic-big                           14.6921+-0.3795     ?     15.2847+-1.4608        ? might be 1.0403x slower
   switch-string-basic-var                           13.6546+-0.8759     ?     13.7850+-1.1219        ?
   switch-string-basic                               12.7780+-0.5445     ?     12.8995+-0.4015        ?
   switch-string-big-length-tower-var                18.7791+-2.2050           17.9701+-0.3237          might be 1.0450x faster
   switch-string-length-tower-var                    13.3517+-0.3410     ?     13.5579+-0.3187        ? might be 1.0154x slower
   switch-string-length-tower                        12.2167+-0.3505           12.2010+-0.3850        
   switch-string-short                               12.2465+-0.3509     ?     12.5642+-1.5012        ? might be 1.0259x slower
   switch                                            10.9247+-0.7051           10.9243+-1.0789        
   tear-off-arguments-simple                          3.0260+-0.1670     ?      3.1101+-0.2674        ? might be 1.0278x slower
   tear-off-arguments                                 4.0435+-0.0686     ?      4.1039+-0.2575        ? might be 1.0149x slower
   temporal-structure                                12.1691+-0.4488           12.0963+-0.3884        
   to-int32-boolean                                  12.9985+-0.5109           12.7478+-0.2835          might be 1.0197x faster
   try-catch-get-by-val-cloned-arguments             14.0524+-0.5049           14.0135+-0.3976        
   try-catch-get-by-val-direct-arguments              6.2744+-0.1099     ?      6.3130+-0.1435        ?
   try-catch-get-by-val-scoped-arguments              7.3967+-0.2766     ?      8.1035+-1.1185        ? might be 1.0956x slower
   typed-array-get-set-by-val-profiling              28.7735+-3.8192           27.6875+-2.2169          might be 1.0392x faster
   undefined-property-access                        232.7134+-4.7083          230.1381+-2.8006          might be 1.0112x faster
   undefined-test                                     2.9395+-0.1248            2.8791+-0.0534          might be 1.0210x faster
   unprofiled-licm                                   14.5088+-0.6339           13.9561+-0.8632          might be 1.0396x faster
   varargs-call                                      14.0327+-1.4022           13.8377+-0.8318          might be 1.0141x faster
   varargs-construct-inline                          22.8644+-3.0339           22.2543+-1.9204          might be 1.0274x faster
   varargs-construct                                 20.1953+-0.4762     ?     20.3165+-0.6016        ?
   varargs-inline                                     8.6763+-0.4067            8.6213+-0.1612        
   varargs-strict-mode                                9.0448+-0.3472     ?      9.1063+-0.4895        ?
   varargs                                            9.0218+-0.1773     ?      9.2488+-0.4557        ? might be 1.0252x slower
   weird-inlining-const-prop                          2.0393+-0.2165            1.9443+-0.1024          might be 1.0489x faster

   &lt;geometric&gt;                                        7.8545+-0.0064     ?      7.8669+-0.0670        ? might be 1.0016x slower

                                                          master                      ic                                        
Geomean of preferred means:
   &lt;scaled-result&gt;                                   25.6843+-0.2093           25.5263+-0.2422          might be 1.0062x faster</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1120310</commentid>
    <comment_count>4</comment_count>
      <attachid>259757</attachid>
    <who name="Geoffrey Garen">ggaren</who>
    <bug_when>2015-08-24 11:08:02 -0700</bug_when>
    <thetext>Comment on attachment 259757
Patch

View in context: https://bugs.webkit.org/attachment.cgi?id=259757&amp;action=review

r=me

&gt; Source/JavaScriptCore/jit/JITOperations.cpp:614
&gt; +                    // Seems generic property access site.

=&gt; Seem like a

&gt; Source/JavaScriptCore/jit/JITOperations.cpp:694
&gt; +                    // Seems generic property access site.

=&gt; Seems like a

&gt; Source/JavaScriptCore/jit/JITOperations.cpp:1641
&gt; +                    // Seems generic property access site.

=&gt; Seems like a</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1120312</commentid>
    <comment_count>5</comment_count>
      <attachid>259757</attachid>
    <who name="Yusuke Suzuki">ysuzuki</who>
    <bug_when>2015-08-24 11:09:33 -0700</bug_when>
    <thetext>Comment on attachment 259757
Patch

View in context: https://bugs.webkit.org/attachment.cgi?id=259757&amp;action=review

Thank you for your review!

&gt;&gt; Source/JavaScriptCore/jit/JITOperations.cpp:614
&gt;&gt; +                    // Seems generic property access site.
&gt; 
&gt; =&gt; Seem like a

Fixed.

&gt;&gt; Source/JavaScriptCore/jit/JITOperations.cpp:694
&gt;&gt; +                    // Seems generic property access site.
&gt; 
&gt; =&gt; Seems like a

Fixed.

&gt;&gt; Source/JavaScriptCore/jit/JITOperations.cpp:1641
&gt;&gt; +                    // Seems generic property access site.
&gt; 
&gt; =&gt; Seems like a

Fixed.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1120359</commentid>
    <comment_count>6</comment_count>
    <who name="Yusuke Suzuki">ysuzuki</who>
    <bug_when>2015-08-24 13:26:18 -0700</bug_when>
    <thetext>Committed r188878: &lt;http://trac.webkit.org/changeset/188878&gt;</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>259757</attachid>
            <date>2015-08-24 10:43:12 -0700</date>
            <delta_ts>2015-08-24 11:08:02 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-148288-20150824104304.patch</filename>
            <type>text/plain</type>
            <size>17043</size>
            <attacher name="Yusuke Suzuki">ysuzuki</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTg4ODUzCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvQ2hhbmdlTG9nIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL0NoYW5nZUxvZwppbmRleCA4
YThhYmQ1NjM5MGYzNjU0ZDZkNjBkMzkyMDM3YzQ2OWJiMDZhNjJjLi5lMzJiYjUwMDZkZjRjMzkw
ZDMyMGFmNzQ2MTdjMjc0OTQxM2YzYTZhIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENv
cmUvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9DaGFuZ2VMb2cKQEAgLTEs
MyArMSwyOSBAQAorMjAxNS0wOC0yNCAgWXVzdWtlIFN1enVraSAgPHV0YXRhbmUudGVhQGdtYWls
LmNvbT4KKworICAgICAgICBDcmVhdGUgQnlJZCBJQyBmb3IgQnlWYWwgb3BlcmF0aW9uIG9ubHkg
d2hlbiB0aGUgc3BlY2lmaWMgSWQgY29tZXMgbW9yZSB0aGFuIG9uY2UKKyAgICAgICAgaHR0cHM6
Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE0ODI4OAorCisgICAgICAgIFJldmll
d2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIEFmdGVyIGludHJvZHVjaW5nIGJ5SWQg
SUNzIGludG8gYnlWYWwgb3BzLCBieVZhbCBvcHMgY3JlYXRlcyBtdWNoIElDcyB0aGFuIGJlZm9y
ZS4KKyAgICAgICAgVGhlIGZhaWx1cmUgZml4ZWQgaW4gcjE4ODc2NyBmaWd1cmVzIG91dCB0aGVz
ZSBJQ3MgYXJlIGNyZWF0ZWQgZXZlbiBpZiB0aGlzIG9wIGlzIGV4ZWN1dGVkIG9ubHkgb25jZS4K
KworICAgICAgICBUaGUgc2l0dWF0aW9uIGlzIHRoZSBmb2xsb3dpbmc7CisgICAgICAgIEluIHRo
ZSBjdXJyZW50IGNvZGUsIHdoZW4gYnlWYWwgb3AgaXMgZXhlY3V0ZWQgd2l0aCB0aGUgSWQsIHdl
IGltbWVkaWF0ZWx5IHNldCB1cCB0aGUgYnlJZCBJQyBmb3IgdGhhdCBieVZhbCBvcC4KKyAgICAg
ICAgQnV0IHNldHRpbmcgdXAgSklUR2V0QnlJZEdlbmVyYXRvciBnZW5lcmF0ZXMgdGhlIGZhc3Qg
cGF0aCBJQyBjb2RlIGFuZCBjb25zdW1lcyBleGVjdXRhYmxlIG1lbW9yeS4KKyAgICAgICAgQXMg
YSByZXN1bHQsIGlmIHdlIGNhbGwgZXZhbCgiY29udGFpbnMgYnlWYWwgb3BzIikgd2l0aCB0aGUg
ZGlmZmVyZW50IHN0cmluZ3MgcmVwZWF0ZWRseSB1bmRlciBuby1sbGludCBlbnZpcm9ubWVudCwg
ZWFjaCBldmFsIGNhbGwgY3JlYXRlcyBieUlkIElDIGZvciBieVZhbCBhbmQgY29uc3VtZXMgZXhl
Y3V0YWJsZSBtZW1vcnkuCisKKyAgICAgICAgVG8gc29sdmUgaXQsIHdlIHdpbGwgYWRkICJzZWVu
IiBmbGFnIHRvIEJ5VmFsSW5mby4KKyAgICAgICAgQW5kIHdlIHdpbGwgY3JlYXRlIHRoZSBJQyBv
biB0aGUgc2Vjb25kIGJ5VmFsIG9wIGNhbGwgd2l0aCB0aGUgc2FtZSBJZC4KKworICAgICAgICAq
IGJ5dGVjb2RlL0J5VmFsSW5mby5oOgorICAgICAgICAoSlNDOjpCeVZhbEluZm86OkJ5VmFsSW5m
byk6CisgICAgICAgICogaml0L0pJVE9wZXJhdGlvbnMuY3BwOgorICAgICAgICAoSlNDOjp0cnlH
ZXRCeVZhbE9wdGltaXplKToKKyAgICAgICAgKiBqaXQvSklUUHJvcGVydHlBY2Nlc3MuY3BwOgor
ICAgICAgICAoSlNDOjpKSVQ6OnByaXZhdGVDb21waWxlR2V0QnlWYWxXaXRoQ2FjaGVkSWQpOiBE
ZWxldGVkLgorICAgICAgICAoSlNDOjpKSVQ6OnByaXZhdGVDb21waWxlUHV0QnlWYWxXaXRoQ2Fj
aGVkSWQpOiBEZWxldGVkLgorCiAyMDE1LTA4LTIzICBCZW5qYW1pbiBQb3VsYWluICA8YnBvdWxh
aW5AYXBwbGUuY29tPgogCiAgICAgICAgIFtKU0NdIEdldCByaWQgb2YgTm9kZVBvaW50ZXJUcmFp
dHMKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ieXRlY29kZS9CeVZhbEluZm8u
aCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ieXRlY29kZS9CeVZhbEluZm8uaAppbmRleCBiNDZh
NDBkMDc2NmQ2YjQwZThhZDY1MWNmNmViNWVlNmI2YjI3ZWVjLi4yMDUxODMwMGNlNTg0N2E0NzM4
Njc3Yjc4ODg3MDZmNmFmNzY2YjY2IDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUv
Ynl0ZWNvZGUvQnlWYWxJbmZvLmgKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL2J5dGVjb2Rl
L0J5VmFsSW5mby5oCkBAIC0yMTYsNiArMjE2LDcgQEAgc3RydWN0IEJ5VmFsSW5mbyB7CiAgICAg
ICAgICwgc2xvd1BhdGhDb3VudCgwKQogICAgICAgICAsIHN0dWJJbmZvKG51bGxwdHIpCiAgICAg
ICAgICwgdG9va1Nsb3dQYXRoKGZhbHNlKQorICAgICAgICAsIHNlZW4oZmFsc2UpCiAgICAgewog
ICAgIH0KIApAQCAtMjMxLDcgKzIzMiw4IEBAIHN0cnVjdCBCeVZhbEluZm8gewogICAgIFJlZlB0
cjxKSVRTdHViUm91dGluZT4gc3R1YlJvdXRpbmU7CiAgICAgSWRlbnRpZmllciBjYWNoZWRJZDsK
ICAgICBTdHJ1Y3R1cmVTdHViSW5mbyogc3R1YkluZm87Ci0gICAgYm9vbCB0b29rU2xvd1BhdGg7
CisgICAgYm9vbCB0b29rU2xvd1BhdGggOiAxOworICAgIGJvb2wgc2VlbiA6IDE7CiB9OwogCiBp
bmxpbmUgdW5zaWduZWQgZ2V0QnlWYWxJbmZvQnl0ZWNvZGVJbmRleChCeVZhbEluZm8qIGluZm8p
CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvaml0L0pJVE9wZXJhdGlvbnMuY3Bw
IGIvU291cmNlL0phdmFTY3JpcHRDb3JlL2ppdC9KSVRPcGVyYXRpb25zLmNwcAppbmRleCBhNThi
OTgzZGJlMzQ0MTM0NTE2NjVhMDI1ZDIzMWU1OWNlYjQxMTQ3Li5jZWU0NTcxNDY0OTUwZmM2ZDZi
OTczMDg2YTQ5Y2U2YmM4OGYwZWFmIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUv
aml0L0pJVE9wZXJhdGlvbnMuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9qaXQvSklU
T3BlcmF0aW9ucy5jcHAKQEAgLTU2NCw2ICs1NjQsNyBAQCBzdGF0aWMgdm9pZCBkaXJlY3RQdXRC
eVZhbChDYWxsRnJhbWUqIGNhbGxGcmFtZSwgSlNPYmplY3QqIGJhc2VPYmplY3QsIEpTVmFsdWUg
cwogCiBlbnVtIGNsYXNzIE9wdGltaXphdGlvblJlc3VsdCB7CiAgICAgTm90T3B0aW1pemVkLAor
ICAgIFNlZW5PbmNlLAogICAgIE9wdGltaXplZCwKICAgICBHaXZlVXAsCiB9OwpAQCAtNjA1LDEy
ICs2MDYsMjMgQEAgc3RhdGljIE9wdGltaXphdGlvblJlc3VsdCB0cnlQdXRCeVZhbE9wdGltaXpl
KEV4ZWNTdGF0ZSogZXhlYywgSlNWYWx1ZSBiYXNlVmFsdWUKICAgICAgICAgaWYgKCFzdWJzY3Jp
cHQuaXNTdHJpbmcoKSB8fCAhcGFyc2VJbmRleChwcm9wZXJ0eU5hbWUpKSB7CiAgICAgICAgICAg
ICBBU1NFUlQoZXhlYy0+bG9jYXRpb25Bc0J5dGVjb2RlT2Zmc2V0KCkpOwogICAgICAgICAgICAg
QVNTRVJUKCFieVZhbEluZm8tPnN0dWJSb3V0aW5lKTsKLSAgICAgICAgICAgIEpJVDo6Y29tcGls
ZVB1dEJ5VmFsV2l0aENhY2hlZElkKCZ2bSwgZXhlYy0+Y29kZUJsb2NrKCksIGJ5VmFsSW5mbywg
cmV0dXJuQWRkcmVzcywgTm90RGlyZWN0LCBwcm9wZXJ0eU5hbWUpOwotICAgICAgICAgICAgb3B0
aW1pemF0aW9uUmVzdWx0ID0gT3B0aW1pemF0aW9uUmVzdWx0OjpPcHRpbWl6ZWQ7CisgICAgICAg
ICAgICBpZiAoYnlWYWxJbmZvLT5zZWVuKSB7CisgICAgICAgICAgICAgICAgaWYgKGJ5VmFsSW5m
by0+Y2FjaGVkSWQgPT0gcHJvcGVydHlOYW1lKSB7CisgICAgICAgICAgICAgICAgICAgIEpJVDo6
Y29tcGlsZVB1dEJ5VmFsV2l0aENhY2hlZElkKCZ2bSwgZXhlYy0+Y29kZUJsb2NrKCksIGJ5VmFs
SW5mbywgcmV0dXJuQWRkcmVzcywgTm90RGlyZWN0LCBwcm9wZXJ0eU5hbWUpOworICAgICAgICAg
ICAgICAgICAgICBvcHRpbWl6YXRpb25SZXN1bHQgPSBPcHRpbWl6YXRpb25SZXN1bHQ6Ok9wdGlt
aXplZDsKKyAgICAgICAgICAgICAgICB9IGVsc2UgeworICAgICAgICAgICAgICAgICAgICAvLyBT
ZWVtcyBnZW5lcmljIHByb3BlcnR5IGFjY2VzcyBzaXRlLgorICAgICAgICAgICAgICAgICAgICBv
cHRpbWl6YXRpb25SZXN1bHQgPSBPcHRpbWl6YXRpb25SZXN1bHQ6OkdpdmVVcDsKKyAgICAgICAg
ICAgICAgICB9CisgICAgICAgICAgICB9IGVsc2UgeworICAgICAgICAgICAgICAgIGJ5VmFsSW5m
by0+c2VlbiA9IHRydWU7CisgICAgICAgICAgICAgICAgYnlWYWxJbmZvLT5jYWNoZWRJZCA9IHBy
b3BlcnR5TmFtZTsKKyAgICAgICAgICAgICAgICBvcHRpbWl6YXRpb25SZXN1bHQgPSBPcHRpbWl6
YXRpb25SZXN1bHQ6OlNlZW5PbmNlOworICAgICAgICAgICAgfQogICAgICAgICB9CiAgICAgfQog
Ci0gICAgaWYgKG9wdGltaXphdGlvblJlc3VsdCAhPSBPcHRpbWl6YXRpb25SZXN1bHQ6Ok9wdGlt
aXplZCkgeworICAgIGlmIChvcHRpbWl6YXRpb25SZXN1bHQgIT0gT3B0aW1pemF0aW9uUmVzdWx0
OjpPcHRpbWl6ZWQgJiYgb3B0aW1pemF0aW9uUmVzdWx0ICE9IE9wdGltaXphdGlvblJlc3VsdDo6
U2Vlbk9uY2UpIHsKICAgICAgICAgLy8gSWYgd2UgdGFrZSBzbG93IHBhdGggbW9yZSB0aGFuIDEw
IHRpbWVzIHdpdGhvdXQgcGF0Y2hpbmcgdGhlbiBtYWtlIHN1cmUgd2UKICAgICAgICAgLy8gbmV2
ZXIgbWFrZSB0aGF0IG1pc3Rha2UgYWdhaW4uIEZvciBjYXNlcyB3aGVyZSB3ZSBzZWUgbm9uLWlu
ZGV4LWludGVyY2VwdGluZwogICAgICAgICAvLyBvYmplY3RzLCB0aGlzIGdpdmVzIDEwIGl0ZXJh
dGlvbnMgd29ydGggb2Ygb3Bwb3J0dW5pdHkgZm9yIHVzIHRvIG9ic2VydmUKQEAgLTY3NCwxMiAr
Njg2LDIzIEBAIHN0YXRpYyBPcHRpbWl6YXRpb25SZXN1bHQgdHJ5RGlyZWN0UHV0QnlWYWxPcHRp
bWl6ZShFeGVjU3RhdGUqIGV4ZWMsIEpTT2JqZWN0KiBvCiAgICAgICAgIGlmICghc3Vic2NyaXB0
LmlzU3RyaW5nKCkgfHwgIWluZGV4KSB7CiAgICAgICAgICAgICBBU1NFUlQoZXhlYy0+bG9jYXRp
b25Bc0J5dGVjb2RlT2Zmc2V0KCkpOwogICAgICAgICAgICAgQVNTRVJUKCFieVZhbEluZm8tPnN0
dWJSb3V0aW5lKTsKLSAgICAgICAgICAgIEpJVDo6Y29tcGlsZVB1dEJ5VmFsV2l0aENhY2hlZElk
KCZ2bSwgZXhlYy0+Y29kZUJsb2NrKCksIGJ5VmFsSW5mbywgcmV0dXJuQWRkcmVzcywgRGlyZWN0
LCBwcm9wZXJ0eU5hbWUpOwotICAgICAgICAgICAgb3B0aW1pemF0aW9uUmVzdWx0ID0gT3B0aW1p
emF0aW9uUmVzdWx0OjpPcHRpbWl6ZWQ7CisgICAgICAgICAgICBpZiAoYnlWYWxJbmZvLT5zZWVu
KSB7CisgICAgICAgICAgICAgICAgaWYgKGJ5VmFsSW5mby0+Y2FjaGVkSWQgPT0gcHJvcGVydHlO
YW1lKSB7CisgICAgICAgICAgICAgICAgICAgIEpJVDo6Y29tcGlsZVB1dEJ5VmFsV2l0aENhY2hl
ZElkKCZ2bSwgZXhlYy0+Y29kZUJsb2NrKCksIGJ5VmFsSW5mbywgcmV0dXJuQWRkcmVzcywgRGly
ZWN0LCBwcm9wZXJ0eU5hbWUpOworICAgICAgICAgICAgICAgICAgICBvcHRpbWl6YXRpb25SZXN1
bHQgPSBPcHRpbWl6YXRpb25SZXN1bHQ6Ok9wdGltaXplZDsKKyAgICAgICAgICAgICAgICB9IGVs
c2UgeworICAgICAgICAgICAgICAgICAgICAvLyBTZWVtcyBnZW5lcmljIHByb3BlcnR5IGFjY2Vz
cyBzaXRlLgorICAgICAgICAgICAgICAgICAgICBvcHRpbWl6YXRpb25SZXN1bHQgPSBPcHRpbWl6
YXRpb25SZXN1bHQ6OkdpdmVVcDsKKyAgICAgICAgICAgICAgICB9CisgICAgICAgICAgICB9IGVs
c2UgeworICAgICAgICAgICAgICAgIGJ5VmFsSW5mby0+c2VlbiA9IHRydWU7CisgICAgICAgICAg
ICAgICAgYnlWYWxJbmZvLT5jYWNoZWRJZCA9IHByb3BlcnR5TmFtZTsKKyAgICAgICAgICAgICAg
ICBvcHRpbWl6YXRpb25SZXN1bHQgPSBPcHRpbWl6YXRpb25SZXN1bHQ6OlNlZW5PbmNlOworICAg
ICAgICAgICAgfQogICAgICAgICB9CiAgICAgfQogCi0gICAgaWYgKG9wdGltaXphdGlvblJlc3Vs
dCAhPSBPcHRpbWl6YXRpb25SZXN1bHQ6Ok9wdGltaXplZCkgeworICAgIGlmIChvcHRpbWl6YXRp
b25SZXN1bHQgIT0gT3B0aW1pemF0aW9uUmVzdWx0OjpPcHRpbWl6ZWQgJiYgb3B0aW1pemF0aW9u
UmVzdWx0ICE9IE9wdGltaXphdGlvblJlc3VsdDo6U2Vlbk9uY2UpIHsKICAgICAgICAgLy8gSWYg
d2UgdGFrZSBzbG93IHBhdGggbW9yZSB0aGFuIDEwIHRpbWVzIHdpdGhvdXQgcGF0Y2hpbmcgdGhl
biBtYWtlIHN1cmUgd2UKICAgICAgICAgLy8gbmV2ZXIgbWFrZSB0aGF0IG1pc3Rha2UgYWdhaW4u
IEZvciBjYXNlcyB3aGVyZSB3ZSBzZWUgbm9uLWluZGV4LWludGVyY2VwdGluZwogICAgICAgICAv
LyBvYmplY3RzLCB0aGlzIGdpdmVzIDEwIGl0ZXJhdGlvbnMgd29ydGggb2Ygb3Bwb3J0dW5pdHkg
Zm9yIHVzIHRvIG9ic2VydmUKQEAgLTE2MTAsMTIgKzE2MzMsMjQgQEAgc3RhdGljIE9wdGltaXph
dGlvblJlc3VsdCB0cnlHZXRCeVZhbE9wdGltaXplKEV4ZWNTdGF0ZSogZXhlYywgSlNWYWx1ZSBi
YXNlVmFsdWUKICAgICAgICAgaWYgKCFzdWJzY3JpcHQuaXNTdHJpbmcoKSB8fCAhcGFyc2VJbmRl
eChwcm9wZXJ0eU5hbWUpKSB7CiAgICAgICAgICAgICBBU1NFUlQoZXhlYy0+bG9jYXRpb25Bc0J5
dGVjb2RlT2Zmc2V0KCkpOwogICAgICAgICAgICAgQVNTRVJUKCFieVZhbEluZm8tPnN0dWJSb3V0
aW5lKTsKLSAgICAgICAgICAgIEpJVDo6Y29tcGlsZUdldEJ5VmFsV2l0aENhY2hlZElkKCZ2bSwg
ZXhlYy0+Y29kZUJsb2NrKCksIGJ5VmFsSW5mbywgcmV0dXJuQWRkcmVzcywgcHJvcGVydHlOYW1l
KTsKLSAgICAgICAgICAgIG9wdGltaXphdGlvblJlc3VsdCA9IE9wdGltaXphdGlvblJlc3VsdDo6
T3B0aW1pemVkOworICAgICAgICAgICAgaWYgKGJ5VmFsSW5mby0+c2VlbikgeworICAgICAgICAg
ICAgICAgIGlmIChieVZhbEluZm8tPmNhY2hlZElkID09IHByb3BlcnR5TmFtZSkgeworICAgICAg
ICAgICAgICAgICAgICBKSVQ6OmNvbXBpbGVHZXRCeVZhbFdpdGhDYWNoZWRJZCgmdm0sIGV4ZWMt
PmNvZGVCbG9jaygpLCBieVZhbEluZm8sIHJldHVybkFkZHJlc3MsIHByb3BlcnR5TmFtZSk7Cisg
ICAgICAgICAgICAgICAgICAgIG9wdGltaXphdGlvblJlc3VsdCA9IE9wdGltaXphdGlvblJlc3Vs
dDo6T3B0aW1pemVkOworICAgICAgICAgICAgICAgIH0gZWxzZSB7CisgICAgICAgICAgICAgICAg
ICAgIC8vIFNlZW1zIGdlbmVyaWMgcHJvcGVydHkgYWNjZXNzIHNpdGUuCisgICAgICAgICAgICAg
ICAgICAgIG9wdGltaXphdGlvblJlc3VsdCA9IE9wdGltaXphdGlvblJlc3VsdDo6R2l2ZVVwOwor
ICAgICAgICAgICAgICAgIH0KKyAgICAgICAgICAgIH0gZWxzZSB7CisgICAgICAgICAgICAgICAg
YnlWYWxJbmZvLT5zZWVuID0gdHJ1ZTsKKyAgICAgICAgICAgICAgICBieVZhbEluZm8tPmNhY2hl
ZElkID0gcHJvcGVydHlOYW1lOworICAgICAgICAgICAgICAgIG9wdGltaXphdGlvblJlc3VsdCA9
IE9wdGltaXphdGlvblJlc3VsdDo6U2Vlbk9uY2U7CisgICAgICAgICAgICB9CisKICAgICAgICAg
fQogICAgIH0KIAotICAgIGlmIChvcHRpbWl6YXRpb25SZXN1bHQgIT0gT3B0aW1pemF0aW9uUmVz
dWx0OjpPcHRpbWl6ZWQpIHsKKyAgICBpZiAob3B0aW1pemF0aW9uUmVzdWx0ICE9IE9wdGltaXph
dGlvblJlc3VsdDo6T3B0aW1pemVkICYmIG9wdGltaXphdGlvblJlc3VsdCAhPSBPcHRpbWl6YXRp
b25SZXN1bHQ6OlNlZW5PbmNlKSB7CiAgICAgICAgIC8vIElmIHdlIHRha2Ugc2xvdyBwYXRoIG1v
cmUgdGhhbiAxMCB0aW1lcyB3aXRob3V0IHBhdGNoaW5nIHRoZW4gbWFrZSBzdXJlIHdlCiAgICAg
ICAgIC8vIG5ldmVyIG1ha2UgdGhhdCBtaXN0YWtlIGFnYWluLiBGb3IgY2FzZXMgd2hlcmUgd2Ug
c2VlIG5vbi1pbmRleC1pbnRlcmNlcHRpbmcKICAgICAgICAgLy8gb2JqZWN0cywgdGhpcyBnaXZl
cyAxMCBpdGVyYXRpb25zIHdvcnRoIG9mIG9wcG9ydHVuaXR5IGZvciB1cyB0byBvYnNlcnZlCmRp
ZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvaml0L0pJVFByb3BlcnR5QWNjZXNzLmNw
cCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9qaXQvSklUUHJvcGVydHlBY2Nlc3MuY3BwCmluZGV4
IGM3MDUwOWFhMmU1NWU2ODEzNzgwNzM4OGViMGU3MzU2YjdlMjBkN2MuLmM2ZjFlZjlmN2YwYzdj
ODdkZTkxNjVkNTU3YzQ1ZWQwMTcxZjMwMGEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0
Q29yZS9qaXQvSklUUHJvcGVydHlBY2Nlc3MuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29y
ZS9qaXQvSklUUHJvcGVydHlBY2Nlc3MuY3BwCkBAIC0xMTA5LDcgKzExMDksNiBAQCB2b2lkIEpJ
VDo6cHJpdmF0ZUNvbXBpbGVHZXRCeVZhbFdpdGhDYWNoZWRJZChCeVZhbEluZm8qIGJ5VmFsSW5m
bywgUmV0dXJuQWRkcmVzcwogICAgIGJ5VmFsSW5mby0+c3R1YlJvdXRpbmUgPSBGSU5BTElaRV9D
T0RFX0ZPUl9TVFVCKAogICAgICAgICBtX2NvZGVCbG9jaywgcGF0Y2hCdWZmZXIsCiAgICAgICAg
ICgiQmFzZWxpbmUgZ2V0X2J5X3ZhbCB3aXRoIGNhY2hlZCBwcm9wZXJ0eSBuYW1lICclcycgc3R1
YiBmb3IgJXMsIHJldHVybiBwb2ludCAlcCIsIHByb3BlcnR5TmFtZS5pbXBsKCktPnV0ZjgoKS5k
YXRhKCksIHRvQ1N0cmluZygqbV9jb2RlQmxvY2spLmRhdGEoKSwgcmV0dXJuQWRkcmVzcy52YWx1
ZSgpKSk7Ci0gICAgYnlWYWxJbmZvLT5jYWNoZWRJZCA9IHByb3BlcnR5TmFtZTsKICAgICBieVZh
bEluZm8tPnN0dWJJbmZvID0gZ2VuLnN0dWJJbmZvKCk7CiAKICAgICBSZXBhdGNoQnVmZmVyIHJl
cGF0Y2hCdWZmZXIobV9jb2RlQmxvY2spOwpAQCAtMTIwNyw3ICsxMjA2LDYgQEAgdm9pZCBKSVQ6
OnByaXZhdGVDb21waWxlUHV0QnlWYWxXaXRoQ2FjaGVkSWQoQnlWYWxJbmZvKiBieVZhbEluZm8s
IFJldHVybkFkZHJlc3MKICAgICBieVZhbEluZm8tPnN0dWJSb3V0aW5lID0gRklOQUxJWkVfQ09E
RV9GT1JfU1RVQigKICAgICAgICAgbV9jb2RlQmxvY2ssIHBhdGNoQnVmZmVyLAogICAgICAgICAo
IkJhc2VsaW5lIHB1dF9ieV92YWwlcyB3aXRoIGNhY2hlZCBwcm9wZXJ0eSBuYW1lICclcycgc3R1
YiBmb3IgJXMsIHJldHVybiBwb2ludCAlcCIsIChwdXRLaW5kID09IERpcmVjdCkgPyAiX2RpcmVj
dCIgOiAiIiwgcHJvcGVydHlOYW1lLmltcGwoKS0+dXRmOCgpLmRhdGEoKSwgdG9DU3RyaW5nKCpt
X2NvZGVCbG9jaykuZGF0YSgpLCByZXR1cm5BZGRyZXNzLnZhbHVlKCkpKTsKLSAgICBieVZhbElu
Zm8tPmNhY2hlZElkID0gcHJvcGVydHlOYW1lOwogICAgIGJ5VmFsSW5mby0+c3R1YkluZm8gPSBn
ZW4uc3R1YkluZm8oKTsKIAogICAgIFJlcGF0Y2hCdWZmZXIgcmVwYXRjaEJ1ZmZlcihtX2NvZGVC
bG9jayk7CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cgYi9MYXlvdXRUZXN0cy9D
aGFuZ2VMb2cKaW5kZXggNDY3Mzc0OTYyNzE3MDVjMTQ2OGM0Nzc4YWY4OWY0MzQzMmVlODQwYi4u
NDhiNDkyNmU2ZTM0Y2FlZjVlNDJhYWY0MDdiMTBjMThlZjdmZDU3YyAxMDA2NDQKLS0tIGEvTGF5
b3V0VGVzdHMvQ2hhbmdlTG9nCisrKyBiL0xheW91dFRlc3RzL0NoYW5nZUxvZwpAQCAtMSwzICsx
LDI0IEBACisyMDE1LTA4LTI0ICBZdXN1a2UgU3V6dWtpICA8dXRhdGFuZS50ZWFAZ21haWwuY29t
PgorCisgICAgICAgIENyZWF0ZSBCeUlkIElDIGZvciBCeVZhbCBvcGVyYXRpb24gb25seSB3aGVu
IHRoZSBzcGVjaWZpYyBJZCBjb21lcyBtb3JlIHRoYW4gb25jZQorICAgICAgICBodHRwczovL2J1
Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTQ4Mjg4CisKKyAgICAgICAgUmV2aWV3ZWQg
YnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgUmV2ZXJ0IHRoZSBza2lwIG1hcmtzIGludHJv
ZHVjZWQgaW4gcjE4ODc2Ny4KKworICAgICAgICAqIGpzL3NjcmlwdC10ZXN0cy9kZmctZmxvYXQz
MmFycmF5LmpzOgorICAgICAgICAqIGpzL3NjcmlwdC10ZXN0cy9kZmctaW50MTZhcnJheS5qczoK
KyAgICAgICAgKiBqcy9zY3JpcHQtdGVzdHMvZGZnLWludDMyYXJyYXktb3ZlcmZsb3ctdmFsdWVz
LmpzOgorICAgICAgICAqIGpzL3NjcmlwdC10ZXN0cy9kZmctaW50MzJhcnJheS5qczoKKyAgICAg
ICAgKiBqcy9zY3JpcHQtdGVzdHMvZGZnLWludDhhcnJheS5qczoKKyAgICAgICAgKiBqcy9zY3Jp
cHQtdGVzdHMvZGZnLXVpbnQxNmFycmF5LmpzOgorICAgICAgICAqIGpzL3NjcmlwdC10ZXN0cy9k
ZmctdWludDMyYXJyYXktb3ZlcmZsb3ctdmFsdWVzLmpzOgorICAgICAgICAqIGpzL3NjcmlwdC10
ZXN0cy9kZmctdWludDMyYXJyYXkuanM6CisgICAgICAgICoganMvc2NyaXB0LXRlc3RzL2RmZy11
aW50OGFycmF5LmpzOgorICAgICAgICAqIGpzL3NjcmlwdC10ZXN0cy9kZmctdWludDhjbGFtcGVk
YXJyYXkuanM6CisgICAgICAgICoganMvc2NyaXB0LXRlc3RzL3JlZ3Jlc3MtMTQxMDk4LmpzOgor
CiAyMDE1LTA4LTIzICBOYW4gV2FuZyAgPG5fd2FuZ0BhcHBsZS5jb20+CiAKICAgICAgICAgQVg6
IEZpeCBhY2Nlc3NpYmlsaXR5L2RlbGV0aW5nLWlmcmFtZS1kZXN0cm95cy1heGNhY2hlLmh0bWwg
dGVzdApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvanMvc2NyaXB0LXRlc3RzL2RmZy1mbG9hdDMy
YXJyYXkuanMgYi9MYXlvdXRUZXN0cy9qcy9zY3JpcHQtdGVzdHMvZGZnLWZsb2F0MzJhcnJheS5q
cwppbmRleCBmNmFlODI2MTc1NTc1ZDBmMDUwNjU5ODgyMWI3ZDc0NzZiMWMxNDAyLi45OGNiZDNi
NTE4ZGJkNGQyYWY3NzlkMDgyYzg2NzNjMTZlOTUxYmEyIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0
cy9qcy9zY3JpcHQtdGVzdHMvZGZnLWZsb2F0MzJhcnJheS5qcworKysgYi9MYXlvdXRUZXN0cy9q
cy9zY3JpcHQtdGVzdHMvZGZnLWZsb2F0MzJhcnJheS5qcwpAQCAtMSw2ICsxLDMgQEAKLS8vIHB1
dF9ieV92YWwgSUMgdXNlcyBtb3JlIGV4ZWN1dGFibGUgbWVtb3J5IHRoYW4gYmVmb3JlLgotLy8g
aHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE0ODI3MwotLy9AIG5vTm9M
TEludFJ1bkxheW91dFRlc3QgaWYgJGFyY2hpdGVjdHVyZSA9PSAiYXJtIiBhbmQgJGhvc3RPUyA9
PSAiZGFyd2luIgogZGVzY3JpcHRpb24oCiAiVGhpcyB0ZXN0cyB0aGF0IGZsb2F0MzIgYXJyYXlz
IHdvcmsgaW4gdGhlIERGRy4iCiApOwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvanMvc2NyaXB0
LXRlc3RzL2RmZy1pbnQxNmFycmF5LmpzIGIvTGF5b3V0VGVzdHMvanMvc2NyaXB0LXRlc3RzL2Rm
Zy1pbnQxNmFycmF5LmpzCmluZGV4IGUyZGI4Nzg0YjVjZTY1YTc0MTJkNzUwMWQxYzAwMjY4MjMy
NmY1NTkuLjBjNDAzYjgzNDE5NzVmZjUwMjNjZDNlMzY1ZjhlZGU4NDExNWIzMTEgMTAwNjQ0Ci0t
LSBhL0xheW91dFRlc3RzL2pzL3NjcmlwdC10ZXN0cy9kZmctaW50MTZhcnJheS5qcworKysgYi9M
YXlvdXRUZXN0cy9qcy9zY3JpcHQtdGVzdHMvZGZnLWludDE2YXJyYXkuanMKQEAgLTEsNiArMSwz
IEBACi0vLyBwdXRfYnlfdmFsIElDIHVzZXMgbW9yZSBleGVjdXRhYmxlIG1lbW9yeSB0aGFuIGJl
Zm9yZS4KLS8vIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xNDgyNzMK
LS8vQCBub05vTExJbnRSdW5MYXlvdXRUZXN0IGlmICRhcmNoaXRlY3R1cmUgPT0gImFybSIgYW5k
ICRob3N0T1MgPT0gImRhcndpbiIKIGRlc2NyaXB0aW9uKAogIlRoaXMgdGVzdHMgdGhhdCBpbnQx
NiBhcnJheXMgd29yayBpbiB0aGUgREZHLiIKICk7CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9q
cy9zY3JpcHQtdGVzdHMvZGZnLWludDMyYXJyYXktb3ZlcmZsb3ctdmFsdWVzLmpzIGIvTGF5b3V0
VGVzdHMvanMvc2NyaXB0LXRlc3RzL2RmZy1pbnQzMmFycmF5LW92ZXJmbG93LXZhbHVlcy5qcwpp
bmRleCA0YWQ3ZjMxMmM5OTI2MzQzZDkwNGQ2MzUyODk0MDM2MTc0ODZkNjJmLi43ODEzNTljNWI1
M2ZmOGM1MDI1YmEyYjM0MzZkMDAxNWFhMzBhZWFmIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9q
cy9zY3JpcHQtdGVzdHMvZGZnLWludDMyYXJyYXktb3ZlcmZsb3ctdmFsdWVzLmpzCisrKyBiL0xh
eW91dFRlc3RzL2pzL3NjcmlwdC10ZXN0cy9kZmctaW50MzJhcnJheS1vdmVyZmxvdy12YWx1ZXMu
anMKQEAgLTEsNiArMSwzIEBACi0vLyBwdXRfYnlfdmFsIElDIHVzZXMgbW9yZSBleGVjdXRhYmxl
IG1lbW9yeSB0aGFuIGJlZm9yZS4KLS8vIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVn
LmNnaT9pZD0xNDgyNzMKLS8vQCBub05vTExJbnRSdW5MYXlvdXRUZXN0IGlmICRhcmNoaXRlY3R1
cmUgPT0gImFybSIgYW5kICRob3N0T1MgPT0gImRhcndpbiIKIGRlc2NyaXB0aW9uKAogIlRoaXMg
dGVzdHMgdGhhdCBpbnQzMiBhcnJheXMgd29yayBpbiB0aGUgREZHLiIKICk7CmRpZmYgLS1naXQg
YS9MYXlvdXRUZXN0cy9qcy9zY3JpcHQtdGVzdHMvZGZnLWludDMyYXJyYXkuanMgYi9MYXlvdXRU
ZXN0cy9qcy9zY3JpcHQtdGVzdHMvZGZnLWludDMyYXJyYXkuanMKaW5kZXggZmRkOTBhOWU1OGQz
ZjI1NDg5OTJhYmEyNGQzMTc2ODE4YzNhODAzZC4uYzQ5YTQ1MmFjOTg5MjE2YTg4NWViOTZkNmQy
NTBmMzYyYThmNWFjMSAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvanMvc2NyaXB0LXRlc3RzL2Rm
Zy1pbnQzMmFycmF5LmpzCisrKyBiL0xheW91dFRlc3RzL2pzL3NjcmlwdC10ZXN0cy9kZmctaW50
MzJhcnJheS5qcwpAQCAtMSw2ICsxLDMgQEAKLS8vIHB1dF9ieV92YWwgSUMgdXNlcyBtb3JlIGV4
ZWN1dGFibGUgbWVtb3J5IHRoYW4gYmVmb3JlLgotLy8gaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcv
c2hvd19idWcuY2dpP2lkPTE0ODI3MwotLy9AIG5vTm9MTEludFJ1bkxheW91dFRlc3QgaWYgJGFy
Y2hpdGVjdHVyZSA9PSAiYXJtIiBhbmQgJGhvc3RPUyA9PSAiZGFyd2luIgogZGVzY3JpcHRpb24o
CiAiVGhpcyB0ZXN0cyB0aGF0IGludDMyIGFycmF5cyB3b3JrIGluIHRoZSBERkcuIgogKTsKZGlm
ZiAtLWdpdCBhL0xheW91dFRlc3RzL2pzL3NjcmlwdC10ZXN0cy9kZmctaW50OGFycmF5LmpzIGIv
TGF5b3V0VGVzdHMvanMvc2NyaXB0LXRlc3RzL2RmZy1pbnQ4YXJyYXkuanMKaW5kZXggMzY3MWQy
OTExYzMzY2IwOTJjYmE0YjUwOWFiNDQ1NmE4MjE3MDlkMi4uZWU1MDIyMzRiNjczYjBkYjlkNWI1
ZTU3NmJkY2Q4ZjI0MWY0MTlmYyAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvanMvc2NyaXB0LXRl
c3RzL2RmZy1pbnQ4YXJyYXkuanMKKysrIGIvTGF5b3V0VGVzdHMvanMvc2NyaXB0LXRlc3RzL2Rm
Zy1pbnQ4YXJyYXkuanMKQEAgLTEsNiArMSwzIEBACi0vLyBwdXRfYnlfdmFsIElDIHVzZXMgbW9y
ZSBleGVjdXRhYmxlIG1lbW9yeSB0aGFuIGJlZm9yZS4KLS8vIGh0dHBzOi8vYnVncy53ZWJraXQu
b3JnL3Nob3dfYnVnLmNnaT9pZD0xNDgyNzMKLS8vQCBub05vTExJbnRSdW5MYXlvdXRUZXN0IGlm
ICRhcmNoaXRlY3R1cmUgPT0gImFybSIgYW5kICRob3N0T1MgPT0gImRhcndpbiIKIGRlc2NyaXB0
aW9uKAogIlRoaXMgdGVzdHMgdGhhdCBpbnQ4IGFycmF5cyB3b3JrIGluIHRoZSBERkcuIgogKTsK
ZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2pzL3NjcmlwdC10ZXN0cy9kZmctdWludDE2YXJyYXku
anMgYi9MYXlvdXRUZXN0cy9qcy9zY3JpcHQtdGVzdHMvZGZnLXVpbnQxNmFycmF5LmpzCmluZGV4
IGRmNTkzNDc2ZmYxYjllYmJmYjhkZDlmNmE5MzQ5MjBiMjJmNDI0ZDAuLmVjNTY2MjliN2VhODJi
NjlkNmMxMWRkN2RhNzMyN2RkMjZkMDM5YjMgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2pzL3Nj
cmlwdC10ZXN0cy9kZmctdWludDE2YXJyYXkuanMKKysrIGIvTGF5b3V0VGVzdHMvanMvc2NyaXB0
LXRlc3RzL2RmZy11aW50MTZhcnJheS5qcwpAQCAtMSw2ICsxLDMgQEAKLS8vIHB1dF9ieV92YWwg
SUMgdXNlcyBtb3JlIGV4ZWN1dGFibGUgbWVtb3J5IHRoYW4gYmVmb3JlLgotLy8gaHR0cHM6Ly9i
dWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE0ODI3MwotLy9AIG5vTm9MTEludFJ1bkxh
eW91dFRlc3QgaWYgJGFyY2hpdGVjdHVyZSA9PSAiYXJtIiBhbmQgJGhvc3RPUyA9PSAiZGFyd2lu
IgogZGVzY3JpcHRpb24oCiAiVGhpcyB0ZXN0cyB0aGF0IHVpbnQxNiBhcnJheXMgd29yayBpbiB0
aGUgREZHLiIKICk7CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9qcy9zY3JpcHQtdGVzdHMvZGZn
LXVpbnQzMmFycmF5LW92ZXJmbG93LXZhbHVlcy5qcyBiL0xheW91dFRlc3RzL2pzL3NjcmlwdC10
ZXN0cy9kZmctdWludDMyYXJyYXktb3ZlcmZsb3ctdmFsdWVzLmpzCmluZGV4IGY5YjA3ZDNjNWNh
NWFiYWM2MzY3MDY1NzAxN2M2NjA3OTZkOTJkMmYuLjU4ODE0N2NjNDBjNWFlNDZhNjEwYTEwNGJk
NzMyOGFmYTliYTRhOWQgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2pzL3NjcmlwdC10ZXN0cy9k
ZmctdWludDMyYXJyYXktb3ZlcmZsb3ctdmFsdWVzLmpzCisrKyBiL0xheW91dFRlc3RzL2pzL3Nj
cmlwdC10ZXN0cy9kZmctdWludDMyYXJyYXktb3ZlcmZsb3ctdmFsdWVzLmpzCkBAIC0xLDYgKzEs
MyBAQAotLy8gcHV0X2J5X3ZhbCBJQyB1c2VzIG1vcmUgZXhlY3V0YWJsZSBtZW1vcnkgdGhhbiBi
ZWZvcmUuCi0vLyBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTQ4Mjcz
Ci0vL0Agbm9Ob0xMSW50UnVuTGF5b3V0VGVzdCBpZiAkYXJjaGl0ZWN0dXJlID09ICJhcm0iIGFu
ZCAkaG9zdE9TID09ICJkYXJ3aW4iCiBkZXNjcmlwdGlvbigKICJUaGlzIHRlc3RzIHRoYXQgaW50
MzIgYXJyYXlzIHdvcmsgaW4gdGhlIERGRy4iCiApOwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMv
anMvc2NyaXB0LXRlc3RzL2RmZy11aW50MzJhcnJheS5qcyBiL0xheW91dFRlc3RzL2pzL3Njcmlw
dC10ZXN0cy9kZmctdWludDMyYXJyYXkuanMKaW5kZXggNTNkOGFlYjZhYzRiNTI2YTJjZGIyM2Qy
YzExOGIyZTJiYmJjYzkwYS4uYWJkNDY0M2VmNDMzYmJkYmRiOGZkNzhiMmIyZTAzODM1OGI1MzVk
NiAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvanMvc2NyaXB0LXRlc3RzL2RmZy11aW50MzJhcnJh
eS5qcworKysgYi9MYXlvdXRUZXN0cy9qcy9zY3JpcHQtdGVzdHMvZGZnLXVpbnQzMmFycmF5Lmpz
CkBAIC0xLDYgKzEsMyBAQAotLy8gcHV0X2J5X3ZhbCBJQyB1c2VzIG1vcmUgZXhlY3V0YWJsZSBt
ZW1vcnkgdGhhbiBiZWZvcmUuCi0vLyBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5j
Z2k/aWQ9MTQ4MjczCi0vL0Agbm9Ob0xMSW50UnVuTGF5b3V0VGVzdCBpZiAkYXJjaGl0ZWN0dXJl
ID09ICJhcm0iIGFuZCAkaG9zdE9TID09ICJkYXJ3aW4iCiBkZXNjcmlwdGlvbigKICJUaGlzIHRl
c3RzIHRoYXQgdWludDMyIGFycmF5cyB3b3JrIGluIHRoZSBERkcuIgogKTsKZGlmZiAtLWdpdCBh
L0xheW91dFRlc3RzL2pzL3NjcmlwdC10ZXN0cy9kZmctdWludDhhcnJheS5qcyBiL0xheW91dFRl
c3RzL2pzL3NjcmlwdC10ZXN0cy9kZmctdWludDhhcnJheS5qcwppbmRleCBiYjMwZDQyZDE1M2Fl
Mzg0MmY1ZDg4YWI0MjYzZGFjYmY3NDJkOWQ2Li5jYzAxNGQxY2M2NDczNmM3MWMzZmNiODI3MGVi
OGE0ZDljZjA3YjYwIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9qcy9zY3JpcHQtdGVzdHMvZGZn
LXVpbnQ4YXJyYXkuanMKKysrIGIvTGF5b3V0VGVzdHMvanMvc2NyaXB0LXRlc3RzL2RmZy11aW50
OGFycmF5LmpzCkBAIC0xLDYgKzEsMyBAQAotLy8gcHV0X2J5X3ZhbCBJQyB1c2VzIG1vcmUgZXhl
Y3V0YWJsZSBtZW1vcnkgdGhhbiBiZWZvcmUuCi0vLyBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9z
aG93X2J1Zy5jZ2k/aWQ9MTQ4MjczCi0vL0Agbm9Ob0xMSW50UnVuTGF5b3V0VGVzdCBpZiAkYXJj
aGl0ZWN0dXJlID09ICJhcm0iIGFuZCAkaG9zdE9TID09ICJkYXJ3aW4iCiBkZXNjcmlwdGlvbigK
ICJUaGlzIHRlc3RzIHRoYXQgdWludDggYXJyYXlzIHdvcmsgaW4gdGhlIERGRy4iCiApOwpkaWZm
IC0tZ2l0IGEvTGF5b3V0VGVzdHMvanMvc2NyaXB0LXRlc3RzL2RmZy11aW50OGNsYW1wZWRhcnJh
eS5qcyBiL0xheW91dFRlc3RzL2pzL3NjcmlwdC10ZXN0cy9kZmctdWludDhjbGFtcGVkYXJyYXku
anMKaW5kZXggYWE0ZjI4ZTE2NGNiOGQzZTM5MTU3ZmYyNzY2ODY1MmZjZmY4MzE4ZS4uNDJiMGE1
MTdiN2IxY2JkOWI1ZjQxMjgwNjk1YWM0NjQzZWFhZmI0NSAxMDA2NDQKLS0tIGEvTGF5b3V0VGVz
dHMvanMvc2NyaXB0LXRlc3RzL2RmZy11aW50OGNsYW1wZWRhcnJheS5qcworKysgYi9MYXlvdXRU
ZXN0cy9qcy9zY3JpcHQtdGVzdHMvZGZnLXVpbnQ4Y2xhbXBlZGFycmF5LmpzCkBAIC0xLDYgKzEs
MyBAQAotLy8gcHV0X2J5X3ZhbCBJQyB1c2VzIG1vcmUgZXhlY3V0YWJsZSBtZW1vcnkgdGhhbiBi
ZWZvcmUuCi0vLyBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTQ4Mjcz
Ci0vL0Agbm9Ob0xMSW50UnVuTGF5b3V0VGVzdCBpZiAkYXJjaGl0ZWN0dXJlID09ICJhcm0iIGFu
ZCAkaG9zdE9TID09ICJkYXJ3aW4iCiBkZXNjcmlwdGlvbigKICJUaGlzIHRlc3RzIHRoYXQgVWlu
dDhDbGFtcGVkQXJyYXlzIHdvcmsgaW4gdGhlIERGRy4iCiApOwpkaWZmIC0tZ2l0IGEvTGF5b3V0
VGVzdHMvanMvc2NyaXB0LXRlc3RzL3JlZ3Jlc3MtMTQxMDk4LmpzIGIvTGF5b3V0VGVzdHMvanMv
c2NyaXB0LXRlc3RzL3JlZ3Jlc3MtMTQxMDk4LmpzCmluZGV4IDM3OTM3YjFiMjQyMTVjNDM4YWQ4
YmVhNzI1MzkxZGQzOGUxMTAxMTguLmJmNDM0ZDEyZGQ1OTA2ZmQ0MWNiNDU5NDlmMTVmNzM4M2Uz
ZWEwYTIgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2pzL3NjcmlwdC10ZXN0cy9yZWdyZXNzLTE0
MTA5OC5qcworKysgYi9MYXlvdXRUZXN0cy9qcy9zY3JpcHQtdGVzdHMvcmVncmVzcy0xNDEwOTgu
anMKQEAgLTEsNiArMSwzIEBACi0vLyBwdXRfYnlfdmFsIElDIHVzZXMgbW9yZSBleGVjdXRhYmxl
IG1lbW9yeSB0aGFuIGJlZm9yZS4KLS8vIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVn
LmNnaT9pZD0xNDgyNzMKLS8vQCBub05vTExJbnRSdW5MYXlvdXRUZXN0IGlmICRhcmNoaXRlY3R1
cmUgPT0gImFybSIgYW5kICRob3N0T1MgPT0gImRhcndpbiIKIGRlc2NyaXB0aW9uKCJSZWdyZXNz
aW9uIHRlc3QgZm9yIGh0dHBzOi8vd2Via2l0Lm9yZy9iLzE0MTA5OC4gTWFrZSBzdXJlIGV2YWwo
KSBwcm9wZXJseSBoYW5kbGVzIHJ1bm5pbmcgb3V0IG9mIHN0YWNrIHNwYWNlLiBUaGlzIHRlc3Qg
c2hvdWxkIHJ1biB3aXRob3V0IGNyYXNoaW5nLiIpOwogCiAvLyBUaGUgdGllcmluZyB1cCB0byB0
ZXN0IGhpZ2hlciBsZXZlbHMgb2Ygb3B0aW1pemF0aW9uIHdpbGwgb25seSB0ZXN0IHRoZSBERkcK
</data>
<flag name="review"
          id="284945"
          type_id="1"
          status="+"
          setter="ggaren"
    />
          </attachment>
      

    </bug>

</bugzilla>