<?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>80255</bug_id>
          
          <creation_ts>2012-03-05 01:45:21 -0800</creation_ts>
          <short_desc>Optimize for IPP in DirectConvolver::process()</short_desc>
          <delta_ts>2012-03-23 11:14:36 -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>Web Audio</component>
          <version>528+ (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>
          <dependson>75564</dependson>
          
          <everconfirmed>0</everconfirmed>
          <reporter name="Xingnan Wang">xingnan.wang</reporter>
          <assigned_to name="Nobody">webkit-unassigned</assigned_to>
          <cc>crogers</cc>
    
    <cc>webkit.review.bot</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>570520</commentid>
    <comment_count>0</comment_count>
    <who name="Xingnan Wang">xingnan.wang</who>
    <bug_when>2012-03-05 01:45:21 -0800</bug_when>
    <thetext>reverb function in ipp library can be used.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>583975</commentid>
    <comment_count>1</comment_count>
      <attachid>133008</attachid>
    <who name="Xingnan Wang">xingnan.wang</who>
    <bug_when>2012-03-21 04:13:11 -0700</bug_when>
    <thetext>Created attachment 133008
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>583976</commentid>
    <comment_count>2</comment_count>
    <who name="Xingnan Wang">xingnan.wang</who>
    <bug_when>2012-03-21 04:13:43 -0700</bug_when>
    <thetext>(In reply to comment #1)
&gt; Created an attachment (id=133008) [details]
&gt; Patch

Uploaded the patch.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>583977</commentid>
    <comment_count>3</comment_count>
    <who name="Xingnan Wang">xingnan.wang</who>
    <bug_when>2012-03-21 04:14:22 -0700</bug_when>
    <thetext>(In reply to comment #2)
&gt; (In reply to comment #1)
&gt; &gt; Created an attachment (id=133008) [details] [details]
&gt; &gt; Patch
&gt; 
&gt; Uploaded the patch.

Increase ~2X performance by conv() in IPP.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>584344</commentid>
    <comment_count>4</comment_count>
      <attachid>133008</attachid>
    <who name="Chris Rogers">crogers</who>
    <bug_when>2012-03-21 10:53:39 -0700</bug_when>
    <thetext>Comment on attachment 133008
Patch

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

Xingnan, thanks for the patch.  Have you run the convolution layout tests when WEBAUDIO_IPP is enabled?  Also, please make sure to call m_overlayBuffer.zero() in the reset() method...

&gt; Source/WebCore/platform/audio/DirectConvolver.cpp:74
&gt; +    float* outputBuffer = m_inputBuffer.data();

It might make sense to rename this member variable more generally now: m_inputBuffer -&gt; m_buffer
since it&apos;s a bit confusing to see line 74</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>584918</commentid>
    <comment_count>5</comment_count>
      <attachid>133177</attachid>
    <who name="Xingnan Wang">xingnan.wang</who>
    <bug_when>2012-03-21 20:18:10 -0700</bug_when>
    <thetext>Created attachment 133177
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>584919</commentid>
    <comment_count>6</comment_count>
    <who name="Xingnan Wang">xingnan.wang</who>
    <bug_when>2012-03-21 20:20:35 -0700</bug_when>
    <thetext>(In reply to comment #4)
&gt; (From update of attachment 133008 [details])
&gt; View in context: https://bugs.webkit.org/attachment.cgi?id=133008&amp;action=review
&gt; 
&gt; Xingnan, thanks for the patch.  Have you run the convolution layout tests when WEBAUDIO_IPP is enabled?  Also, please make sure to call m_overlayBuffer.zero() in the reset() method...
&gt; 
All layout tests passed when WEBAUDIO_IPP is enabled, both Debug and Release build.
&gt; &gt; Source/WebCore/platform/audio/DirectConvolver.cpp:74
&gt; &gt; +    float* outputBuffer = m_inputBuffer.data();
&gt; 
&gt; It might make sense to rename this member variable more generally now: m_inputBuffer -&gt; m_buffer
&gt; since it&apos;s a bit confusing to see line 74
Done.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>586466</commentid>
    <comment_count>7</comment_count>
      <attachid>133177</attachid>
    <who name="Chris Rogers">crogers</who>
    <bug_when>2012-03-23 10:29:48 -0700</bug_when>
    <thetext>Comment on attachment 133177
Patch

Thanks!</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>586506</commentid>
    <comment_count>8</comment_count>
      <attachid>133177</attachid>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2012-03-23 11:14:32 -0700</bug_when>
    <thetext>Comment on attachment 133177
Patch

Clearing flags on attachment: 133177

Committed r111880: &lt;http://trac.webkit.org/changeset/111880&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>586507</commentid>
    <comment_count>9</comment_count>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2012-03-23 11:14:36 -0700</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>133008</attachid>
            <date>2012-03-21 04:13:11 -0700</date>
            <delta_ts>2012-03-21 20:18:01 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-80255-20120321191626.patch</filename>
            <type>text/plain</type>
            <size>4058</size>
            <attacher name="Xingnan Wang">xingnan.wang</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTExNTE1CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggM2JiZjhkZmZmYzcxZmVm
MTlhYWY5NjlmNDY5ODhlOTgxNDVlY2E5ZC4uMDc3MWVmYTM1YzRlYWYyOTUyNGI0YWM0ZmIzMTcz
MzQxMTA1NGU1YiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDE4IEBACisyMDEyLTAzLTIxICBYaW5n
bmFuIFdhbmcgIDx4aW5nbmFuLndhbmdAaW50ZWwuY29tPgorCisgICAgICAgIE9wdGltaXplIGZv
ciBJUFAgaW4gRGlyZWN0Q29udm9sdmVyOjpwcm9jZXNzKCkKKyAgICAgICAgaHR0cHM6Ly9idWdz
LndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTgwMjU1CisKKyAgICAgICAgUmV2aWV3ZWQgYnkg
Tk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgSW5jcmVhc2UgfjJYIHBlcmZvcm1hbmNlIGJ5IGNv
bnYoKSBpbiBJUFAuCisKKyAgICAgICAgKiBwbGF0Zm9ybS9hdWRpby9EaXJlY3RDb252b2x2ZXIu
Y3BwOgorICAgICAgICAoV2ViQ29yZTo6RGlyZWN0Q29udm9sdmVyOjpEaXJlY3RDb252b2x2ZXIp
OgorICAgICAgICAoV2ViQ29yZTo6RGlyZWN0Q29udm9sdmVyOjpwcm9jZXNzKToKKyAgICAgICAg
KiBwbGF0Zm9ybS9hdWRpby9EaXJlY3RDb252b2x2ZXIuaDoKKyAgICAgICAgKERpcmVjdENvbnZv
bHZlcik6CisKIDIwMTItMDMtMjEgIExldmkgV2VpbnRyYXViICA8bGV2aXdAY2hyb21pdW0ub3Jn
PgogCiAgICAgICAgIFVwZGF0ZSBMYXlvdXRVbml0IHVzYWdlIGluIGRlc2NlbmRhbnRzIG9mIFJl
bmRlclJlcGxhY2VkCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9hdWRpby9E
aXJlY3RDb252b2x2ZXIuY3BwIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vYXVkaW8vRGlyZWN0
Q29udm9sdmVyLmNwcAppbmRleCAzOWYzZTVjM2I3MTFkM2YzMDJjYWM3NzIwOWI5NWY0MjU3MzM3
NzE2Li44YzZlZDNhMTA0YzI2ZjZkNDNiYWMwYmJkNTZkMDY0OWRlYjg5YzA3IDEwMDY0NAotLS0g
YS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9hdWRpby9EaXJlY3RDb252b2x2ZXIuY3BwCisrKyBi
L1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2F1ZGlvL0RpcmVjdENvbnZvbHZlci5jcHAKQEAgLTQw
LDE0ICs0MCwxNSBAQCB1c2luZyBuYW1lc3BhY2UgVmVjdG9yTWF0aDsKICAgICAKIERpcmVjdENv
bnZvbHZlcjo6RGlyZWN0Q29udm9sdmVyKHNpemVfdCBpbnB1dEJsb2NrU2l6ZSkKICAgICA6IG1f
aW5wdXRCbG9ja1NpemUoaW5wdXRCbG9ja1NpemUpCisjaWYgVVNFKFdFQkFVRElPX0lQUCkKKyAg
ICAsIG1fb3ZlcmxheUJ1ZmZlcihpbnB1dEJsb2NrU2l6ZSkKKyNlbmRpZiAvLyBVU0UoV0VCQVVE
SU9fSVBQKQogICAgICwgbV9pbnB1dEJ1ZmZlcihpbnB1dEJsb2NrU2l6ZSAqIDIpCiB7CiB9CiAK
IHZvaWQgRGlyZWN0Q29udm9sdmVyOjpwcm9jZXNzKEF1ZGlvRmxvYXRBcnJheSogY29udm9sdXRp
b25LZXJuZWwsIGNvbnN0IGZsb2F0KiBzb3VyY2VQLCBmbG9hdCogZGVzdFAsIHNpemVfdCBmcmFt
ZXNUb1Byb2Nlc3MpCiB7Ci0gICAgLy8gRklYTUU6IE9wdGltaXplIGZvciBJUFAsIHJldmVyYiBm
dW5jdGlvbiBpbiBJUFAgbGlicmFyeSBjYW4gYmUgdXNlZCBoZXJlLgotICAgIC8vIGh0dHBzOi8v
YnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD04MDI1NQogICAgIC8vIEZJWE1FOiBPcHRp
bWl6ZSBmb3IgREFSV0lOLCBjb252KCkgZnVuY3Rpb24gaW4gQWNjZWxlcmF0ZS5mcmFtZXdvcmsg
Y2FuIGJlIHVzZWQgaGVyZS4KICAgICAvLyBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1
Zy5jZ2k/aWQ9ODAyNTYKIApAQCAtNjMsMTQgKzY0LDI3IEBAIHZvaWQgRGlyZWN0Q29udm9sdmVy
Ojpwcm9jZXNzKEF1ZGlvRmxvYXRBcnJheSogY29udm9sdXRpb25LZXJuZWwsIGNvbnN0IGZsb2F0
KiBzCiAKICAgICBmbG9hdCoga2VybmVsUCA9IGNvbnZvbHV0aW9uS2VybmVsLT5kYXRhKCk7CiAK
LSAgICBmbG9hdCogaW5wdXRQID0gbV9pbnB1dEJ1ZmZlci5kYXRhKCkgKyBtX2lucHV0QmxvY2tT
aXplOwotCiAgICAgLy8gU2FuaXR5IGNoZWNrCiAgICAgYm9vbCBpc0NvcHlHb29kID0ga2VybmVs
UCAmJiBzb3VyY2VQICYmIGRlc3RQICYmIG1faW5wdXRCdWZmZXIuZGF0YSgpOwogICAgIEFTU0VS
VChpc0NvcHlHb29kKTsKICAgICBpZiAoIWlzQ29weUdvb2QpCiAgICAgICAgIHJldHVybjsKIAor
I2lmIFVTRShXRUJBVURJT19JUFApCisgICAgZmxvYXQqIG91dHB1dEJ1ZmZlciA9IG1faW5wdXRC
dWZmZXIuZGF0YSgpOworICAgIGZsb2F0KiBvdmVybGF5QnVmZmVyID0gbV9vdmVybGF5QnVmZmVy
LmRhdGEoKTsKKyAgICBib29sIGlzQ29weUdvb2QyID0gb3ZlcmxheUJ1ZmZlciAmJiBtX292ZXJs
YXlCdWZmZXIuc2l6ZSgpID49IGtlcm5lbFNpemUgJiYgbV9pbnB1dEJ1ZmZlci5zaXplKCkgPT0g
bV9pbnB1dEJsb2NrU2l6ZSAqIDI7CisgICAgQVNTRVJUKGlzQ29weUdvb2QyKTsKKyAgICBpZiAo
IWlzQ29weUdvb2QyKQorICAgICAgICByZXR1cm47CisKKyAgICBpcHBzQ29udl8zMmYoc3RhdGlj
X2Nhc3Q8Y29uc3QgSXBwMzJmKj4oc291cmNlUCksIGZyYW1lc1RvUHJvY2Vzcywgc3RhdGljX2Nh
c3Q8SXBwMzJmKj4oa2VybmVsUCksIGtlcm5lbFNpemUsIHN0YXRpY19jYXN0PElwcDMyZio+KG91
dHB1dEJ1ZmZlcikpOworCisgICAgdmFkZChvdXRwdXRCdWZmZXIsIDEsIG92ZXJsYXlCdWZmZXIs
IDEsIGRlc3RQLCAxLCBmcmFtZXNUb1Byb2Nlc3MpOworICAgIG1lbWNweShvdmVybGF5QnVmZmVy
LCBvdXRwdXRCdWZmZXIgKyBtX2lucHV0QmxvY2tTaXplLCBzaXplb2YoZmxvYXQpICoga2VybmVs
U2l6ZSk7CisjZWxzZQorICAgIGZsb2F0KiBpbnB1dFAgPSBtX2lucHV0QnVmZmVyLmRhdGEoKSAr
IG1faW5wdXRCbG9ja1NpemU7CisKICAgICAvLyBDb3B5IHNhbXBsZXMgdG8gMm5kIGhhbGYgb2Yg
aW5wdXQgYnVmZmVyLgogICAgIG1lbWNweShpbnB1dFAsIHNvdXJjZVAsIHNpemVvZihmbG9hdCkg
KiBmcmFtZXNUb1Byb2Nlc3MpOwogCkBAIC0zNDYsNiArMzYwLDcgQEAgdm9pZCBEaXJlY3RDb252
b2x2ZXI6OnByb2Nlc3MoQXVkaW9GbG9hdEFycmF5KiBjb252b2x1dGlvbktlcm5lbCwgY29uc3Qg
ZmxvYXQqIHMKIAogICAgIC8vIENvcHkgMm5kIGhhbGYgb2YgaW5wdXQgYnVmZmVyIHRvIDFzdCBo
YWxmLgogICAgIG1lbWNweShtX2lucHV0QnVmZmVyLmRhdGEoKSwgaW5wdXRQLCBzaXplb2YoZmxv
YXQpICogZnJhbWVzVG9Qcm9jZXNzKTsKKyNlbmRpZgogfQogCiB2b2lkIERpcmVjdENvbnZvbHZl
cjo6cmVzZXQoKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vYXVkaW8vRGly
ZWN0Q29udm9sdmVyLmggYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9hdWRpby9EaXJlY3RDb252
b2x2ZXIuaAppbmRleCAzMzA5Yzc1MmQ2MDg1ZjRkNmM4MzU5Mjk4N2QxOWNiNTlmY2ZhYzQzLi5m
OGI0ODZiMTNjZjVjYjZjODNjYzU3YzFjZDhhMWZiOWZiNzc5Y2ViIDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvV2ViQ29yZS9wbGF0Zm9ybS9hdWRpby9EaXJlY3RDb252b2x2ZXIuaAorKysgYi9Tb3VyY2Uv
V2ViQ29yZS9wbGF0Zm9ybS9hdWRpby9EaXJlY3RDb252b2x2ZXIuaApAQCAtMzEsNiArMzEsMTAg
QEAKIAogI2luY2x1ZGUgIkF1ZGlvQXJyYXkuaCIKIAorI2lmIFVTRShXRUJBVURJT19JUFApCisj
aW5jbHVkZSA8aXBwcy5oPgorI2VuZGlmIC8vIFVTRShXRUJBVURJT19JUFApCisKIG5hbWVzcGFj
ZSBXZWJDb3JlIHsKIAogY2xhc3MgRGlyZWN0Q29udm9sdmVyIHsKQEAgLTQ0LDYgKzQ4LDkgQEAg
cHVibGljOgogcHJpdmF0ZToKICAgICBzaXplX3QgbV9pbnB1dEJsb2NrU2l6ZTsKIAorI2lmIFVT
RShXRUJBVURJT19JUFApCisgICAgQXVkaW9GbG9hdEFycmF5IG1fb3ZlcmxheUJ1ZmZlcjsKKyNl
bmRpZiAvLyBVU0UoV0VCQVVESU9fSVBQKQogICAgIEF1ZGlvRmxvYXRBcnJheSBtX2lucHV0QnVm
ZmVyOwogfTsKIAo=
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>133177</attachid>
            <date>2012-03-21 20:18:10 -0700</date>
            <delta_ts>2012-03-23 11:14:32 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-80255-20120322112126.patch</filename>
            <type>text/plain</type>
            <size>4431</size>
            <attacher name="Xingnan Wang">xingnan.wang</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTExNjM3CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggMDkxOTdiNDYxZTk2MGNj
ZDBmNDFiNzlhYjhkYWM3NzJkYzUzZGI5NC4uNmY0Mzg1ODAzMzNhZTU1NDY1NjU0YTY5YTU1ZTY0
NjYyMDQ0MjFjOSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDE4IEBACisyMDEyLTAzLTIxICBYaW5n
bmFuIFdhbmcgIDx4aW5nbmFuLndhbmdAaW50ZWwuY29tPgorCisgICAgICAgIE9wdGltaXplIGZv
ciBJUFAgaW4gRGlyZWN0Q29udm9sdmVyOjpwcm9jZXNzKCkKKyAgICAgICAgaHR0cHM6Ly9idWdz
LndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTgwMjU1CisKKyAgICAgICAgUmV2aWV3ZWQgYnkg
Tk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgSW5jcmVhc2UgfjJYIHBlcmZvcm1hbmNlIGJ5IGNv
bnYoKSBpbiBJUFAuCisKKyAgICAgICAgKiBwbGF0Zm9ybS9hdWRpby9EaXJlY3RDb252b2x2ZXIu
Y3BwOgorICAgICAgICAoV2ViQ29yZTo6RGlyZWN0Q29udm9sdmVyOjpEaXJlY3RDb252b2x2ZXIp
OgorICAgICAgICAoV2ViQ29yZTo6RGlyZWN0Q29udm9sdmVyOjpwcm9jZXNzKToKKyAgICAgICAg
KiBwbGF0Zm9ybS9hdWRpby9EaXJlY3RDb252b2x2ZXIuaDoKKyAgICAgICAgKERpcmVjdENvbnZv
bHZlcik6CisKIDIwMTItMDMtMjEgIEJldGggRGFraW4gIDxiZGFraW5AYXBwbGUuY29tPgogCiAg
ICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD04MDMyMgpkaWZm
IC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vYXVkaW8vRGlyZWN0Q29udm9sdmVyLmNw
cCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2F1ZGlvL0RpcmVjdENvbnZvbHZlci5jcHAKaW5k
ZXggMzlmM2U1YzNiNzExZDNmMzAyY2FjNzcyMDliOTVmNDI1NzMzNzcxNi4uZjI5MDZlYmNkMTEw
MGU5NWJjNDhhMDZkY2Q0MzI5OWQ3ODNlYmYzZCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUv
cGxhdGZvcm0vYXVkaW8vRGlyZWN0Q29udm9sdmVyLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9w
bGF0Zm9ybS9hdWRpby9EaXJlY3RDb252b2x2ZXIuY3BwCkBAIC00MCwxNCArNDAsMTUgQEAgdXNp
bmcgbmFtZXNwYWNlIFZlY3Rvck1hdGg7CiAgICAgCiBEaXJlY3RDb252b2x2ZXI6OkRpcmVjdENv
bnZvbHZlcihzaXplX3QgaW5wdXRCbG9ja1NpemUpCiAgICAgOiBtX2lucHV0QmxvY2tTaXplKGlu
cHV0QmxvY2tTaXplKQotICAgICwgbV9pbnB1dEJ1ZmZlcihpbnB1dEJsb2NrU2l6ZSAqIDIpCisj
aWYgVVNFKFdFQkFVRElPX0lQUCkKKyAgICAsIG1fb3ZlcmxheUJ1ZmZlcihpbnB1dEJsb2NrU2l6
ZSkKKyNlbmRpZiAvLyBVU0UoV0VCQVVESU9fSVBQKQorICAgICwgbV9idWZmZXIoaW5wdXRCbG9j
a1NpemUgKiAyKQogewogfQogCiB2b2lkIERpcmVjdENvbnZvbHZlcjo6cHJvY2VzcyhBdWRpb0Zs
b2F0QXJyYXkqIGNvbnZvbHV0aW9uS2VybmVsLCBjb25zdCBmbG9hdCogc291cmNlUCwgZmxvYXQq
IGRlc3RQLCBzaXplX3QgZnJhbWVzVG9Qcm9jZXNzKQogewotICAgIC8vIEZJWE1FOiBPcHRpbWl6
ZSBmb3IgSVBQLCByZXZlcmIgZnVuY3Rpb24gaW4gSVBQIGxpYnJhcnkgY2FuIGJlIHVzZWQgaGVy
ZS4KLSAgICAvLyBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9ODAyNTUK
ICAgICAvLyBGSVhNRTogT3B0aW1pemUgZm9yIERBUldJTiwgY29udigpIGZ1bmN0aW9uIGluIEFj
Y2VsZXJhdGUuZnJhbWV3b3JrIGNhbiBiZSB1c2VkIGhlcmUuCiAgICAgLy8gaHR0cHM6Ly9idWdz
LndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTgwMjU2CiAKQEAgLTYzLDE0ICs2NCwyNyBAQCB2
b2lkIERpcmVjdENvbnZvbHZlcjo6cHJvY2VzcyhBdWRpb0Zsb2F0QXJyYXkqIGNvbnZvbHV0aW9u
S2VybmVsLCBjb25zdCBmbG9hdCogcwogCiAgICAgZmxvYXQqIGtlcm5lbFAgPSBjb252b2x1dGlv
bktlcm5lbC0+ZGF0YSgpOwogCi0gICAgZmxvYXQqIGlucHV0UCA9IG1faW5wdXRCdWZmZXIuZGF0
YSgpICsgbV9pbnB1dEJsb2NrU2l6ZTsKLQogICAgIC8vIFNhbml0eSBjaGVjawotICAgIGJvb2wg
aXNDb3B5R29vZCA9IGtlcm5lbFAgJiYgc291cmNlUCAmJiBkZXN0UCAmJiBtX2lucHV0QnVmZmVy
LmRhdGEoKTsKKyAgICBib29sIGlzQ29weUdvb2QgPSBrZXJuZWxQICYmIHNvdXJjZVAgJiYgZGVz
dFAgJiYgbV9idWZmZXIuZGF0YSgpOwogICAgIEFTU0VSVChpc0NvcHlHb29kKTsKICAgICBpZiAo
IWlzQ29weUdvb2QpCiAgICAgICAgIHJldHVybjsKIAorI2lmIFVTRShXRUJBVURJT19JUFApCisg
ICAgZmxvYXQqIG91dHB1dEJ1ZmZlciA9IG1fYnVmZmVyLmRhdGEoKTsKKyAgICBmbG9hdCogb3Zl
cmxheUJ1ZmZlciA9IG1fb3ZlcmxheUJ1ZmZlci5kYXRhKCk7CisgICAgYm9vbCBpc0NvcHlHb29k
MiA9IG92ZXJsYXlCdWZmZXIgJiYgbV9vdmVybGF5QnVmZmVyLnNpemUoKSA+PSBrZXJuZWxTaXpl
ICYmIG1fYnVmZmVyLnNpemUoKSA9PSBtX2lucHV0QmxvY2tTaXplICogMjsKKyAgICBBU1NFUlQo
aXNDb3B5R29vZDIpOworICAgIGlmICghaXNDb3B5R29vZDIpCisgICAgICAgIHJldHVybjsKKwor
ICAgIGlwcHNDb252XzMyZihzdGF0aWNfY2FzdDxjb25zdCBJcHAzMmYqPihzb3VyY2VQKSwgZnJh
bWVzVG9Qcm9jZXNzLCBzdGF0aWNfY2FzdDxJcHAzMmYqPihrZXJuZWxQKSwga2VybmVsU2l6ZSwg
c3RhdGljX2Nhc3Q8SXBwMzJmKj4ob3V0cHV0QnVmZmVyKSk7CisKKyAgICB2YWRkKG91dHB1dEJ1
ZmZlciwgMSwgb3ZlcmxheUJ1ZmZlciwgMSwgZGVzdFAsIDEsIGZyYW1lc1RvUHJvY2Vzcyk7Cisg
ICAgbWVtY3B5KG92ZXJsYXlCdWZmZXIsIG91dHB1dEJ1ZmZlciArIG1faW5wdXRCbG9ja1NpemUs
IHNpemVvZihmbG9hdCkgKiBrZXJuZWxTaXplKTsKKyNlbHNlCisgICAgZmxvYXQqIGlucHV0UCA9
IG1fYnVmZmVyLmRhdGEoKSArIG1faW5wdXRCbG9ja1NpemU7CisKICAgICAvLyBDb3B5IHNhbXBs
ZXMgdG8gMm5kIGhhbGYgb2YgaW5wdXQgYnVmZmVyLgogICAgIG1lbWNweShpbnB1dFAsIHNvdXJj
ZVAsIHNpemVvZihmbG9hdCkgKiBmcmFtZXNUb1Byb2Nlc3MpOwogCkBAIC0zNDUsMTIgKzM1OSwx
NiBAQCB2b2lkIERpcmVjdENvbnZvbHZlcjo6cHJvY2VzcyhBdWRpb0Zsb2F0QXJyYXkqIGNvbnZv
bHV0aW9uS2VybmVsLCBjb25zdCBmbG9hdCogcwogICAgIH0KIAogICAgIC8vIENvcHkgMm5kIGhh
bGYgb2YgaW5wdXQgYnVmZmVyIHRvIDFzdCBoYWxmLgotICAgIG1lbWNweShtX2lucHV0QnVmZmVy
LmRhdGEoKSwgaW5wdXRQLCBzaXplb2YoZmxvYXQpICogZnJhbWVzVG9Qcm9jZXNzKTsKKyAgICBt
ZW1jcHkobV9idWZmZXIuZGF0YSgpLCBpbnB1dFAsIHNpemVvZihmbG9hdCkgKiBmcmFtZXNUb1By
b2Nlc3MpOworI2VuZGlmCiB9CiAKIHZvaWQgRGlyZWN0Q29udm9sdmVyOjpyZXNldCgpCiB7Ci0g
ICAgbV9pbnB1dEJ1ZmZlci56ZXJvKCk7CisgICAgbV9idWZmZXIuemVybygpOworI2lmIFVTRShX
RUJBVURJT19JUFApCisgICAgbV9vdmVybGF5QnVmZmVyLnplcm8oKTsKKyNlbmRpZiAvLyBVU0Uo
V0VCQVVESU9fSVBQKQogfQogCiB9IC8vIG5hbWVzcGFjZSBXZWJDb3JlCmRpZmYgLS1naXQgYS9T
b3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9hdWRpby9EaXJlY3RDb252b2x2ZXIuaCBiL1NvdXJjZS9X
ZWJDb3JlL3BsYXRmb3JtL2F1ZGlvL0RpcmVjdENvbnZvbHZlci5oCmluZGV4IDMzMDljNzUyZDYw
ODVmNGQ2YzgzNTkyOTg3ZDE5Y2I1OWZjZmFjNDMuLjFjYjhjNjcyZDRhZGIxZjA0NWE3YTU4ZmYx
ZDkwNzg5ODM3N2Y0MTUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2F1ZGlv
L0RpcmVjdENvbnZvbHZlci5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2F1ZGlvL0Rp
cmVjdENvbnZvbHZlci5oCkBAIC0zMSw2ICszMSwxMCBAQAogCiAjaW5jbHVkZSAiQXVkaW9BcnJh
eS5oIgogCisjaWYgVVNFKFdFQkFVRElPX0lQUCkKKyNpbmNsdWRlIDxpcHBzLmg+CisjZW5kaWYg
Ly8gVVNFKFdFQkFVRElPX0lQUCkKKwogbmFtZXNwYWNlIFdlYkNvcmUgewogCiBjbGFzcyBEaXJl
Y3RDb252b2x2ZXIgewpAQCAtNDQsNyArNDgsMTAgQEAgcHVibGljOgogcHJpdmF0ZToKICAgICBz
aXplX3QgbV9pbnB1dEJsb2NrU2l6ZTsKIAotICAgIEF1ZGlvRmxvYXRBcnJheSBtX2lucHV0QnVm
ZmVyOworI2lmIFVTRShXRUJBVURJT19JUFApCisgICAgQXVkaW9GbG9hdEFycmF5IG1fb3Zlcmxh
eUJ1ZmZlcjsKKyNlbmRpZiAvLyBVU0UoV0VCQVVESU9fSVBQKQorICAgIEF1ZGlvRmxvYXRBcnJh
eSBtX2J1ZmZlcjsKIH07CiAKIH0gLy8gbmFtZXNwYWNlIFdlYkNvcmUK
</data>

          </attachment>
      

    </bug>

</bugzilla>