<?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>152186</bug_id>
          
          <creation_ts>2015-12-11 13:34:17 -0800</creation_ts>
          <short_desc>B3::reduceStrength should simplify Div(value, 1 &lt;&lt; const)</short_desc>
          <delta_ts>2024-06-22 13:51:50 -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>All</rep_platform>
          <op_sys>All</op_sys>
          <bug_status>ASSIGNED</bug_status>
          <resolution></resolution>
          
          <see_also>https://bugs.webkit.org/show_bug.cgi?id=196370</see_also>
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords></keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          <blocked>154319</blocked>
    
    <blocked>196361</blocked>
          <everconfirmed>1</everconfirmed>
          <reporter name="Filip Pizlo">fpizlo</reporter>
          <assigned_to name="Robin Morisset">rmorisset</assigned_to>
          <cc>ahmad.saleem792</cc>
    
    <cc>ews-watchlist</cc>
    
    <cc>keith_miller</cc>
    
    <cc>mark.lam</cc>
    
    <cc>msaboff</cc>
    
    <cc>rmorisset</cc>
    
    <cc>saam</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1148526</commentid>
    <comment_count>0</comment_count>
    <who name="Filip Pizlo">fpizlo</who>
    <bug_when>2015-12-11 13:34:17 -0800</bug_when>
    <thetext>asm.js needs this.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1522231</commentid>
    <comment_count>1</comment_count>
      <attachid>366211</attachid>
    <who name="Robin Morisset">rmorisset</who>
    <bug_when>2019-03-28 14:47:05 -0700</bug_when>
    <thetext>Created attachment 366211
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1522303</commentid>
    <comment_count>2</comment_count>
      <attachid>366211</attachid>
    <who name="EWS Watchlist">ews-watchlist</who>
    <bug_when>2019-03-28 17:28:54 -0700</bug_when>
    <thetext>Comment on attachment 366211
Patch

Attachment 366211 did not pass jsc-ews (mac):
Output: https://webkit-queues.webkit.org/results/11695667

New failing tests:
microbenchmarks/integer-modulo.js.ftl-eager
jsc-layout-tests.yaml/js/script-tests/integer-division-neg2tothe32-by-neg1.js.layout-ftl-eager-no-cjit
microbenchmarks/integer-modulo.js.ftl-eager-no-cjit
microbenchmarks/integer-modulo.js.ftl-no-cjit-no-inline-validate
microbenchmarks/integer-modulo.js.ftl-no-cjit-no-put-stack-validate
stress/op_mod-VarConst.js.misc-ftl-no-cjit
microbenchmarks/integer-modulo.js.ftl-no-cjit-validate-sampling-profiler</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1522633</commentid>
    <comment_count>3</comment_count>
    <who name="Robin Morisset">rmorisset</who>
    <bug_when>2019-03-29 16:07:48 -0700</bug_when>
    <thetext>I think I found the bug: I assumed that Div was rounding towards -Infinity, but it appears to round towards 0 (or x % y would not be equal to x - (x / y ) * y).
I am not entirely sure how to fix it right now.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>2042637</commentid>
    <comment_count>4</comment_count>
    <who name="Ahmad Saleem">ahmad.saleem792</who>
    <bug_when>2024-06-22 13:51:50 -0700</bug_when>
    <thetext>patch was trying to modify following:

https://searchfox.org/wubkat/rev/822900f755801587db0857fb387e92189e682702/Source/JavaScriptCore/b3/B3ReduceStrength.cpp#942

Still looks like same.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>366211</attachid>
            <date>2019-03-28 14:47:05 -0700</date>
            <delta_ts>2019-03-29 16:07:56 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>patch152186</filename>
            <type>text/plain</type>
            <size>12289</size>
            <attacher name="Robin Morisset">rmorisset</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9DaGFuZ2VMb2cgYi9Tb3VyY2UvSmF2
