<?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>199460</bug_id>
          
          <creation_ts>2019-07-03 13:16:49 -0700</creation_ts>
          <short_desc>[WHLSL] Make the destructor of VariableDeclaration non-virtual</short_desc>
          <delta_ts>2019-07-03 18:07:16 -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>WebGPU</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>InRadar</keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Robin Morisset">rmorisset</reporter>
          <assigned_to name="Robin Morisset">rmorisset</assigned_to>
          <cc>commit-queue</cc>
    
    <cc>mmaxfield</cc>
    
    <cc>webkit-bug-importer</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1549969</commentid>
    <comment_count>0</comment_count>
    <who name="Robin Morisset">rmorisset</who>
    <bug_when>2019-07-03 13:16:49 -0700</bug_when>
    <thetext>Three steps:
- Remove WHLSL::AST::Value, inlining it into its children (it is trivial, it just has one field m_origin with a getter and nothing else)
- Mark WHLSL::AST::VariableDeclaration final
- Now that it inherits from nothing and nothing can inherit from it, there is no reason for it to have any virtual method, including its destructor.

This not only saves 8 bytes from every variable declaration (for the virtual table pointer), it also should make destructing the AST at the end of compilation a bit faster by removing the virtual destructor call.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1550104</commentid>
    <comment_count>1</comment_count>
      <attachid>373441</attachid>
    <who name="Robin Morisset">rmorisset</who>
    <bug_when>2019-07-03 17:15:48 -0700</bug_when>
    <thetext>Created attachment 373441
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1550123</commentid>
    <comment_count>2</comment_count>
      <attachid>373441</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2019-07-03 18:06:41 -0700</bug_when>
    <thetext>Comment on attachment 373441
Patch

Clearing flags on attachment: 373441

Committed r247124: &lt;https://trac.webkit.org/changeset/247124&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1550124</commentid>
    <comment_count>3</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2019-07-03 18:06:42 -0700</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1550125</commentid>
    <comment_count>4</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2019-07-03 18:07:16 -0700</bug_when>
    <thetext>&lt;rdar://problem/52622361&gt;</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>373441</attachid>
            <date>2019-07-03 17:15:48 -0700</date>
            <delta_ts>2019-07-03 18:06:41 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-199460-20190703171547.patch</filename>
            <type>text/plain</type>
            <size>11454</size>
            <attacher name="Robin Morisset">rmorisset</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjQ3MTE1CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggZTUzMTQyNzhiMTY4M2Y4
