<?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>150656</bug_id>
          
          <creation_ts>2015-10-28 18:45:54 -0700</creation_ts>
          <short_desc>B3::reduceStrength() should do DCE</short_desc>
          <delta_ts>2015-10-28 18:58:26 -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>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>
          
          <blocked>150507</blocked>
          <everconfirmed>1</everconfirmed>
          <reporter name="Filip Pizlo">fpizlo</reporter>
          <assigned_to name="Filip Pizlo">fpizlo</assigned_to>
          <cc>barraclough</cc>
    
    <cc>benjamin</cc>
    
    <cc>commit-queue</cc>
    
    <cc>ggaren</cc>
    
    <cc>mark.lam</cc>
    
    <cc>mhahnenb</cc>
    
    <cc>msaboff</cc>
    
    <cc>nrotem</cc>
    
    <cc>oliver</cc>
    
    <cc>saam</cc>
    
    <cc>sam</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1137413</commentid>
    <comment_count>0</comment_count>
    <who name="Filip Pizlo">fpizlo</who>
    <bug_when>2015-10-28 18:45:54 -0700</bug_when>
    <thetext>Here&apos;s what my rough DCE can do:

B3 after initial, before reduceStrength:
BB#0: ; frequency = nan
    Int64 @0 = ArgumentReg(%rdi)
    Int64 @1 = Const64(0)
    Int64 @2 = Add(@0, @1)
    Int32 @3 = Load(@2, ControlDependent|Reads:Top)
    Int64 @4 = Const64(4)
    Int64 @5 = Add(@0, @4)
    Int32 @6 = Load(@5, ControlDependent|Reads:Top)
    Int32 @7 = Add(@3, @6)
    Void @8 = Return(@7, Terminal)
B3 after reduceStrength, before lowerToAir:
BB#0: ; frequency = nan
    Int64 @0 = ArgumentReg(%rdi)
    Int32 @3 = Load(@0, ControlDependent|Reads:Top)
    Int32 @6 = Load(@0, offset = 4, ControlDependent|Reads:Top)
    Int32 @7 = Add(@3, @6)
    Void @8 = Return(@7, Terminal)</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1137414</commentid>
    <comment_count>1</comment_count>
      <attachid>264284</attachid>
    <who name="Filip Pizlo">fpizlo</who>
    <bug_when>2015-10-28 18:49:07 -0700</bug_when>
    <thetext>Created attachment 264284
the patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1137416</commentid>
    <comment_count>2</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2015-10-28 18:51:05 -0700</bug_when>
    <thetext>Attachment 264284 did not pass style-queue:


ERROR: Source/JavaScriptCore/b3/B3ProcedureInlines.h:39:  More than one command on the same line  [whitespace/newline] [4]
Total errors found: 1 in 7 files