YVNjcmlwdENvcmUvQ2hhbmdlTG9nCmluZGV4IDU4MGQyMzhmZjVlLi5mZDkwNzNjNzdmYyAxMDA2
NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL0NoYW5nZUxvZworKysgYi9Tb3VyY2UvSmF2
YVNjcmlwdENvcmUvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMjAgQEAKKzIwMTktMDMtMjggIFJvYmlu
IE1vcmlzc2V0ICA8cm1vcmlzc2V0QGFwcGxlLmNvbT4KKworICAgICAgICBCMzo6cmVkdWNlU3Ry
ZW5ndGggc2hvdWxkIHNpbXBsaWZ5IERpdih2YWx1ZSwgMSA8PCBjb25zdCkKKyAgICAgICAgaHR0
cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE1MjE4NgorCisgICAgICAgIFJl
dmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIFdoaWxlIEkgd2FzIGF0IGl0LCBJ
IGFsc28gb3B0aW1pemVkIFVEaXYsIGFuZCBzcGVjaWFsIGNhc2VkIHRoZSBkaXZpc2lvbnMgYnkg
SU5UezMyLzY0fV9NSU4vSU5UezMyLzY0fV9NQVguCisKKyAgICAgICAgKiBiMy9CM1JlZHVjZVN0
cmVuZ3RoLmNwcDoKKyAgICAgICAgKiBiMy90ZXN0YjMuY3BwOgorICAgICAgICAoSlNDOjpCMzo6
dGVzdERpdkFyZ0ltbSk6CisgICAgICAgIChKU0M6OkIzOjp0ZXN0RGl2QXJnSW1tMzIpOgorICAg
ICAgICAoSlNDOjpCMzo6dGVzdFVEaXZBcmdJbW0pOgorICAgICAgICAoSlNDOjpCMzo6dGVzdFVE
aXZBcmdJbW0zMik6CisgICAgICAgIChKU0M6OkIzOjpydW4pOgorCiAyMDE5LTAzLTI1ICBHeXV5
b3VuZyBLaW0gIDxneXV5b3VuZy5raW1Ad2Via2l0Lm9yZz4KIAogICAgICAgICBSZW1vdmUgTmF2
aWdhdG9yQ29udGVudFV0aWxzIGluIFdlYkNvcmUvTW9kdWxlcwpkaWZmIC0tZ2l0IGEvU291cmNl
L0phdmFTY3JpcHRDb3JlL2IzL0IzUmVkdWNlU3RyZW5ndGguY3BwIGIvU291cmNlL0phdmFTY3Jp
cHRDb3JlL2IzL0IzUmVkdWNlU3RyZW5ndGguY3BwCmluZGV4IDBkYjNlYWQ4MDQ4Li5hN2RjMjVj
NWMyMyAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL2IzL0IzUmVkdWNlU3RyZW5n
dGguY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9iMy9CM1JlZHVjZVN0cmVuZ3RoLmNw
cApAQCAtNzQ2LDQyICs3NDYsNDkgQEAgcHJpdmF0ZToKICAgICAgICAgICAgICAgICBicmVhazsK
IAogICAgICAgICAgICAgaWYgKG1fdmFsdWUtPmNoaWxkKDEpLT5oYXNJbnQoKSkgewotICAgICAg
ICAgICAgICAgIHN3aXRjaCAobV92YWx1ZS0+Y2hpbGQoMSktPmFzSW50KCkpIHsKLSAgICAgICAg
ICAgICAgICBjYXNlIC0xOgorICAgICAgICAgICAgICAgIGludDY0X3QgZGl2aXNvciA9IG1fdmFs
dWUtPmNoaWxkKDEpLT5hc0ludCgpOworICAgICAgICAgICAgICAgIGlmIChkaXZpc29yID09IC0x
KSB7CiAgICAgICAgICAgICAgICAgICAgIC8vIFR1cm4gdGhpczogRGl2KHZhbHVlLCAtMSkKICAg
ICAgICAgICAgICAgICAgICAgLy8gSW50byB0aGlzOiBOZWcodmFsdWUpCi0gICAgICAgICAgICAg
ICAgICAgIHJlcGxhY2VXaXRoTmV3VmFsdWUoCi0gICAgICAgICAgICAgICAgICAgICAgICBtX3By
b2MuYWRkPFZhbHVlPihOZWcsIG1fdmFsdWUtPm9yaWdpbigpLCBtX3ZhbHVlLT5jaGlsZCgwKSkp
OwotICAgICAgICAgICAgICAgICAgICBicmVhazsKLQotICAgICAgICAgICAgICAgIGNhc2UgMDoK
KyAgICAgICAgICAgICAgICAgICAgcmVwbGFjZVdpdGhOZXc8VmFsdWU+KE5lZywgbV92YWx1ZS0+
b3JpZ2luKCksIG1fdmFsdWUtPmNoaWxkKDApKTsKKyAgICAgICAgICAgICAgICB9IGVsc2UgaWYg
KCFkaXZpc29yKSB7CiAgICAgICAgICAgICAgICAgICAgIC8vIFR1cm4gdGhpczogRGl2KHZhbHVl
LCAwKQogICAgICAgICAgICAgICAgICAgICAvLyBJbnRvIHRoaXM6IDAKICAgICAgICAgICAgICAg
ICAgICAgLy8gV2UgY2FuIGRvIHRoaXMgYmVjYXVzZSBpdCdzIHByZWNpc2VseSBjb3JyZWN0IGZv
ciBDaGlsbERpdiBhbmQgZm9yIERpdiB3ZQogICAgICAgICAgICAgICAgICAgICAvLyBhcmUgYWxs
b3dlZCB0byBkbyB3aGF0ZXZlciB3ZSB3YW50LgogICAgICAgICAgICAgICAgICAgICByZXBsYWNl
V2l0aElkZW50aXR5KG1fdmFsdWUtPmNoaWxkKDEpKTsKLSAgICAgICAgICAgICAgICAgICAgYnJl
YWs7Ci0KLSAgICAgICAgICAgICAgICBjYXNlIDE6CisgICAgICAgICAgICAgICAgfSBlbHNlIGlm
IChkaXZpc29yID09IDEpIHsKICAgICAgICAgICAgICAgICAgICAgLy8gVHVybiB0aGlzOiBEaXYo
dmFsdWUsIDEpCiAgICAgICAgICAgICAgICAgICAgIC8vIEludG8gdGhpczogdmFsdWUKICAgICAg
ICAgICAgICAgICAgICAgcmVwbGFjZVdpdGhJZGVudGl0eShtX3ZhbHVlLT5jaGlsZCgwKSk7Ci0g
ICAgICAgICAgICAgICAgICAgIGJyZWFrOwotCi0gICAgICAgICAgICAgICAgZGVmYXVsdDoKKyAg
ICAgICAgICAgICAgICB9IGVsc2UgaWYgKGRpdmlzb3IgPT0gc3RkOjpudW1lcmljX2xpbWl0czxp
bnQ2NF90Pjo6bWluKCkpIHsKKyAgICAgICAgICAgICAgICAgICAgLy8gVHVybiB0aGlzOiBEaXYo
dmFsdWUsIElOVDY0X01JTikKKyAgICAgICAgICAgICAgICAgICAgLy8gSW50byB0aGlzOiBFcXVh
bCh2YWx1ZSwgSU5UNjRfTUlOKQorICAgICAgICAgICAgICAgICAgICBWYWx1ZSogZXEgPSBtX2lu
c2VydGlvblNldC5pbnNlcnQ8VmFsdWU+KG1faW5kZXgsIEVxdWFsLCBtX3ZhbHVlLT5vcmlnaW4o
KSwgbV92YWx1ZS0+Y2hpbGQoMCksIG1fdmFsdWUtPmNoaWxkKDEpKTsKKyAgICAgICAgICAgICAg
ICAgICAgcmVwbGFjZVdpdGhOZXc8VmFsdWU+KFpFeHQzMiwgbV92YWx1ZS0+b3JpZ2luKCksIGVx
KTsKKyAgICAgICAgICAgICAgICB9IGVsc2UgaWYgKGRpdmlzb3IgPT0gc3RkOjpudW1lcmljX2xp
bWl0czxpbnQzMl90Pjo6bWluKCkgJiYgbV92YWx1ZS0+dHlwZSgpID09IEludDMyKSB7CisgICAg
ICAgICAgICAgICAgICAgIC8vIFR1cm4gdGhpczogRGl2KHZhbHVlLCBJTlQzMl9NSU4pCisgICAg
ICAgICAgICAgICAgICAgIC8vIEludG8gdGhpczogRXF1YWwodmFsdWUsIElOVDMyX01JTikKKyAg
ICAgICAgICAgICAgICAgICAgLy8gd2hlbiB2YWx1ZSBpcyAzMi1iaXRzLgorICAgICAgICAgICAg
ICAgICAgICByZXBsYWNlV2l0aE5ldzxWYWx1ZT4oRXF1YWwsIG1fdmFsdWUtPm9yaWdpbigpLCBt
X3ZhbHVlLT5jaGlsZCgwKSwgbV92YWx1ZS0+Y2hpbGQoMSkpOworICAgICAgICAgICAgICAgIH0g
ZWxzZSBpZiAoZGl2aXNvciA+IDAgJiYgaGFzT25lQml0U2V0KGRpdmlzb3IpKSB7CisgICAgICAg
ICAgICAgICAgICAgIHVuc2lnbmVkIHNoaWZ0QW1vdW50ID0gV1RGOjpmYXN0TG9nMihzdGF0aWNf
Y2FzdDx1aW50NjRfdD4oZGl2aXNvcikpOworICAgICAgICAgICAgICAgICAgICBWYWx1ZSogbmV3
Q29uc3QgPSBtX2luc2VydGlvblNldC5pbnNlcnQ8Q29uc3QzMlZhbHVlPihtX2luZGV4LCBtX3Zh
bHVlLT5jaGlsZCgxKS0+b3JpZ2luKCksIHNoaWZ0QW1vdW50KTsKKyAgICAgICAgICAgICAgICAg
ICAgcmVwbGFjZVdpdGhOZXc8VmFsdWU+KFNTaHIsIG1fdmFsdWUtPm9yaWdpbigpLCBtX3ZhbHVl
LT5jaGlsZCgwKSwgbmV3Q29uc3QpOworICAgICAgICAgICAgICAgIH0gZWxzZSB7CiAgICAgICAg
ICAgICAgICAgICAgIC8vIFBlcmZvcm0gc3VwZXIgY29tcHJlaGVuc2l2ZSBzdHJlbmd0aCByZWR1
Y3Rpb24gb2YgZGl2aXNpb24uIEN1cnJlbnRseSB3ZQogICAgICAgICAgICAgICAgICAgICAvLyBv
bmx5IGRvIHRoaXMgZm9yIDMyLWJpdCBkaXZpc2lvbnMsIHNpbmNlIHdlIG5lZWQgYSBoaWdoIG11
bHRpcGx5CiAgICAgICAgICAgICAgICAgICAgIC8vIG9wZXJhdGlvbi4gV2UgZW11bGF0ZSBpdCB1
c2luZyA2NC1iaXQgbXVsdGlwbHkuIFdlIGNhbid0IGVtdWxhdGUgNjQtYml0CiAgICAgICAgICAg
ICAgICAgICAgIC8vIGhpZ2ggbXVsdGlwbHkgd2l0aCBhIDEyOC1iaXQgbXVsdGlwbHkgYmVjYXVz
ZSB3ZSBkb24ndCBoYXZlIGEgMTI4LWJpdAogICAgICAgICAgICAgICAgICAgICAvLyBtdWx0aXBs
eS4gV2UgY291bGQgZG8gaXQgd2l0aCBhIHBhdGNocG9pbnQgaWYgd2UgY2FyZWQgYmFkbHkgZW5v
dWdoLgogCi0gICAgICAgICAgICAgICAgICAgIGlmIChtX3ZhbHVlLT50eXBlKCkgIT0gSW50MzIp
Ci0gICAgICAgICAgICAgICAgICAgICAgICBicmVhazsKLSAgICAgICAgICAgICAgICAgICAgCiAg
ICAgICAgICAgICAgICAgICAgIGlmIChtX3Byb2Mub3B0TGV2ZWwoKSA8IDIpCiAgICAgICAgICAg
ICAgICAgICAgICAgICBicmVhazsKIAorICAgICAgICAgICAgICAgICAgICBpZiAobV92YWx1ZS0+
dHlwZSgpICE9IEludDMyKQorICAgICAgICAgICAgICAgICAgICAgICAgYnJlYWs7CiAgICAgICAg
ICAgICAgICAgICAgIGludDMyX3QgZGl2aXNvciA9IG1fdmFsdWUtPmNoaWxkKDEpLT5hc0ludDMy
KCk7CisKICAgICAgICAgICAgICAgICAgICAgRGl2aXNpb25NYWdpYzxpbnQzMl90PiBtYWdpYyA9
IGNvbXB1dGVEaXZpc2lvbk1hZ2ljKGRpdmlzb3IpOwogCiAgICAgICAgICAgICAgICAgICAgIC8v
IFBlcmZvcm0gdGhlICJoaWdoIiBtdWx0aXBsaWNhdGlvbi4gV2UgZG8gaXQganVzdCB0byBnZXQg
dGhlIGhpZ2ggYml0cy4KQEAgLTgyMSw3ICs4MjgsNiBAQCBwcml2YXRlOgogICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICBtX2luZGV4LCBaU2hyLCBtX3ZhbHVlLT5vcmlnaW4oKSwgbWFn
aWNRdW90aWVudCwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbV9pbnNlcnRpb25T
ZXQuaW5zZXJ0PENvbnN0MzJWYWx1ZT4oCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICBtX2luZGV4LCBtX3ZhbHVlLT5vcmlnaW4oKSwgMzEpKSkpOwotICAgICAgICAgICAgICAg
ICAgICBicmVhazsKICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICAgYnJlYWs7CiAg
ICAgICAgICAgICB9CkBAIC04MzQsMzEgKzg0MCw0MCBAQCBwcml2YXRlOgogICAgICAgICAgICAg
ICAgIGJyZWFrOwogCiAgICAgICAgICAgICBpZiAobV92YWx1ZS0+Y2hpbGQoMSktPmhhc0ludCgp
KSB7Ci0gICAgICAgICAgICAgICAgc3dpdGNoIChtX3ZhbHVlLT5jaGlsZCgxKS0+YXNJbnQoKSkg
ewotICAgICAgICAgICAgICAgIGNhc2UgMDoKKyAgICAgICAgICAgICAgICBpbnQ2NF90IGRpdmlz
b3IgPSBtX3ZhbHVlLT5jaGlsZCgxKS0+YXNJbnQoKTsKKyAgICAgICAgICAgICAgICBpZiAoIWRp
dmlzb3IpIHsKICAgICAgICAgICAgICAgICAgICAgLy8gVHVybiB0aGlzOiBVRGl2KHZhbHVlLCAw
KQogICAgICAgICAgICAgICAgICAgICAvLyBJbnRvIHRoaXM6IDAKICAgICAgICAgICAgICAgICAg
ICAgLy8gV2UgY2FuIGRvIHdoYXRldmVyIHdlIHdhbnQgaGVyZSBzbyB3ZSBtaWdodCBhcyB3ZWxs
IGRvIHRoZSBjaGlsbCB0aGluZywKICAgICAgICAgICAgICAgICAgICAgLy8gaW4gY2FzZSB3ZSBh
ZGQgY2hpbGwgdmVyc2lvbnMgb2YgVURpdiBpbiB0aGUgZnV0dXJlLgogICAgICAgICAgICAgICAg
ICAgICByZXBsYWNlV2l0aElkZW50aXR5KG1fdmFsdWUtPmNoaWxkKDEpKTsKLSAgICAgICAgICAg
ICAgICAgICAgYnJlYWs7Ci0KLSAgICAgICAgICAgICAgICBjYXNlIDE6CisgICAgICAgICAgICAg
ICAgfSBlbHNlIGlmIChkaXZpc29yID09IDEpIHsKICAgICAgICAgICAgICAgICAgICAgLy8gVHVy
biB0aGlzOiBVRGl2KHZhbHVlLCAxKQogICAgICAgICAgICAgICAgICAgICAvLyBJbnRvIHRoaXM6
IHZhbHVlCiAgICAgICAgICAgICAgICAgICAgIHJlcGxhY2VXaXRoSWRlbnRpdHkobV92YWx1ZS0+
Y2hpbGQoMCkpOwotICAgICAgICAgICAgICAgICAgICBicmVhazsKLSAgICAgICAgICAgICAgICBk
ZWZhdWx0OgotICAgICAgICAgICAgICAgICAgICAvLyBGSVhNRTogV2Ugc2hvdWxkIGRvIGNvbXBy
ZWhlbnNpdmUgc3RyZW5ndGggcmVkdWN0aW9uIGZvciB1bnNpZ25lZCBudW1iZXJzLiBMaWtlbHks
Ci0gICAgICAgICAgICAgICAgICAgIC8vIHdlIHdpbGwganVzdCB3YW50IGNvcHkgd2hhdCBsbHZt
IGRvZXMuIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xNjQ4MDkKLSAg
ICAgICAgICAgICAgICAgICAgYnJlYWs7CisgICAgICAgICAgICAgICAgfSBlbHNlIGlmIChkaXZp
c29yID09IC0xICYmIG1fdmFsdWUtPnR5cGUoKSA9PSBJbnQ2NCkgeworICAgICAgICAgICAgICAg
ICAgICAvLyBUdXJuIHRoaXM6IFVEaXYodmFsdWUsIFVJTlQ2NF9NQVgpCisgICAgICAgICAgICAg
ICAgICAgIC8vIEludG8gdGhpczogRXF1YWwodmFsdWUsIElVTlQ2NF9NQVgpCisgICAgICAgICAg
ICAgICAgICAgIFZhbHVlKiBlcSA9IG1faW5zZXJ0aW9uU2V0Lmluc2VydDxWYWx1ZT4obV9pbmRl
eCwgRXF1YWwsIG1fdmFsdWUtPm9yaWdpbigpLCBtX3ZhbHVlLT5jaGlsZCgwKSwgbV92YWx1ZS0+
Y2hpbGQoMSkpOworICAgICAgICAgICAgICAgICAgICByZXBsYWNlV2l0aE5ldzxWYWx1ZT4oWkV4
dDMyLCBtX3ZhbHVlLT5vcmlnaW4oKSwgZXEpOworICAgICAgICAgICAgICAgIH0gZWxzZSBpZiAo
ZGl2aXNvciA9PSAtMSAmJiBtX3ZhbHVlLT50eXBlKCkgPT0gSW50MzIpIHsKKyAgICAgICAgICAg
ICAgICAgICAgLy8gVHVybiB0aGlzOiBVRGl2KHZhbHVlLCBVSU5UMzJfTUFYKQorICAgICAgICAg
ICAgICAgICAgICAvLyBJbnRvIHRoaXM6IEVxdWFsKHZhbHVlLCBVSU5UMzJfTUFYKQorICAgICAg
ICAgICAgICAgICAgICAvLyB3aGVuIHZhbHVlIGlzIDMyLWJpdHMuCisgICAgICAgICAgICAgICAg
ICAgIHJlcGxhY2VXaXRoTmV3PFZhbHVlPihFcXVhbCwgbV92YWx1ZS0+b3JpZ2luKCksIG1fdmFs
dWUtPmNoaWxkKDApLCBtX3ZhbHVlLT5jaGlsZCgxKSk7CisgICAgICAgICAgICAgICAgfSBlbHNl
IGlmIChkaXZpc29yID4gMCAmJiBoYXNPbmVCaXRTZXQoZGl2aXNvcikpIHsKKyAgICAgICAgICAg
ICAgICAgICAgdW5zaWduZWQgc2hpZnRBbW91bnQgPSBXVEY6OmZhc3RMb2cyKHN0YXRpY19jYXN0
PHVpbnQ2NF90PihkaXZpc29yKSk7CisgICAgICAgICAgICAgICAgICAgIFZhbHVlKiBuZXdDb25z
dCA9IG1faW5zZXJ0aW9uU2V0Lmluc2VydDxDb25zdDMyVmFsdWU+KG1faW5kZXgsIG1fdmFsdWUt
PmNoaWxkKDEpLT5vcmlnaW4oKSwgc2hpZnRBbW91bnQpOworICAgICAgICAgICAgICAgICAgICBy
ZXBsYWNlV2l0aE5ldzxWYWx1ZT4oWlNociwgbV92YWx1ZS0+b3JpZ2luKCksIG1fdmFsdWUtPmNo
aWxkKDApLCBuZXdDb25zdCk7CiAgICAgICAgICAgICAgICAgfQorICAgICAgICAgICAgICAgIC8v
IEZJWE1FOiBXZSBzaG91bGQgZG8gY29tcHJlaGVuc2l2ZSBzdHJlbmd0aCByZWR1Y3Rpb24gZm9y
IHVuc2lnbmVkIG51bWJlcnMuIExpa2VseSwKKyAgICAgICAgICAgICAgICAvLyB3ZSB3aWxsIGp1
c3Qgd2FudCBjb3B5IHdoYXQgbGx2bSBkb2VzLiBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93
X2J1Zy5jZ2k/aWQ9MTY0ODA5CiAgICAgICAgICAgICB9CiAgICAgICAgICAgICBicmVhazsKIAog
ICAgICAgICBjYXNlIE1vZDoKICAgICAgICAgICAgIC8vIFR1cm4gdGhpczogTW9kKGNvbnN0YW50
MSwgY29uc3RhbnQyKQotICAgICAgICAgICAgLy8gSW50byB0aGlzOiBjb25zdGFudDEgLyBjb25z
dGFudDIKKyAgICAgICAgICAgIC8vIEludG8gdGhpczogY29uc3RhbnQxICUgY29uc3RhbnQyCiAg
ICAgICAgICAgICAvLyBOb3RlIHRoYXQgdGhpcyB1c2VzIE1vZDxDaGlsbD4gc2VtYW50aWNzLgog
ICAgICAgICAgICAgaWYgKHJlcGxhY2VXaXRoTmV3VmFsdWUobV92YWx1ZS0+Y2hpbGQoMCktPm1v
ZENvbnN0YW50KG1fcHJvYywgbV92YWx1ZS0+Y2hpbGQoMSkpKSkKICAgICAgICAgICAgICAgICBi
cmVhazsKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9iMy90ZXN0YjMuY3BwIGIv
U291cmNlL0phdmFTY3JpcHRDb3JlL2IzL3Rlc3RiMy5jcHAKaW5kZXggMGUzNzFiYzAxODEuLmI5
MWQ5Y2EwZjkzIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvYjMvdGVzdGIzLmNw
cAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvYjMvdGVzdGIzLmNwcApAQCAtMTQ3OCw2ICsx
NDc4LDQxIEBAIHZvaWQgdGVzdE11bEFyZ3NGbG9hdFdpdGhFZmZlY3RmdWxEb3VibGVDb252ZXJz
aW9uKGZsb2F0IGEsIGZsb2F0IGIpCiAgICAgQ0hFQ0soaXNJZGVudGljYWwoZWZmZWN0LCBzdGF0
aWNfY2FzdDxkb3VibGU+KGEpICogc3RhdGljX2Nhc3Q8ZG91YmxlPihiKSkpOwogfQogCit2b2lk
IHRlc3REaXZBcmdJbW0oaW50NjRfdCBhLCBpbnQ2NF90IGIpCit7CisgICAgaWYgKCFiKQorICAg
ICAgICByZXR1cm47CisgICAgaWYgKGIgPT0gLTEgJiYgYSA9PSBJTlQ2NF9NSU4pCisgICAgICAg
IHJldHVybjsKKworICAgIFByb2NlZHVyZSBwcm9jOworICAgIEJhc2ljQmxvY2sqIHJvb3QgPSBw
cm9jLmFkZEJsb2NrKCk7CisgICAgVmFsdWUqIGFyZ0EgPSByb290LT5hcHBlbmROZXc8QXJndW1l
bnRSZWdWYWx1ZT4ocHJvYywgT3JpZ2luKCksIEdQUkluZm86OmFyZ3VtZW50R1BSMCk7CisgICAg
VmFsdWUqIGltbUIgPSByb290LT5hcHBlbmROZXc8Q29uc3Q2NFZhbHVlPihwcm9jLCBPcmlnaW4o
KSwgYik7CisgICAgVmFsdWUqIHJlc3VsdCA9IHJvb3QtPmFwcGVuZE5ldzxWYWx1ZT4ocHJvYywg
RGl2LCBPcmlnaW4oKSwgYXJnQSwgaW1tQik7CisgICAgcm9vdC0+YXBwZW5kTmV3PFZhbHVlPihw
cm9jLCBSZXR1cm4sIE9yaWdpbigpLCByZXN1bHQpOworCisgICAgQ0hFQ0tfRVEoY29tcGlsZUFu
ZFJ1bjxpbnQ2NF90Pihwcm9jLCBhKSwgYSAvIGIpOworfQorCit2b2lkIHRlc3REaXZBcmdJbW0z
MihpbnQzMl90IGEsIGludDMyX3QgYikKK3sKKyAgICBpZiAoIWIpCisgICAgICAgIHJldHVybjsK
KyAgICBpZiAoYiA9PSAtMSAmJiBhID09IElOVDMyX01JTikKKyAgICAgICAgcmV0dXJuOworCisg
ICAgUHJvY2VkdXJlIHByb2M7CisgICAgQmFzaWNCbG9jayogcm9vdCA9IHByb2MuYWRkQmxvY2so
KTsKKyAgICBWYWx1ZSogYXJnQSA9IHJvb3QtPmFwcGVuZE5ldzxBcmd1bWVudFJlZ1ZhbHVlPihw
cm9jLCBPcmlnaW4oKSwgR1BSSW5mbzo6YXJndW1lbnRHUFIwKTsKKyAgICBWYWx1ZSogdHJ1bmNB
ID0gcm9vdC0+YXBwZW5kTmV3PFZhbHVlPihwcm9jLCBUcnVuYywgT3JpZ2luKCksIGFyZ0EpOwor
ICAgIFZhbHVlKiBpbW1CID0gcm9vdC0+YXBwZW5kTmV3PENvbnN0MzJWYWx1ZT4ocHJvYywgT3Jp
Z2luKCksIGIpOworICAgIFZhbHVlKiByZXN1bHQgPSByb290LT5hcHBlbmROZXc8VmFsdWU+KHBy
b2MsIERpdiwgT3JpZ2luKCksIHRydW5jQSwgaW1tQik7CisgICAgcm9vdC0+YXBwZW5kTmV3PFZh
bHVlPihwcm9jLCBSZXR1cm4sIE9yaWdpbigpLCByZXN1bHQpOworCisgICAgQ0hFQ0tfRVEoY29t
cGlsZUFuZFJ1bjxpbnQzMl90Pihwcm9jLCBhKSwgYSAvIGIpOworfQorCiB2b2lkIHRlc3REaXZB
cmdEb3VibGUoZG91YmxlIGEpCiB7CiAgICAgUHJvY2VkdXJlIHByb2M7CkBAIC0xODE2LDYgKzE4
NTEsMzcgQEAgdm9pZCB0ZXN0RGl2QXJnc0Zsb2F0V2l0aEVmZmVjdGZ1bERvdWJsZUNvbnZlcnNp
b24oZmxvYXQgYSwgZmxvYXQgYikKICAgICBDSEVDSyhpc0lkZW50aWNhbChlZmZlY3QsIHN0YXRp
Y19jYXN0PGRvdWJsZT4oYSkgLyBzdGF0aWNfY2FzdDxkb3VibGU+KGIpKSk7CiB9CiAKK3ZvaWQg
dGVzdFVEaXZBcmdJbW0oaW50NjRfdCBhLCBpbnQ2NF90IGIpCit7CisgICAgaWYgKCFiKQorICAg
ICAgICByZXR1cm47CisKKyAgICBQcm9jZWR1cmUgcHJvYzsKKyAgICBCYXNpY0Jsb2NrKiByb290
ID0gcHJvYy5hZGRCbG9jaygpOworICAgIFZhbHVlKiBhcmdBID0gcm9vdC0+YXBwZW5kTmV3PEFy
Z3VtZW50UmVnVmFsdWU+KHByb2MsIE9yaWdpbigpLCBHUFJJbmZvOjphcmd1bWVudEdQUjApOwor
ICAgIFZhbHVlKiBpbW1CID0gcm9vdC0+YXBwZW5kTmV3PENvbnN0NjRWYWx1ZT4ocHJvYywgT3Jp
Z2luKCksIGIpOworICAgIFZhbHVlKiByZXN1bHQgPSByb290LT5hcHBlbmROZXc8VmFsdWU+KHBy
b2MsIFVEaXYsIE9yaWdpbigpLCBhcmdBLCBpbW1CKTsKKyAgICByb290LT5hcHBlbmROZXc8VmFs
dWU+KHByb2MsIFJldHVybiwgT3JpZ2luKCksIHJlc3VsdCk7CisKKyAgICBDSEVDS19FUShjb21w
aWxlQW5kUnVuPHVpbnQ2NF90Pihwcm9jLCBhKSwgc3RhdGljX2Nhc3Q8dWludDY0X3Q+KGEpIC8g
c3RhdGljX2Nhc3Q8dWludDY0X3Q+KGIpKTsKK30KKwordm9pZCB0ZXN0VURpdkFyZ0ltbTMyKGlu
dDMyX3QgYSwgaW50MzJfdCBiKQoreworICAgIGlmICghYikKKyAgICAgICAgcmV0dXJuOworCisg
ICAgUHJvY2VkdXJlIHByb2M7CisgICAgQmFzaWNCbG9jayogcm9vdCA9IHByb2MuYWRkQmxvY2so
KTsKKyAgICBWYWx1ZSogYXJnQSA9IHJvb3QtPmFwcGVuZE5ldzxBcmd1bWVudFJlZ1ZhbHVlPihw
cm9jLCBPcmlnaW4oKSwgR1BSSW5mbzo6YXJndW1lbnRHUFIwKTsKKyAgICBWYWx1ZSogdHJ1bmNB
ID0gcm9vdC0+YXBwZW5kTmV3PFZhbHVlPihwcm9jLCBUcnVuYywgT3JpZ2luKCksIGFyZ0EpOwor
ICAgIFZhbHVlKiBpbW1CID0gcm9vdC0+YXBwZW5kTmV3PENvbnN0MzJWYWx1ZT4ocHJvYywgT3Jp
Z2luKCksIGIpOworICAgIFZhbHVlKiByZXN1bHQgPSByb290LT5hcHBlbmROZXc8VmFsdWU+KHBy
b2MsIFVEaXYsIE9yaWdpbigpLCB0cnVuY0EsIGltbUIpOworICAgIHJvb3QtPmFwcGVuZE5ldzxW
YWx1ZT4ocHJvYywgUmV0dXJuLCBPcmlnaW4oKSwgcmVzdWx0KTsKKworICAgIENIRUNLX0VRKGNv
bXBpbGVBbmRSdW48dWludDMyX3Q+KHByb2MsIGEpLCBzdGF0aWNfY2FzdDx1aW50MzJfdD4oYSkg
LyBzdGF0aWNfY2FzdDx1aW50MzJfdD4oYikpOworfQorCiB2b2lkIHRlc3RVRGl2QXJnc0ludDMy
KHVpbnQzMl90IGEsIHVpbnQzMl90IGIpCiB7CiAgICAgLy8gVURpdiB3aXRoIGRlbm9taW5hdG9y
ID09IDAgaXMgaW52YWxpZC4KQEAgLTE3MDU1LDYgKzE3MTIxLDEwIEBAIHZvaWQgcnVuKGNvbnN0
IGNoYXIqIGZpbHRlcikKICAgICBSVU4odGVzdERpdkltbXNEb3VibGUoMCwgMCkpOwogICAgIFJV
Tih0ZXN0RGl2SW1tc0RvdWJsZSgwLCBuZWdhdGl2ZVplcm8oKSkpOwogICAgIFJVTih0ZXN0RGl2
SW1tc0RvdWJsZShuZWdhdGl2ZVplcm8oKSwgbmVnYXRpdmVaZXJvKCkpKTsKKyAgICBSVU4odGVz
dERpdkFyZ0ltbTMyKDQyLCAyNTYpKTsKKyAgICBSVU5fQklOQVJZKHRlc3REaXZBcmdJbW0zMiwg
aW50MzJPcGVyYW5kcygpLCBpbnQzMk9wZXJhbmRzKCkpOworICAgIFJVTih0ZXN0RGl2QXJnSW1t
KDQyLCAyNTYpKTsKKyAgICBSVU5fQklOQVJZKHRlc3REaXZBcmdJbW0sIGludDY0T3BlcmFuZHMo
KSwgaW50NjRPcGVyYW5kcygpKTsKICAgICBSVU5fVU5BUlkodGVzdERpdkFyZ0Zsb2F0LCBmbG9h
dGluZ1BvaW50T3BlcmFuZHM8ZmxvYXQ+KCkpOwogICAgIFJVTl9CSU5BUlkodGVzdERpdkFyZ3NG
bG9hdCwgZmxvYXRpbmdQb2ludE9wZXJhbmRzPGZsb2F0PigpLCBmbG9hdGluZ1BvaW50T3BlcmFu
ZHM8ZmxvYXQ+KCkpOwogICAgIFJVTl9CSU5BUlkodGVzdERpdkFyZ0ltbUZsb2F0LCBmbG9hdGlu
Z1BvaW50T3BlcmFuZHM8ZmxvYXQ+KCksIGZsb2F0aW5nUG9pbnRPcGVyYW5kczxmbG9hdD4oKSk7
CkBAIC0xNzA2NCw2ICsxNzEzNCwxMCBAQCB2b2lkIHJ1bihjb25zdCBjaGFyKiBmaWx0ZXIpCiAg
ICAgUlVOX0JJTkFSWSh0ZXN0RGl2QXJnc0Zsb2F0V2l0aFVzZWxlc3NEb3VibGVDb252ZXJzaW9u
LCBmbG9hdGluZ1BvaW50T3BlcmFuZHM8ZmxvYXQ+KCksIGZsb2F0aW5nUG9pbnRPcGVyYW5kczxm
bG9hdD4oKSk7CiAgICAgUlVOX0JJTkFSWSh0ZXN0RGl2QXJnc0Zsb2F0V2l0aEVmZmVjdGZ1bERv
dWJsZUNvbnZlcnNpb24sIGZsb2F0aW5nUG9pbnRPcGVyYW5kczxmbG9hdD4oKSwgZmxvYXRpbmdQ
b2ludE9wZXJhbmRzPGZsb2F0PigpKTsKIAorICAgIFJVTih0ZXN0VURpdkFyZ0ltbTMyKDQyLCAy
NTYpKTsKKyAgICBSVU5fQklOQVJZKHRlc3RVRGl2QXJnSW1tMzIsIGludDMyT3BlcmFuZHMoKSwg
aW50MzJPcGVyYW5kcygpKTsKKyAgICBSVU4odGVzdFVEaXZBcmdJbW0oNDIsIDI1NikpOworICAg
IFJVTl9CSU5BUlkodGVzdFVEaXZBcmdJbW0sIGludDY0T3BlcmFuZHMoKSwgaW50NjRPcGVyYW5k
cygpKTsKICAgICBSVU5fQklOQVJZKHRlc3RVRGl2QXJnc0ludDMyLCBpbnQzMk9wZXJhbmRzKCks
IGludDMyT3BlcmFuZHMoKSk7CiAgICAgUlVOX0JJTkFSWSh0ZXN0VURpdkFyZ3NJbnQ2NCwgaW50
NjRPcGVyYW5kcygpLCBpbnQ2NE9wZXJhbmRzKCkpOwogCg==
</data>
<flag name="review"
          id="382614"
          type_id="1"
          status="-"
          setter="rmorisset"
    />
    <flag name="commit-queue"
          id="382631"
          type_id="3"
          status="-"
          setter="ews-watchlist"
    />
          </attachment>
      

    </bug>

</bugzilla>