NjIxNDQ0MWY1N2FlNzYwZGFmNjFkMzc4Zi4uODI2N2M0YjA5NTY3NDA3NzRjZGZjOWQ0ZmI2YWIy
ZjQ4YmI5M2ViYiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDMxIEBACisyMDE5LTA3LTAzICBSb2Jp
biBNb3Jpc3NldCAgPHJtb3Jpc3NldEBhcHBsZS5jb20+CisKKyAgICAgICAgW1dITFNMXSBNYWtl
IHRoZSBkZXN0cnVjdG9yIG9mIFZhcmlhYmxlRGVjbGFyYXRpb24gbm9uLXZpcnR1YWwKKyAgICAg
ICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE5OTQ2MAorCisgICAg
ICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIFRocmVlIHN0ZXBzOgor
ICAgICAgICAtIFJlbW92ZSBXSExTTDo6QVNUOjpWYWx1ZSwgaW5saW5pbmcgaXQgaW50byBpdHMg
Y2hpbGRyZW4gKGl0IGlzIHRyaXZpYWwsIGl0IGp1c3QgaGFzIG9uZSBmaWVsZCBtX29yaWdpbiB3
aXRoIGEgZ2V0dGVyIGFuZCBub3RoaW5nIGVsc2UpCisgICAgICAgIC0gTWFyayBXSExTTDo6QVNU
OjpWYXJpYWJsZURlY2xhcmF0aW9uIGZpbmFsCisgICAgICAgIC0gTm93IHRoYXQgaXQgaW5oZXJp
dHMgZnJvbSBub3RoaW5nIGFuZCBub3RoaW5nIGNhbiBpbmhlcml0IGZyb20gaXQsIHRoZXJlIGlz
IG5vIHJlYXNvbiBmb3IgaXQgdG8gaGF2ZSBhbnkgdmlydHVhbCBtZXRob2QsIGluY2x1ZGluZyBp
dHMgZGVzdHJ1Y3Rvci4KKworICAgICAgICBUaGlzIG5vdCBvbmx5IHNhdmVzIDggYnl0ZXMgZnJv
bSBldmVyeSB2YXJpYWJsZSBkZWNsYXJhdGlvbiAoZm9yIHRoZSB2aXJ0dWFsIHRhYmxlIHBvaW50
ZXIpLCBpdCBhbHNvIHNob3VsZCBtYWtlIGRlc3RydWN0aW5nIHRoZSBBU1QgYXQgdGhlIGVuZCBv
ZiBjb21waWxhdGlvbiBhIGJpdCBmYXN0ZXIgYnkgcmVtb3ZpbmcgdGhlIHZpcnR1YWwgZGVzdHJ1
Y3RvciBjYWxsLgorCisgICAgICAgIE5vIG5ldyB0ZXN0cyBhcyB0aGVyZSBpcyBubyBpbnRlbmRl
ZCBmdW5jdGlvbmFsIGNoYW5nZS4KKworICAgICAgICAqIE1vZHVsZXMvd2ViZ3B1L1dITFNML0FT
VC9XSExTTEFTVC5oOgorICAgICAgICAqIE1vZHVsZXMvd2ViZ3B1L1dITFNML0FTVC9XSExTTEV4
cHJlc3Npb24uaDoKKyAgICAgICAgKFdlYkNvcmU6OldITFNMOjpBU1Q6OkV4cHJlc3Npb246OkV4
cHJlc3Npb24pOgorICAgICAgICAoV2ViQ29yZTo6V0hMU0w6OkFTVDo6RXhwcmVzc2lvbjo6b3Jp
Z2luIGNvbnN0KToKKyAgICAgICAgKiBNb2R1bGVzL3dlYmdwdS9XSExTTC9BU1QvV0hMU0xTdGF0
ZW1lbnQuaDoKKyAgICAgICAgKFdlYkNvcmU6OldITFNMOjpBU1Q6OlN0YXRlbWVudDo6U3RhdGVt
ZW50KToKKyAgICAgICAgKFdlYkNvcmU6OldITFNMOjpBU1Q6OlN0YXRlbWVudDo6b3JpZ2luIGNv
bnN0KToKKyAgICAgICAgKiBNb2R1bGVzL3dlYmdwdS9XSExTTC9BU1QvV0hMU0xWYWx1ZS5oOiBS
ZW1vdmVkLgorICAgICAgICAqIE1vZHVsZXMvd2ViZ3B1L1dITFNML0FTVC9XSExTTFZhcmlhYmxl
RGVjbGFyYXRpb24uaDoKKyAgICAgICAgKiBNb2R1bGVzL3dlYmdwdS9XSExTTC9XSExTTFBhcnNl
ci5oOgorICAgICAgICAqIFdlYkNvcmUueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvajoKKwogMjAx
OS0wNy0wMiAgTXlsZXMgQy4gTWF4ZmllbGQgIDxtbWF4ZmllbGRAYXBwbGUuY29tPgogCiAgICAg
ICAgIFtXSExTTF0gU3RhbmRhcmQgbGlicmFyeSBpcyB0b28gYmlnIHRvIGRpcmVjdGx5IGluY2x1
ZGUgaW4gV2ViQ29yZQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvTW9kdWxlcy93ZWJncHUv
V0hMU0wvQVNUL1dITFNMQVNULmggYi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL3dlYmdwdS9XSExT
TC9BU1QvV0hMU0xBU1QuaAppbmRleCA1YTAxZTNmNjZjOTA0Yzg3NzI3YmE4ODcwNDU0YjM0MmZk
ZTNlODFjLi41Nzk0ZDRlY2RiN2ZkOTA5ODhlZmJiN2ZiMGJjOTg0NjJlNTZjMTJkIDEwMDY0NAot
LS0gYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL3dlYmdwdS9XSExTTC9BU1QvV0hMU0xBU1QuaAor
KysgYi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL3dlYmdwdS9XSExTTC9BU1QvV0hMU0xBU1QuaApA
QCAtOTgsNyArOTgsNiBAQAogI2luY2x1ZGUgIldITFNMVW5uYW1lZFR5cGUuaCIKICNpbmNsdWRl
ICJXSExTTFVuc2lnbmVkSW50ZWdlckxpdGVyYWwuaCIKICNpbmNsdWRlICJXSExTTFVuc2lnbmVk
SW50ZWdlckxpdGVyYWxUeXBlLmgiCi0jaW5jbHVkZSAiV0hMU0xWYWx1ZS5oIgogI2luY2x1ZGUg
IldITFNMVmFyaWFibGVEZWNsYXJhdGlvbi5oIgogI2luY2x1ZGUgIldITFNMVmFyaWFibGVEZWNs
YXJhdGlvbnNTdGF0ZW1lbnQuaCIKICNpbmNsdWRlICJXSExTTFZhcmlhYmxlUmVmZXJlbmNlLmgi
CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL3dlYmdwdS9XSExTTC9BU1QvV0hM
U0xFeHByZXNzaW9uLmggYi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL3dlYmdwdS9XSExTTC9BU1Qv
V0hMU0xFeHByZXNzaW9uLmgKaW5kZXggZmQ3MGYxYjk1MzI3MjgxZGQ1OTQ4ZjVkNWI3YzQ5YjUx
OGI1YzYzNC4uYjdjY2M0NDk0OWMxMjI2Njk1M2JhNGM1MjIyOTg2YmMzNGRmZmVhMCAxMDA2NDQK
LS0tIGEvU291cmNlL1dlYkNvcmUvTW9kdWxlcy93ZWJncHUvV0hMU0wvQVNUL1dITFNMRXhwcmVz
c2lvbi5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvd2ViZ3B1L1dITFNML0FTVC9XSExT
TEV4cHJlc3Npb24uaApAQCAtMzAsNyArMzAsNiBAQAogI2luY2x1ZGUgIldITFNMQWRkcmVzc1Nw
YWNlLmgiCiAjaW5jbHVkZSAiV0hMU0xMZXhlci5oIgogI2luY2x1ZGUgIldITFNMVW5uYW1lZFR5
cGUuaCIKLSNpbmNsdWRlICJXSExTTFZhbHVlLmgiCiAjaW5jbHVkZSA8d3RmL09wdGlvbmFsLmg+
CiAjaW5jbHVkZSA8d3RmL1VuaXF1ZVJlZi5oPgogCkBAIC00MCwxMSArMzksMTAgQEAgbmFtZXNw
YWNlIFdITFNMIHsKIAogbmFtZXNwYWNlIEFTVCB7CiAKLWNsYXNzIEV4cHJlc3Npb24gOiBwdWJs
aWMgVmFsdWUgewotICAgIHVzaW5nIEJhc2UgPSBWYWx1ZTsKK2NsYXNzIEV4cHJlc3Npb24gewog
cHVibGljOgogICAgIEV4cHJlc3Npb24oTGV4ZXI6OlRva2VuJiYgb3JpZ2luKQotICAgICAgICA6
IEJhc2UoV1RGTW92ZShvcmlnaW4pKQorICAgICAgICA6IG1fb3JpZ2luKFdURk1vdmUob3JpZ2lu
KSkKICAgICB7CiAgICAgfQogCkBAIC0xMTQsNyArMTEyLDEwIEBAIHB1YmxpYzoKICAgICB2aXJ0
dWFsIGJvb2wgaXNWYXJpYWJsZVJlZmVyZW5jZSgpIGNvbnN0IHsgcmV0dXJuIGZhbHNlOyB9CiAg
ICAgdmlydHVhbCBib29sIGlzRW51bWVyYXRpb25NZW1iZXJMaXRlcmFsKCkgY29uc3QgeyByZXR1
cm4gZmFsc2U7IH0KIAorICAgIExleGVyOjpUb2tlbiBvcmlnaW4oKSBjb25zdCB7IHJldHVybiBt
X29yaWdpbjsgfQorCiBwcml2YXRlOgorICAgIExleGVyOjpUb2tlbiBtX29yaWdpbjsKICAgICBP
cHRpb25hbDxVbmlxdWVSZWY8VW5uYW1lZFR5cGU+PiBtX3R5cGU7CiAgICAgT3B0aW9uYWw8VHlw
ZUFubm90YXRpb24+IG1fdHlwZUFubm90YXRpb247CiB9OwpkaWZmIC0tZ2l0IGEvU291cmNlL1dl
YkNvcmUvTW9kdWxlcy93ZWJncHUvV0hMU0wvQVNUL1dITFNMU3RhdGVtZW50LmggYi9Tb3VyY2Uv
V2ViQ29yZS9Nb2R1bGVzL3dlYmdwdS9XSExTTC9BU1QvV0hMU0xTdGF0ZW1lbnQuaAppbmRleCA1
N2YxYmYzYjkzZWNjMjYwYTY0N2I3MmNmYjU3ZmM5OGE1ZTljNjI0Li4wYzI0NTY2ZTYxNDRlOTNi
ZDg1MDQwNWRkZTIyYjJlMWUxNWNiZmM0IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1
bGVzL3dlYmdwdS9XSExTTC9BU1QvV0hMU0xTdGF0ZW1lbnQuaAorKysgYi9Tb3VyY2UvV2ViQ29y
ZS9Nb2R1bGVzL3dlYmdwdS9XSExTTC9BU1QvV0hMU0xTdGF0ZW1lbnQuaApAQCAtMjgsNyArMjgs
NiBAQAogI2lmIEVOQUJMRShXRUJHUFUpCiAKICNpbmNsdWRlICJXSExTTExleGVyLmgiCi0jaW5j
bHVkZSAiV0hMU0xWYWx1ZS5oIgogI2luY2x1ZGUgPHd0Zi9VbmlxdWVSZWYuaD4KIAogbmFtZXNw
YWNlIFdlYkNvcmUgewpAQCAtMzcsMTEgKzM2LDEwIEBAIG5hbWVzcGFjZSBXSExTTCB7CiAKIG5h
bWVzcGFjZSBBU1QgewogCi1jbGFzcyBTdGF0ZW1lbnQgOiBwdWJsaWMgVmFsdWUgewotICAgIHVz
aW5nIEJhc2UgPSBWYWx1ZTsKK2NsYXNzIFN0YXRlbWVudCB7CiBwdWJsaWM6CiAgICAgU3RhdGVt
ZW50KExleGVyOjpUb2tlbiYmIG9yaWdpbikKLSAgICAgICAgOiBCYXNlKFdURk1vdmUob3JpZ2lu
KSkKKyAgICAgICAgOiBtX29yaWdpbihXVEZNb3ZlKG9yaWdpbikpCiAgICAgewogICAgIH0KIApA
QCAtNjUsNiArNjMsMTEgQEAgcHVibGljOgogICAgIHZpcnR1YWwgYm9vbCBpc1RyYXAoKSBjb25z
dCB7IHJldHVybiBmYWxzZTsgfQogICAgIHZpcnR1YWwgYm9vbCBpc1ZhcmlhYmxlRGVjbGFyYXRp
b25zU3RhdGVtZW50KCkgY29uc3QgeyByZXR1cm4gZmFsc2U7IH0KICAgICB2aXJ0dWFsIGJvb2wg
aXNXaGlsZUxvb3AoKSBjb25zdCB7IHJldHVybiBmYWxzZTsgfQorCisgICAgTGV4ZXI6OlRva2Vu
IG9yaWdpbigpIGNvbnN0IHsgcmV0dXJuIG1fb3JpZ2luOyB9CisKK3ByaXZhdGU6CisgICAgTGV4
ZXI6OlRva2VuIG1fb3JpZ2luOwogfTsKIAogdXNpbmcgU3RhdGVtZW50cyA9IFZlY3RvcjxVbmlx
dWVSZWY8U3RhdGVtZW50Pj47CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL3dl
YmdwdS9XSExTTC9BU1QvV0hMU0xWYWx1ZS5oIGIvU291cmNlL1dlYkNvcmUvTW9kdWxlcy93ZWJn
cHUvV0hMU0wvQVNUL1dITFNMVmFsdWUuaApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXgg
NDE3OWQzZDAzMWRiYzg1NmU4YmJlZTNlNGIxMTJiZjU1NzNmZGNiNi4uMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL3dl
YmdwdS9XSExTTC9BU1QvV0hMU0xWYWx1ZS5oCisrKyAvZGV2L251bGwKQEAgLTEsNjMgKzAsMCBA
QAotLyoKLSAqIENvcHlyaWdodCAoQykgMjAxOSBBcHBsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2
ZWQuCi0gKgotICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBm
b3Jtcywgd2l0aCBvciB3aXRob3V0Ci0gKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJv
dmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKLSAqIGFyZSBtZXQ6Ci0gKiAxLiBS
ZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHly
aWdodAotICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxv
d2luZyBkaXNjbGFpbWVyLgotICogMi4gUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11
c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQKLSAqICAgIG5vdGljZSwgdGhpcyBsaXN0
IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUKLSAqICAg
IGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBk
aXN0cmlidXRpb24uCi0gKgotICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBBUFBMRSBJ
TkMuIEFORCBJVFMgQ09OVFJJQlVUT1JTIGBgQVMgSVMnJwotICogQU5EIEFOWSBFWFBSRVNTIE9S
IElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sCi0gKiBU
SEUgSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1Ig
QSBQQVJUSUNVTEFSCi0gKiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFM
TCBBUFBMRSBJTkMuIE9SIElUUyBDT05UUklCVVRPUlMKLSAqIEJFIExJQUJMRSBGT1IgQU5ZIERJ
UkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IKLSAqIENP
TlNFUVVFTlRJQUwgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NV
UkVNRU5UIE9GCi0gKiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwg
REFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MKLSAqIElOVEVSUlVQVElPTikgSE9XRVZFUiBD
QVVTRUQgQU5EIE9OIEFOWSBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOCi0gKiBDT05U
UkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVCAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1Ig
T1RIRVJXSVNFKQotICogQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFIE9GIFRISVMg
U09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRgotICogVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0gg
REFNQUdFLgotICovCi0KLSNwcmFnbWEgb25jZQotCi0jaWYgRU5BQkxFKFdFQkdQVSkKLQotbmFt
ZXNwYWNlIFdlYkNvcmUgewotCi1uYW1lc3BhY2UgV0hMU0wgewotCi1uYW1lc3BhY2UgQVNUIHsK
LQotY2xhc3MgVmFsdWUgewotcHVibGljOgotICAgIFZhbHVlKExleGVyOjpUb2tlbiYmIG9yaWdp
bikKLSAgICAgICAgOiBtX29yaWdpbihXVEZNb3ZlKG9yaWdpbikpCi0gICAgewotICAgIH0KLQot
ICAgIHZpcnR1YWwgflZhbHVlKCkgPSBkZWZhdWx0OwotCi0gICAgZXhwbGljaXQgVmFsdWUoY29u
c3QgVmFsdWUmKSA9IGRlZmF1bHQ7Ci0gICAgVmFsdWUoVmFsdWUmJikgPSBkZWZhdWx0OwotCi0g
ICAgVmFsdWUmIG9wZXJhdG9yPShjb25zdCBWYWx1ZSYpID0gZGVmYXVsdDsKLSAgICBWYWx1ZSYg
b3BlcmF0b3I9KFZhbHVlJiYpID0gZGVmYXVsdDsKLQotICAgIExleGVyOjpUb2tlbiBvcmlnaW4o
KSBjb25zdCB7IHJldHVybiBtX29yaWdpbjsgfQotCi1wcm90ZWN0ZWQ6Ci0gICAgTGV4ZXI6OlRv
a2VuIG1fb3JpZ2luOwotfTsKLQotfSAvLyBuYW1lc3BhY2UgQVNUCi0KLX0KLQotfQotCi0jZW5k
aWYKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvd2ViZ3B1L1dITFNML0FTVC9X
SExTTFZhcmlhYmxlRGVjbGFyYXRpb24uaCBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvd2ViZ3B1
L1dITFNML0FTVC9XSExTTFZhcmlhYmxlRGVjbGFyYXRpb24uaAppbmRleCA2YTQzOTNhOGEyOWFi
MjAyYmY1YmEyMWIyY2Y0YmRkYjRmNjhjZGFlLi5jMGRjOGQ0ODFmNjAwMWJkMmVkYzkxZDljNzE4
YTZkNjBiZjFlN2UzIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL3dlYmdwdS9X
SExTTC9BU1QvV0hMU0xWYXJpYWJsZURlY2xhcmF0aW9uLmgKKysrIGIvU291cmNlL1dlYkNvcmUv
TW9kdWxlcy93ZWJncHUvV0hMU0wvQVNUL1dITFNMVmFyaWFibGVEZWNsYXJhdGlvbi5oCkBAIC0z
Miw3ICszMiw2IEBACiAjaW5jbHVkZSAiV0hMU0xRdWFsaWZpZXIuaCIKICNpbmNsdWRlICJXSExT
TFNlbWFudGljLmgiCiAjaW5jbHVkZSAiV0hMU0xUeXBlLmgiCi0jaW5jbHVkZSAiV0hMU0xWYWx1
ZS5oIgogI2luY2x1ZGUgPG1lbW9yeT4KICNpbmNsdWRlIDx3dGYvVW5pcXVlUmVmLmg+CiAjaW5j
bHVkZSA8d3RmL1ZlY3Rvci5oPgpAQCAtNDQsMTEgKzQzLDExIEBAIG5hbWVzcGFjZSBXSExTTCB7
CiAKIG5hbWVzcGFjZSBBU1QgewogCi1jbGFzcyBWYXJpYWJsZURlY2xhcmF0aW9uIDogcHVibGlj
IFZhbHVlIHsKLSAgICB1c2luZyBCYXNlID0gVmFsdWU7CitjbGFzcyBWYXJpYWJsZURlY2xhcmF0
aW9uIGZpbmFsIHsKKy8vIEZpbmFsIGJlY2F1c2Ugd2UgbWFkZSB0aGUgZGVzdHJ1Y3RvciBub24t
dmlydHVhbC4KIHB1YmxpYzoKICAgICBWYXJpYWJsZURlY2xhcmF0aW9uKExleGVyOjpUb2tlbiYm
IG9yaWdpbiwgUXVhbGlmaWVycyYmIHF1YWxpZmllcnMsIE9wdGlvbmFsPFVuaXF1ZVJlZjxVbm5h
bWVkVHlwZT4+JiYgdHlwZSwgU3RyaW5nJiYgbmFtZSwgc3RkOjp1bmlxdWVfcHRyPFNlbWFudGlj
PiYmIHNlbWFudGljLCBzdGQ6OnVuaXF1ZV9wdHI8RXhwcmVzc2lvbj4mJiBpbml0aWFsaXplcikK
LSAgICAgICAgOiBCYXNlKFdURk1vdmUob3JpZ2luKSkKKyAgICAgICAgOiBtX29yaWdpbihXVEZN
b3ZlKG9yaWdpbikpCiAgICAgICAgICwgbV9xdWFsaWZpZXJzKFdURk1vdmUocXVhbGlmaWVycykp
CiAgICAgICAgICwgbV90eXBlKFdURk1vdmUodHlwZSkpCiAgICAgICAgICwgbV9uYW1lKFdURk1v
dmUobmFtZSkpCkBAIC01Nyw3ICs1Niw3IEBAIHB1YmxpYzoKICAgICB7CiAgICAgfQogCi0gICAg
dmlydHVhbCB+VmFyaWFibGVEZWNsYXJhdGlvbigpID0gZGVmYXVsdDsKKyAgICB+VmFyaWFibGVE
ZWNsYXJhdGlvbigpID0gZGVmYXVsdDsKIAogICAgIFZhcmlhYmxlRGVjbGFyYXRpb24oY29uc3Qg
VmFyaWFibGVEZWNsYXJhdGlvbiYpID0gZGVsZXRlOwogICAgIFZhcmlhYmxlRGVjbGFyYXRpb24o
VmFyaWFibGVEZWNsYXJhdGlvbiYmKSA9IGRlZmF1bHQ7CkBAIC04NCw4ICs4MywxMCBAQCBwdWJs
aWM6CiAgICAgICAgIEFTU0VSVChleHByZXNzaW9uKTsKICAgICAgICAgbV9pbml0aWFsaXplciA9
IFdURk1vdmUoZXhwcmVzc2lvbik7CiAgICAgfQorICAgIExleGVyOjpUb2tlbiBvcmlnaW4oKSBj
b25zdCB7IHJldHVybiBtX29yaWdpbjsgfQogCiBwcml2YXRlOgorICAgIExleGVyOjpUb2tlbiBt
X29yaWdpbjsKICAgICBRdWFsaWZpZXJzIG1fcXVhbGlmaWVyczsKICAgICBPcHRpb25hbDxVbmlx
dWVSZWY8VW5uYW1lZFR5cGU+PiBtX3R5cGU7CiAgICAgU3RyaW5nIG1fbmFtZTsKZGlmZiAtLWdp
dCBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvd2ViZ3B1L1dITFNML1dITFNMUGFyc2VyLmggYi9T
b3VyY2UvV2ViQ29yZS9Nb2R1bGVzL3dlYmdwdS9XSExTTC9XSExTTFBhcnNlci5oCmluZGV4IGRk
ODU4ZTYwZGFiODVlOTc4Nzg4YWE4Zjk5YTRjMjA1MDhmZjBkNzIuLmI0NDgyYTQ0NjllZGMxNWU1
MzMxOTA2MzA3NDFmNzY4NzkxZGI3NDcgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL01vZHVs
ZXMvd2ViZ3B1L1dITFNML1dITFNMUGFyc2VyLmgKKysrIGIvU291cmNlL1dlYkNvcmUvTW9kdWxl
cy93ZWJncHUvV0hMU0wvV0hMU0xQYXJzZXIuaApAQCAtODgsNyArODgsNiBAQAogI2luY2x1ZGUg
IldITFNMVHlwZURlZmluaXRpb24uaCIKICNpbmNsdWRlICJXSExTTFR5cGVSZWZlcmVuY2UuaCIK
ICNpbmNsdWRlICJXSExTTFVuc2lnbmVkSW50ZWdlckxpdGVyYWwuaCIKLSNpbmNsdWRlICJXSExT
TFZhbHVlLmgiCiAjaW5jbHVkZSAiV0hMU0xWYXJpYWJsZURlY2xhcmF0aW9uLmgiCiAjaW5jbHVk
ZSAiV0hMU0xWYXJpYWJsZURlY2xhcmF0aW9uc1N0YXRlbWVudC5oIgogI2luY2x1ZGUgIldITFNM
VmFyaWFibGVSZWZlcmVuY2UuaCIKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL1dlYkNvcmUu
eGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvaiBiL1NvdXJjZS9XZWJDb3JlL1dlYkNvcmUueGNvZGVw
cm9qL3Byb2plY3QucGJ4cHJvagppbmRleCA3OTc2MmZmNTYxNDQxOTJiZGI1Y2VmNmY3MDliZjg4
MWNmNDFiYzM2Li5jZGJhYWRhYjZkMzc0NjQ0Y2MzMmI3NzRjMzRkYjQ2MzNiYzYzODNjIDEwMDY0
NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9XZWJDb3JlLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2oK
KysrIGIvU291cmNlL1dlYkNvcmUvV2ViQ29yZS54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qCkBA
IC0xMzI5Niw3ICsxMzI5Niw2IEBACiAJCUMyMUJGNkY5MjFDRDg5QkQwMDIyNzk3OSAvKiBXSExT
TFNlbWFudGljLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5
cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFdITFNMU2VtYW50aWMuaDsgc291cmNlVHJlZSA9
ICI8Z3JvdXA+IjsgfTsKIAkJQzIxQkY2RkEyMUNEODlCRTAwMjI3OTc5IC8qIFdITFNMQmFzZVNl
bWFudGljLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUg
PSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFdITFNMQmFzZVNlbWFudGljLmg7IHNvdXJjZVRyZWUg
PSAiPGdyb3VwPiI7IH07CiAJCUMyMUJGNkZCMjFDRDg5QkUwMDIyNzk3OSAvKiBXSExTTERvV2hp
bGVMb29wLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUg
PSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFdITFNMRG9XaGlsZUxvb3AuaDsgc291cmNlVHJlZSA9
ICI8Z3JvdXA+IjsgfTsKLQkJQzIxQkY2RkMyMUNEODlCRjAwMjI3OTc5IC8qIFdITFNMVmFsdWUu
aCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJj
ZWNvZGUuYy5oOyBwYXRoID0gV0hMU0xWYWx1ZS5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9
OwogCQlDMjFCRjZGRDIxQ0Q4OUMwMDAyMjc5NzkgLyogV0hMU0xGdW5jdGlvbkRlY2xhcmF0aW9u
LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3Vy
Y2Vjb2RlLmMuaDsgcGF0aCA9IFdITFNMRnVuY3Rpb25EZWNsYXJhdGlvbi5oOyBzb3VyY2VUcmVl
ID0gIjxncm91cD4iOyB9OwogCQlDMjFCRjZGRTIxQ0Q4OUMxMDAyMjc5NzkgLyogV0hMU0xTdHJ1
Y3R1cmVFbGVtZW50LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmls
ZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFdITFNMU3RydWN0dXJlRWxlbWVudC5oOyBz
b3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQlDMjFCRjZGRjIxQ0Q4OUMyMDAyMjc5NzkgLyog
V0hMU0xJZlN0YXRlbWVudC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93
bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBXSExTTElmU3RhdGVtZW50Lmg7IHNv
dXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CkBAIC0xNzE3Niw3ICsxNzE3NSw2IEBACiAJCQkJQzIx
QkY3MkIyMUNEODlFODAwMjI3OTc5IC8qIFdITFNMVW5zaWduZWRJbnRlZ2VyTGl0ZXJhbC5oICov
LAogCQkJCTFDQjY5QjNCMjFERjA0MUUwMDZFODQ2QSAvKiBXSExTTFVuc2lnbmVkSW50ZWdlckxp
dGVyYWxUeXBlLmNwcCAqLywKIAkJCQkxQ0I2OUIzNzIxREVENjZCMDA2RTg0NkEgLyogV0hMU0xV
bnNpZ25lZEludGVnZXJMaXRlcmFsVHlwZS5oICovLAotCQkJCUMyMUJGNkZDMjFDRDg5QkYwMDIy
Nzk3OSAvKiBXSExTTFZhbHVlLmggKi8sCiAJCQkJQzIxQkY3MTAyMUNEODlEMDAwMjI3OTc5IC8q
IFdITFNMVmFyaWFibGVEZWNsYXJhdGlvbi5oICovLAogCQkJCUMyMUJGNzE0MjFDRDg5RDMwMDIy
Nzk3OSAvKiBXSExTTFZhcmlhYmxlRGVjbGFyYXRpb25zU3RhdGVtZW50LmggKi8sCiAJCQkJQzIx
QkY3MTMyMUNEODlEMjAwMjI3OTc5IC8qIFdITFNMVmFyaWFibGVSZWZlcmVuY2UuaCAqLywK
</data>

          </attachment>
      

    </bug>

</bugzilla>