If any of these errors are false positives, please file a bug against check-webkit-style.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1137417</commentid>
    <comment_count>3</comment_count>
    <who name="Filip Pizlo">fpizlo</who>
    <bug_when>2015-10-28 18:53:14 -0700</bug_when>
    <thetext>(In reply to comment #2)
&gt; Attachment 264284 [details] did not pass style-queue:
&gt; 
&gt; 
&gt; ERROR: Source/JavaScriptCore/b3/B3ProcedureInlines.h:39:  More than one
&gt; command on the same line  [whitespace/newline] [4]
&gt; Total errors found: 1 in 7 files
&gt; 
&gt; 
&gt; If any of these errors are false positives, please file a bug against
&gt; check-webkit-style.

Fixed.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1137419</commentid>
    <comment_count>4</comment_count>
      <attachid>264284</attachid>
    <who name="Saam Barati">saam</who>
    <bug_when>2015-10-28 18:56:54 -0700</bug_when>
    <thetext>Comment on attachment 264284
the patch

LGTM</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1137422</commentid>
    <comment_count>5</comment_count>
    <who name="Filip Pizlo">fpizlo</who>
    <bug_when>2015-10-28 18:58:26 -0700</bug_when>
    <thetext>Landed in http://trac.webkit.org/changeset/191718</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>264284</attachid>
            <date>2015-10-28 18:49:07 -0700</date>
            <delta_ts>2015-10-28 18:56:54 -0700</delta_ts>
            <desc>the patch</desc>
            <filename>blah.patch</filename>
            <type>text/plain</type>
            <size>7373</size>
            <attacher name="Filip Pizlo">fpizlo</attacher>
            
              <data encoding="base64">SW5kZXg6IFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9DaGFuZ2VMb2cKPT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291
cmNlL0phdmFTY3JpcHRDb3JlL0NoYW5nZUxvZwkocmV2aXNpb24gMTkxNzE3KQorKysgU291cmNl
L0phdmFTY3JpcHRDb3JlL0NoYW5nZUxvZwkod29ya2luZyBjb3B5KQpAQCAtMSwzICsxLDI2IEBA
CisyMDE1LTEwLTI4ICBGaWxpcCBQaXpsbyAgPGZwaXpsb0BhcHBsZS5jb20+CisKKyAgICAgICAg
QjM6OnJlZHVjZVN0cmVuZ3RoKCkgc2hvdWxkIGRvIERDRQorICAgICAgICBodHRwczovL2J1Z3Mu
d2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTUwNjU2CisKKyAgICAgICAgUmV2aWV3ZWQgYnkg
Tk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgKiBiMy9CM0Jhc2ljQmxvY2suY3BwOgorICAgICAg
ICAoSlNDOjpCMzo6QmFzaWNCbG9jazo6cmVtb3ZlTm9wcyk6IFRoaXMgbm93IGRlbGV0ZXMgdGhl
IHZhbHVlcyBmcm9tIHRoZSBwcm9jZWR1cmUsIHRvIHByZXNlcnZlIHRoZSBpbnZhcmlhbnQgdGhh
dCB2YWx1ZXNJblByb2MgPT0gdmFsdWVzSW5CbG9ja3MuCisgICAgICAgICogYjMvQjNCYXNpY0Js
b2NrLmg6CisgICAgICAgICogYjMvQjNQcm9jZWR1cmUuY3BwOgorICAgICAgICAoSlNDOjpCMzo6
UHJvY2VkdXJlOjpkZWxldGVWYWx1ZSk6IEFkZCBhIHV0aWxpdHkgdXNlZCBieSByZW1vdmVOb3Bz
KCkuCisgICAgICAgIChKU0M6OkIzOjpQcm9jZWR1cmU6OmFkZFZhbHVlSW5kZXgpOiBNYWtlIHN1
cmUgdGhhdCB3ZSByZXVzZSBWYWx1ZSBpbmRpY2VzIHNvIHRoYXQgbV92YWx1ZXMgZG9lc24ndCBn
ZXQgdG9vIHNwYXJzZS4KKyAgICAgICAgKiBiMy9CM1Byb2NlZHVyZS5oOgorICAgICAgICAoSlND
OjpCMzo6UHJvY2VkdXJlOjpWYWx1ZXNDb2xsZWN0aW9uOjppdGVyYXRvcjo6aXRlcmF0b3IpOiBU
ZWFjaCB0aGlzIHRoYXQgbV92YWx1ZXMgY2FuIGJlIHNsaWdodGx5IHNwYXJzZS4KKyAgICAgICAg
KEpTQzo6QjM6OlByb2NlZHVyZTo6VmFsdWVzQ29sbGVjdGlvbjo6aXRlcmF0b3I6Om9wZXJhdG9y
KyspOgorICAgICAgICAoSlNDOjpCMzo6UHJvY2VkdXJlOjpWYWx1ZXNDb2xsZWN0aW9uOjppdGVy
YXRvcjo6b3BlcmF0b3IhPSk6CisgICAgICAgIChKU0M6OkIzOjpQcm9jZWR1cmU6OlZhbHVlc0Nv
bGxlY3Rpb246Oml0ZXJhdG9yOjpmaW5kTmV4dCk6CisgICAgICAgIChKU0M6OkIzOjpQcm9jZWR1
cmU6OnZhbHVlcyk6CisgICAgICAgICogYjMvQjNQcm9jZWR1cmVJbmxpbmVzLmg6CisgICAgICAg
IChKU0M6OkIzOjpQcm9jZWR1cmU6OmFkZCk6IFVzZSBhZGRWYWx1ZUluZGV4KCkgaW5zdGVhZCBv
ZiBhbHdheXMgY3JlYXRpbmcgYSBuZXcgaW5kZXguCisgICAgICAgICogYjMvQjNSZWR1Y2VTdHJl
bmd0aC5jcHA6IEltcGxlbWVudCB0aGUgb3B0aW1pemF0aW9uIHVzaW5nIFVzZUNvdW50cyBhbmQg
RWZmZWN0cy4KKwogMjAxNS0xMC0yOCAgSm9zZXBoIFBlY29yYXJvICA8cGVjb3Jhcm9AYXBwbGUu
Y29tPgogCiAgICAgICAgIFdlYiBJbnNwZWN0b3I6IFJlbW92ZSB1bnVzZWQgLyBkdXBsaWNhdGUg
V2ViU29ja2V0IHRpbWVsaW5lIHJlY29yZHMKSW5kZXg6IFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9i
My9CM0Jhc2ljQmxvY2suY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9i
My9CM0Jhc2ljQmxvY2suY3BwCShyZXZpc2lvbiAxOTE3MTUpCisrKyBTb3VyY2UvSmF2YVNjcmlw
dENvcmUvYjMvQjNCYXNpY0Jsb2NrLmNwcAkod29ya2luZyBjb3B5KQpAQCAtMjksNiArMjksNyBA
QAogI2lmIEVOQUJMRShCM19KSVQpCiAKICNpbmNsdWRlICJCM0Jhc2ljQmxvY2tVdGlscy5oIgor
I2luY2x1ZGUgIkIzUHJvY2VkdXJlLmgiCiAjaW5jbHVkZSAiQjNWYWx1ZS5oIgogI2luY2x1ZGUg
PHd0Zi9MaXN0RHVtcC5oPgogCkBAIC02NiwxMyArNjcsMTUgQEAgYm9vbCBCYXNpY0Jsb2NrOjpy
ZXBsYWNlUHJlZGVjZXNzb3IoQmFzaQogICAgIHJldHVybiBCMzo6cmVwbGFjZVByZWRlY2Vzc29y
KHRoaXMsIGZyb20sIHRvKTsKIH0KIAotdm9pZCBCYXNpY0Jsb2NrOjpyZW1vdmVOb3BzKCkKK3Zv
aWQgQmFzaWNCbG9jazo6cmVtb3ZlTm9wcyhQcm9jZWR1cmUmIHByb2NlZHVyZSkKIHsKICAgICB1
bnNpZ25lZCBzb3VyY2VJbmRleCA9IDA7CiAgICAgdW5zaWduZWQgdGFyZ2V0SW5kZXggPSAwOwog
ICAgIHdoaWxlIChzb3VyY2VJbmRleCA8IHNpemUoKSkgewogICAgICAgICBWYWx1ZSogdmFsdWUg
PSBtX3ZhbHVlc1tzb3VyY2VJbmRleCsrXTsKLSAgICAgICAgaWYgKHZhbHVlLT5vcGNvZGUoKSAh
PSBOb3ApCisgICAgICAgIGlmICh2YWx1ZS0+b3Bjb2RlKCkgPT0gTm9wKQorICAgICAgICAgICAg
cHJvY2VkdXJlLmRlbGV0ZVZhbHVlKHZhbHVlKTsKKyAgICAgICAgZWxzZQogICAgICAgICAgICAg
bV92YWx1ZXNbdGFyZ2V0SW5kZXgrK10gPSB2YWx1ZTsKICAgICB9CiAgICAgbV92YWx1ZXMucmVz
aXplKHRhcmdldEluZGV4KTsKSW5kZXg6IFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9iMy9CM0Jhc2lj
QmxvY2suaAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvSmF2YVNjcmlwdENvcmUvYjMvQjNCYXNpY0Js
b2NrLmgJKHJldmlzaW9uIDE5MTcxNSkKKysrIFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9iMy9CM0Jh
c2ljQmxvY2suaAkod29ya2luZyBjb3B5KQpAQCAtOTUsNyArOTUsNyBAQCBwdWJsaWM6CiAKICAg
ICBkb3VibGUgZnJlcXVlbmN5KCkgY29uc3QgeyByZXR1cm4gbV9mcmVxdWVuY3k7IH0KIAotICAg
IHZvaWQgcmVtb3ZlTm9wcygpOworICAgIHZvaWQgcmVtb3ZlTm9wcyhQcm9jZWR1cmUmKTsKIAog
ICAgIHZvaWQgZHVtcChQcmludFN0cmVhbSYpIGNvbnN0OwogICAgIHZvaWQgZGVlcER1bXAoUHJp
bnRTdHJlYW0mKSBjb25zdDsKSW5kZXg6IFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9iMy9CM1Byb2Nl
ZHVyZS5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL0phdmFTY3JpcHRDb3JlL2IzL0IzUHJvY2Vk
dXJlLmNwcAkocmV2aXNpb24gMTkxNzE1KQorKysgU291cmNlL0phdmFTY3JpcHRDb3JlL2IzL0Iz
UHJvY2VkdXJlLmNwcAkod29ya2luZyBjb3B5KQpAQCAtNzMsNiArNzMsMjQgQEAgVmVjdG9yPEJh
c2ljQmxvY2sqPiBQcm9jZWR1cmU6OmJsb2Nrc0luUAogICAgIHJldHVybiBCMzo6YmxvY2tzSW5Q
b3N0T3JkZXIoYXQoMCkpOwogfQogCit2b2lkIFByb2NlZHVyZTo6ZGVsZXRlVmFsdWUoVmFsdWUq
IHZhbHVlKQoreworICAgIEFTU0VSVChtX3ZhbHVlc1t2YWx1ZS0+aW5kZXgoKV0uZ2V0KCkgPT0g
dmFsdWUpOworICAgIG1fdmFsdWVJbmRleEZyZWVMaXN0LmFwcGVuZCh2YWx1ZS0+aW5kZXgoKSk7
CisgICAgbV92YWx1ZXNbdmFsdWUtPmluZGV4KCldID0gbnVsbHB0cjsKK30KKworc2l6ZV90IFBy
b2NlZHVyZTo6YWRkVmFsdWVJbmRleCgpCit7CisgICAgaWYgKG1fdmFsdWVJbmRleEZyZWVMaXN0
LmlzRW1wdHkoKSkgeworICAgICAgICBzaXplX3QgaW5kZXggPSBtX3ZhbHVlcy5zaXplKCk7Cisg
ICAgICAgIG1fdmFsdWVzLmFwcGVuZChudWxscHRyKTsKKyAgICAgICAgcmV0dXJuIGluZGV4Owor
ICAgIH0KKyAgICAKKyAgICByZXR1cm4gbV92YWx1ZUluZGV4RnJlZUxpc3QudGFrZUxhc3QoKTsK
K30KKwogfSB9IC8vIG5hbWVzcGFjZSBKU0M6OkIzCiAKICNlbmRpZiAvLyBFTkFCTEUoQjNfSklU
KQpJbmRleDogU291cmNlL0phdmFTY3JpcHRDb3JlL2IzL0IzUHJvY2VkdXJlLmgKPT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PQotLS0gU291cmNlL0phdmFTY3JpcHRDb3JlL2IzL0IzUHJvY2VkdXJlLmgJKHJldmlzaW9uIDE5
MTcxNSkKKysrIFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9iMy9CM1Byb2NlZHVyZS5oCSh3b3JraW5n
IGNvcHkpCkBAIC0xMzIsNyArMTMyLDcgQEAgcHVibGljOgogCiAgICAgICAgICAgICBpdGVyYXRv
cihjb25zdCBQcm9jZWR1cmUmIHByb2NlZHVyZSwgdW5zaWduZWQgaW5kZXgpCiAgICAgICAgICAg
ICAgICAgOiBtX3Byb2NlZHVyZSgmcHJvY2VkdXJlKQotICAgICAgICAgICAgICAgICwgbV9pbmRl
eChpbmRleCkKKyAgICAgICAgICAgICAgICAsIG1faW5kZXgoZmluZE5leHQoaW5kZXgpKQogICAg
ICAgICAgICAgewogICAgICAgICAgICAgfQogCkBAIC0xNDMsNyArMTQzLDcgQEAgcHVibGljOgog
CiAgICAgICAgICAgICBpdGVyYXRvciYgb3BlcmF0b3IrKygpCiAgICAgICAgICAgICB7Ci0gICAg
ICAgICAgICAgICAgbV9pbmRleCsrOworICAgICAgICAgICAgICAgIG1faW5kZXggPSBmaW5kTmV4
dChtX2luZGV4ICsgMSk7CiAgICAgICAgICAgICAgICAgcmV0dXJuICp0aGlzOwogICAgICAgICAg
ICAgfQogCkBAIC0xNTksNiArMTU5LDEyIEBAIHB1YmxpYzoKICAgICAgICAgICAgIH0KIAogICAg
ICAgICBwcml2YXRlOgorICAgICAgICAgICAgdW5zaWduZWQgZmluZE5leHQodW5zaWduZWQgaW5k
ZXgpCisgICAgICAgICAgICB7CisgICAgICAgICAgICAgICAgd2hpbGUgKGluZGV4IDwgbV9wcm9j
ZWR1cmUtPm1fdmFsdWVzLnNpemUoKSAmJiAhbV9wcm9jZWR1cmUtPm1fdmFsdWVzW2luZGV4XSkK
KyAgICAgICAgICAgICAgICAgICAgaW5kZXgrKzsKKyAgICAgICAgICAgICAgICByZXR1cm4gaW5k
ZXg7CisgICAgICAgICAgICB9CiAKICAgICAgICAgICAgIGNvbnN0IFByb2NlZHVyZSogbV9wcm9j
ZWR1cmU7CiAgICAgICAgICAgICB1bnNpZ25lZCBtX2luZGV4OwpAQCAtMTc3LDYgKzE4Myw4IEBA
IHB1YmxpYzoKIAogICAgIFZhbHVlc0NvbGxlY3Rpb24gdmFsdWVzKCkgY29uc3QgeyByZXR1cm4g
VmFsdWVzQ29sbGVjdGlvbigqdGhpcyk7IH0KIAorICAgIHZvaWQgZGVsZXRlVmFsdWUoVmFsdWUq
KTsKKwogICAgIC8vIFRoZSBuYW1lIGhhcyB0byBiZSBhIHN0cmluZyBsaXRlcmFsLCBzaW5jZSB3
ZSBkb24ndCBkbyBhbnkgbWVtb3J5IG1hbmFnZW1lbnQgZm9yIHRoZSBzdHJpbmcuCiAgICAgdm9p
ZCBzZXRMYXN0UGhhc2VOYW1lKGNvbnN0IGNoYXIqIG5hbWUpCiAgICAgewpAQCAtMTg2LDggKzE5
NCwxMSBAQCBwdWJsaWM6CiAgICAgY29uc3QgY2hhciogbGFzdFBoYXNlTmFtZSgpIGNvbnN0IHsg
cmV0dXJuIG1fbGFzdFBoYXNlTmFtZTsgfQogCiBwcml2YXRlOgorICAgIEpTX0VYUE9SVF9QUklW
QVRFIHNpemVfdCBhZGRWYWx1ZUluZGV4KCk7CisgICAgCiAgICAgVmVjdG9yPHN0ZDo6dW5pcXVl
X3B0cjxCYXNpY0Jsb2NrPj4gbV9ibG9ja3M7CiAgICAgVmVjdG9yPHN0ZDo6dW5pcXVlX3B0cjxW
YWx1ZT4+IG1fdmFsdWVzOworICAgIFZlY3RvcjxzaXplX3Q+IG1fdmFsdWVJbmRleEZyZWVMaXN0
OwogICAgIGNvbnN0IGNoYXIqIG1fbGFzdFBoYXNlTmFtZTsKIH07CiAKSW5kZXg6IFNvdXJjZS9K
YXZhU2NyaXB0Q29yZS9iMy9CM1Byb2NlZHVyZUlubGluZXMuaAo9PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3Vy
Y2UvSmF2YVNjcmlwdENvcmUvYjMvQjNQcm9jZWR1cmVJbmxpbmVzLmgJKHJldmlzaW9uIDE5MTcx
NSkKKysrIFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9iMy9CM1Byb2NlZHVyZUlubGluZXMuaAkod29y
a2luZyBjb3B5KQpAQCAtMzYsOSArMzYsMTAgQEAgbmFtZXNwYWNlIEpTQyB7IG5hbWVzcGFjZSBC
MyB7CiB0ZW1wbGF0ZTx0eXBlbmFtZSBWYWx1ZVR5cGUsIHR5cGVuYW1lLi4uIEFyZ3VtZW50cz4K
IFZhbHVlVHlwZSogUHJvY2VkdXJlOjphZGQoQXJndW1lbnRzLi4uIGFyZ3VtZW50cykKIHsKLSAg
ICBzdGQ6OnVuaXF1ZV9wdHI8VmFsdWVUeXBlPiB2YWx1ZShuZXcgVmFsdWVUeXBlKG1fdmFsdWVz
LnNpemUoKSwgYXJndW1lbnRzLi4uKSk7CisgICAgc2l6ZV90IGluZGV4ID0gYWRkVmFsdWVJbmRl
eCgpOzsKKyAgICBzdGQ6OnVuaXF1ZV9wdHI8VmFsdWVUeXBlPiB2YWx1ZShuZXcgVmFsdWVUeXBl
KGluZGV4LCBhcmd1bWVudHMuLi4pKTsKICAgICBWYWx1ZVR5cGUqIHJlc3VsdCA9IHZhbHVlLmdl
dCgpOwotICAgIG1fdmFsdWVzLmFwcGVuZChXVEY6Om1vdmUodmFsdWUpKTsKKyAgICBtX3ZhbHVl
c1tpbmRleF0gPSBXVEY6Om1vdmUodmFsdWUpOwogICAgIHJldHVybiByZXN1bHQ7CiB9CiAKSW5k
ZXg6IFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9iMy9CM1JlZHVjZVN0cmVuZ3RoLmNwcAo9PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09Ci0tLSBTb3VyY2UvSmF2YVNjcmlwdENvcmUvYjMvQjNSZWR1Y2VTdHJlbmd0aC5jcHAJKHJl
dmlzaW9uIDE5MTcxNSkKKysrIFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9iMy9CM1JlZHVjZVN0cmVu
Z3RoLmNwcAkod29ya2luZyBjb3B5KQpAQCAtMzIsNiArMzIsNyBAQAogI2luY2x1ZGUgIkIzTWVt
b3J5VmFsdWUuaCIKICNpbmNsdWRlICJCM1BoYXNlU2NvcGUuaCIKICNpbmNsdWRlICJCM1Byb2Nl
ZHVyZUlubGluZXMuaCIKKyNpbmNsdWRlICJCM1VzZUNvdW50cy5oIgogI2luY2x1ZGUgIkIzVmFs
dWVJbmxpbmVzLmgiCiAKIG5hbWVzcGFjZSBKU0MgeyBuYW1lc3BhY2UgQjMgewpAQCAtNTksOCAr
NjAsMTUgQEAgcHVibGljOgogICAgICAgICAgICAgICAgICAgICBwcm9jZXNzKCk7CiAgICAgICAg
ICAgICAgICAgbV9pbnNlcnRpb25TZXQuZXhlY3V0ZShtX2Jsb2NrKTsKIAotICAgICAgICAgICAg
ICAgIC8vIEZJWE1FOiBUaGlzIHNob3VsZCBhbHNvIGRvIERDRS4KLSAgICAgICAgICAgICAgICBi
bG9jay0+cmVtb3ZlTm9wcygpOworICAgICAgICAgICAgICAgIGJsb2NrLT5yZW1vdmVOb3BzKG1f
cHJvYyk7CisgICAgICAgICAgICB9CisKKyAgICAgICAgICAgIFVzZUNvdW50cyB1c2VDb3VudHMo
bV9wcm9jKTsKKyAgICAgICAgICAgIGZvciAoVmFsdWUqIHZhbHVlIDogbV9wcm9jLnZhbHVlcygp
KSB7CisgICAgICAgICAgICAgICAgaWYgKCF1c2VDb3VudHNbdmFsdWVdICYmICF2YWx1ZS0+ZWZm
ZWN0cygpLm11c3RFeGVjdXRlKCkpIHsKKyAgICAgICAgICAgICAgICAgICAgdmFsdWUtPnJlcGxh
Y2VXaXRoTm9wKCk7CisgICAgICAgICAgICAgICAgICAgIG1fY2hhbmdlZCA9IHRydWU7CisgICAg
ICAgICAgICAgICAgfQogICAgICAgICAgICAgfQogICAgICAgICAgICAgCiAgICAgICAgICAgICBy
ZXN1bHQgfD0gbV9jaGFuZ2VkOwo=
</data>
<flag name="review"
          id="289421"
          type_id="1"
          status="+"
          setter="saam"
    />
          </attachment>
      

    </bug>

</bugzilla>