<?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>122688</bug_id>
          
          <creation_ts>2013-10-11 21:40:26 -0700</creation_ts>
          <short_desc>FTL OSR exit should perform zero extension on values smaller than 64-bit</short_desc>
          <delta_ts>2013-10-13 13:44:17 -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>528+ (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>122487</blocked>
          <everconfirmed>1</everconfirmed>
          <reporter name="Filip Pizlo">fpizlo</reporter>
          <assigned_to name="Filip Pizlo">fpizlo</assigned_to>
          <cc>atrick</cc>
    
    <cc>barraclough</cc>
    
    <cc>ggaren</cc>
    
    <cc>mark.lam</cc>
    
    <cc>mhahnenberg</cc>
    
    <cc>msaboff</cc>
    
    <cc>nrotem</cc>
    
    <cc>oliver</cc>
    
    <cc>sam</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>939053</commentid>
    <comment_count>0</comment_count>
    <who name="Filip Pizlo">fpizlo</who>
    <bug_when>2013-10-11 21:40:26 -0700</bug_when>
    <thetext>In the DFG we usually make the simplistic assumption that a 32-bit value in a 64-bit register will have zeros on the high bits.  In the few cases where the high bits are non-zero, the DFG sort of tells us this explicitly.

But when working with llvm.webkit.stackmap, it doesn&apos;t work that way.  Consider we might emit LLVM IR like:

 %2 = trunc i64 %1 to i32
 stuff %2
 call @llvm.webkit.stackmap(...., %2)

LLVM may never actually emit a truncation instruction of any kind.  And that&apos;s great - in many cases it won&apos;t be needed, like if %2 is a 32-bit op that ignores the high bits anyway.  Hence LLVM may tell us that %2 is in the register that still had the value from before truncation, and that register may have garbage in the high bits.

This means that on our end, if we want a 32-bit value and we want that value to be zero-extended, we should zero-extend it ourselves.  This is pretty easy and should be cheap, so we should just do it and not make it a requirement that LLVM does it on its end.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>939054</commentid>
    <comment_count>1</comment_count>
      <attachid>214049</attachid>
    <who name="Filip Pizlo">fpizlo</who>
    <bug_when>2013-10-11 21:43:25 -0700</bug_when>
    <thetext>Created attachment 214049
the patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>939055</commentid>
    <comment_count>2</comment_count>
      <attachid>214050</attachid>
    <who name="Filip Pizlo">fpizlo</who>
    <bug_when>2013-10-11 21:45:16 -0700</bug_when>
    <thetext>Created attachment 214050
the patch

Fix changelog.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>939058</commentid>
    <comment_count>3</comment_count>
    <who name="Nadav Rotem">nrotem</who>
    <bug_when>2013-10-11 22:02:29 -0700</bug_when>
    <thetext>Do you need to do anything about Int52s ?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>939059</commentid>
    <comment_count>4</comment_count>
    <who name="Filip Pizlo">fpizlo</who>
    <bug_when>2013-10-11 22:13:27 -0700</bug_when>
    <thetext>(In reply to comment #3)
&gt; Do you need to do anything about Int52s ?

In LLVM IR, int52&apos;s are always expressed as i64&apos;s.  So it would be weird if we had to do anything.

For example if we have an int52 end up in a stackmap it will be like &quot;stackmap(i64 %myInt52)&quot;.  Sure, %myInt52 will either have 12 low zero bits or 12 high sign extension bits, but since I&apos;m claiming to be passing an i64, LLVM ought to preserve those since anything else would probably be a violation of IR rules.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>939307</commentid>
    <comment_count>5</comment_count>
    <who name="Filip Pizlo">fpizlo</who>
    <bug_when>2013-10-13 13:44:17 -0700</bug_when>
    <thetext>Landed in http://trac.webkit.org/changeset/157382</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>214049</attachid>
            <date>2013-10-11 21:43:25 -0700</date>
            <delta_ts>2013-10-11 21:45:16 -0700</delta_ts>
            <desc>the patch</desc>
            <filename>blah.patch</filename>
            <type>text/plain</type>
            <size>3940</size>
            <attacher name="Filip Pizlo">fpizlo</attacher>
            
              <data encoding="base64">SW5kZXg6IFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9DaGFuZ2VMb2cKPT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291
cmNlL0phdmFTY3JpcHRDb3JlL0NoYW5nZUxvZwkocmV2aXNpb24gMTU3MzMwKQorKysgU291cmNl
L0phdmFTY3JpcHRDb3JlL0NoYW5nZUxvZwkod29ya2luZyBjb3B5KQpAQCAtMSwzICsxLDM4IEBA
CisyMDEzLTEwLTExICBGaWxpcCBQaXpsbyAgPGZwaXpsb0BhcHBsZS5jb20+CisKKyAgICAgICAg
RlRMIE9TUiBleGl0IHNob3VsZCBwZXJmb3JtIHplcm8gZXh0ZW5zaW9uIG9uIHZhbHVlcyBzbWFs
bGVyIHRoYW4gNjQtYml0CisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVn
LmNnaT9pZD0xMjI2ODgKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKyAg
ICAgICAgCisgICAgICAgIEluIHRoZSBERkcgd2UgdXN1YWxseSBtYWtlIHRoZSBzaW1wbGlzdGlj
IGFzc3VtcHRpb24gdGhhdCBhIDMyLWJpdCB2YWx1ZSBpbiBhIDY0LWJpdAorICAgICAgICByZWdp
c3RlciB3aWxsIGhhdmUgemVyb3Mgb24gdGhlIGhpZ2ggYml0cy4gIEluIHRoZSBmZXcgY2FzZXMg
d2hlcmUgdGhlIGhpZ2ggYml0cyBhcmUKKyAgICAgICAgbm9uLXplcm8sIHRoZSBERkcgc29ydCBv
ZiB0ZWxscyB1cyB0aGlzIGV4cGxpY2l0bHkuCisKKyAgICAgICAgQnV0IHdoZW4gd29ya2luZyB3
aXRoIGxsdm0ud2Via2l0LnN0YWNrbWFwLCBpdCBkb2Vzbid0IHdvcmsgdGhhdCB3YXkuICBDb25z
aWRlciB3ZSBtaWdodAorICAgICAgICBlbWl0IExMVk0gSVIgbGlrZToKKworICAgICAgICAgICAg
JTIgPSB0cnVuYyBpNjQgJTEgdG8gaTMyCisgICAgICAgICAgICBzdHVmZiAlMgorICAgICAgICAg
ICAgY2FsbCBAbGx2bS53ZWJraXQuc3RhY2ttYXAoLi4uLiwgJTIpCisKKyAgICAgICAgTExWTSBt
YXkgbmV2ZXIgYWN0dWFsbHkgZW1pdCBhIHRydW5jYXRpb24gaW5zdHJ1Y3Rpb24gb2YgYW55IGtp
bmQuICBBbmQgdGhhdCdzIGdyZWF0IC0gaW4KKyAgICAgICAgbWFueSBjYXNlcyBpdCB3b24ndCBi
ZSBuZWVkZWQsIGxpa2UgaWYgJTIgaXMgYSAzMi1iaXQgb3AgdGhhdCBpZ25vcmVzIHRoZSBoaWdo
IGJpdHMKKyAgICAgICAgYW55d2F5LiAgSGVuY2UgTExWTSBtYXkgdGVsbCB1cyB0aGF0ICUyIGlz
IGluIHRoZSByZWdpc3RlciB0aGF0IHN0aWxsIGhhZCB0aGUgdmFsdWUgZnJvbQorICAgICAgICBi
ZWZvcmUgdHJ1bmNhdGlvbiwgYW5kIHRoYXQgcmVnaXN0ZXIgbWF5IGhhdmUgZ2FyYmFnZSBpbiB0
aGUgaGlnaCBiaXRzLgorCisgICAgICAgIFRoaXMgbWVhbnMgdGhhdCBvbiBvdXIgZW5kLCBpZiB3
ZSB3YW50IGEgMzItYml0IHZhbHVlIGFuZCB3ZSB3YW50IHRoYXQgdmFsdWUgdG8gYmUKKyAgICAg
ICAgemVyby1leHRlbmRlZCwgd2Ugc2hvdWxkIHplcm8tZXh0ZW5kIGl0IG91cnNlbHZlcy4gIFRo
aXMgaXMgcHJldHR5IGVhc3kgYW5kIHNob3VsZCBiZQorICAgICAgICBjaGVhcCwgc28gd2Ugc2hv
dWxkIGp1c3QgZG8gaXQgYW5kIG5vdCBtYWtlIGl0IGEgcmVxdWlyZW1lbnQgdGhhdCBMTFZNIGRv
ZXMgaXQgb24gaXRzCisgICAgICAgIGVuZC4KKyAgICAgICAgCisgICAgICAgIFRoaXMgbWFrZXMg
YWxsIHRlc3RzIHBhc3Mgd2l0aCBKU0NfZnRsT1NSRXhpdFVzZXNTdGFja21hcD10cnVlLgorCisg
ICAgICAgICogZnRsL0ZUTE9TUkV4aXRDb21waWxlci5jcHA6CisgICAgICAgIChKU0M6OkZUTDo6
Y29tcGlsZVN0dWJXaXRoT1NSRXhpdFN0YWNrbWFwKToKKyAgICAgICAgKiBmdGwvRlRMVmFsdWVG
b3JtYXQuY3BwOgorICAgICAgICAoSlNDOjpGVEw6OnJlYm94QWNjb3JkaW5nVG9Gb3JtYXQpOgor
CiAyMDEzLTEwLTExICBEYXJpbiBBZGxlciAgPGRhcmluQGFwcGxlLmNvbT4KIAogICAgICAgICBD
aGFuZ2UgbW9zdCBjYWxsIHNpdGVzIHRvIGNhbGwgSUNVIGRpcmVjdGx5IGluc3RlYWQgb2YgdGhy
b3VnaCBXVEY6OlVuaWNvZGUKSW5kZXg6IFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9mdGwvRlRMT1NS
RXhpdENvbXBpbGVyLmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvSmF2YVNjcmlwdENvcmUvZnRs
L0ZUTE9TUkV4aXRDb21waWxlci5jcHAJKHJldmlzaW9uIDE1NzMzMCkKKysrIFNvdXJjZS9KYXZh
U2NyaXB0Q29yZS9mdGwvRlRMT1NSRXhpdENvbXBpbGVyLmNwcAkod29ya2luZyBjb3B5KQpAQCAt
MTcxLDEwICsxNzEsMTEgQEAgc3RhdGljIHZvaWQgY29tcGlsZVN0dWJXaXRoT1NSRXhpdFN0YWNr
bQogICAgIGV4aXQubV9jb2RlID0gRklOQUxJWkVfQ09ERV9JRigKICAgICAgICAgc2hvdWxkU2hv
d0Rpc2Fzc2VtYmx5KCksCiAgICAgICAgIHBhdGNoQnVmZmVyLAotICAgICAgICAoIkZUTCBPU1Ig
ZXhpdCAjJXUgKGJjIyV1LCAlcykgZnJvbSAlcywgd2l0aCBvcGVyYW5kcyA9ICVzIiwKKyAgICAg
ICAgKCJGVEwgT1NSIGV4aXQgIyV1IChiYyMldSwgJXMpIGZyb20gJXMsIHdpdGggb3BlcmFuZHMg
PSAlcywgYW5kIHJlY29yZCA9ICVzIiwKICAgICAgICAgICAgIGV4aXRJRCwgZXhpdC5tX2NvZGVP
cmlnaW4uYnl0ZWNvZGVJbmRleCwKICAgICAgICAgICAgIGV4aXRLaW5kVG9TdHJpbmcoZXhpdC5t
X2tpbmQpLCB0b0NTdHJpbmcoKmNvZGVCbG9jaykuZGF0YSgpLAotICAgICAgICAgICAgdG9DU3Ry
aW5nKGlnbm9yaW5nQ29udGV4dDxEdW1wQ29udGV4dD4oZXhpdC5tX3ZhbHVlcykpLmRhdGEoKSkp
OworICAgICAgICAgICAgdG9DU3RyaW5nKGlnbm9yaW5nQ29udGV4dDxEdW1wQ29udGV4dD4oZXhp
dC5tX3ZhbHVlcykpLmRhdGEoKSwKKyAgICAgICAgICAgIHRvQ1N0cmluZygqcmVjb3JkKS5kYXRh
KCkpKTsKIH0KIAogc3RhdGljIHZvaWQgY29tcGlsZVN0dWJXaXRob3V0T1NSRXhpdFN0YWNrbWFw
KApJbmRleDogU291cmNlL0phdmFTY3JpcHRDb3JlL2Z0bC9GVExWYWx1ZUZvcm1hdC5jcHAKPT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PQotLS0gU291cmNlL0phdmFTY3JpcHRDb3JlL2Z0bC9GVExWYWx1ZUZvcm1hdC5jcHAJ
KHJldmlzaW9uIDE1NzMzMCkKKysrIFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9mdGwvRlRMVmFsdWVG
b3JtYXQuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC0zNywxMSArMzcsMTMgQEAgdm9pZCByZWJveEFj
Y29yZGluZ1RvRm9ybWF0KAogewogICAgIHN3aXRjaCAoZm9ybWF0KSB7CiAgICAgY2FzZSBWYWx1
ZUZvcm1hdEludDMyOiB7CisgICAgICAgIGppdC56ZXJvRXh0ZW5kMzJUb1B0cih2YWx1ZSwgdmFs
dWUpOwogICAgICAgICBqaXQub3I2NChHUFJJbmZvOjp0YWdUeXBlTnVtYmVyUmVnaXN0ZXIsIHZh
bHVlKTsKICAgICAgICAgYnJlYWs7CiAgICAgfQogICAgIAogICAgIGNhc2UgVmFsdWVGb3JtYXRV
SW50MzI6IHsKKyAgICAgICAgaml0Lnplcm9FeHRlbmQzMlRvUHRyKHZhbHVlLCB2YWx1ZSk7CiAg
ICAgICAgIGppdC5tb3ZlRG91YmxlVG82NChGUFJJbmZvOjpmcFJlZ1QwLCBzY3JhdGNoMik7CiAg
ICAgICAgIGppdC5ib3hJbnQ1Mih2YWx1ZSwgdmFsdWUsIHNjcmF0Y2gxLCBGUFJJbmZvOjpmcFJl
Z1QwKTsKICAgICAgICAgaml0Lm1vdmU2NFRvRG91YmxlKHNjcmF0Y2gyLCBGUFJJbmZvOjpmcFJl
Z1QwKTsKQEAgLTY0LDYgKzY2LDcgQEAgdm9pZCByZWJveEFjY29yZGluZ1RvRm9ybWF0KAogICAg
IH0KICAgICAKICAgICBjYXNlIFZhbHVlRm9ybWF0Qm9vbGVhbjogeworICAgICAgICBqaXQuemVy
b0V4dGVuZDMyVG9QdHIodmFsdWUsIHZhbHVlKTsKICAgICAgICAgaml0Lm9yMzIoTWFjcm9Bc3Nl
bWJsZXI6OlRydXN0ZWRJbW0zMihWYWx1ZUZhbHNlKSwgdmFsdWUpOwogICAgICAgICBicmVhazsK
ICAgICB9Cg==
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>214050</attachid>
            <date>2013-10-11 21:45:16 -0700</date>
            <delta_ts>2013-10-13 10:27:44 -0700</delta_ts>
            <desc>the patch</desc>
            <filename>blah.patch</filename>
            <type>text/plain</type>
            <size>3948</size>
            <attacher name="Filip Pizlo">fpizlo</attacher>
            
              <data encoding="base64">SW5kZXg6IFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9DaGFuZ2VMb2cKPT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291
cmNlL0phdmFTY3JpcHRDb3JlL0NoYW5nZUxvZwkocmV2aXNpb24gMTU3MzMwKQorKysgU291cmNl
L0phdmFTY3JpcHRDb3JlL0NoYW5nZUxvZwkod29ya2luZyBjb3B5KQpAQCAtMSwzICsxLDM4IEBA
CisyMDEzLTEwLTExICBGaWxpcCBQaXpsbyAgPGZwaXpsb0BhcHBsZS5jb20+CisKKyAgICAgICAg
RlRMIE9TUiBleGl0IHNob3VsZCBwZXJmb3JtIHplcm8gZXh0ZW5zaW9uIG9uIHZhbHVlcyBzbWFs
bGVyIHRoYW4gNjQtYml0CisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVn
LmNnaT9pZD0xMjI2ODgKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKyAg
ICAgICAgCisgICAgICAgIEluIHRoZSBERkcgd2UgdXN1YWxseSBtYWtlIHRoZSBzaW1wbGlzdGlj
IGFzc3VtcHRpb24gdGhhdCBhIDMyLWJpdCB2YWx1ZSBpbiBhIDY0LWJpdAorICAgICAgICByZWdp
c3RlciB3aWxsIGhhdmUgemVyb3Mgb24gdGhlIGhpZ2ggYml0cy4gIEluIHRoZSBmZXcgY2FzZXMg
d2hlcmUgdGhlIGhpZ2ggYml0cyBhcmUKKyAgICAgICAgbm9uLXplcm8sIHRoZSBERkcgc29ydCBv
ZiB0ZWxscyB1cyB0aGlzIGV4cGxpY2l0bHkuCisKKyAgICAgICAgQnV0IHdoZW4gd29ya2luZyB3
aXRoIGxsdm0ud2Via2l0LnN0YWNrbWFwLCBpdCBkb2Vzbid0IHdvcmsgdGhhdCB3YXkuICBDb25z
aWRlciB3ZSBtaWdodAorICAgICAgICBlbWl0IExMVk0gSVIgbGlrZToKKworICAgICAgICAgICAg
JTIgPSB0cnVuYyBpNjQgJTEgdG8gaTMyCisgICAgICAgICAgICBzdHVmZiAlMgorICAgICAgICAg
ICAgY2FsbCBAbGx2bS53ZWJraXQuc3RhY2ttYXAoLi4uLiwgJTIpCisKKyAgICAgICAgTExWTSBt
YXkgbmV2ZXIgYWN0dWFsbHkgZW1pdCBhIHRydW5jYXRpb24gaW5zdHJ1Y3Rpb24gb2YgYW55IGtp
bmQuICBBbmQgdGhhdCdzIGdyZWF0IC0gaW4KKyAgICAgICAgbWFueSBjYXNlcyBpdCB3b24ndCBi
ZSBuZWVkZWQsIGxpa2UgaWYgJ3N0dWZmICUyJyBpcyBhIDMyLWJpdCBvcCB0aGF0IGlnbm9yZXMg
dGhlIGhpZ2gKKyAgICAgICAgYml0cyBhbnl3YXkuICBIZW5jZSBMTFZNIG1heSB0ZWxsIHVzIHRo
YXQgJTIgaXMgaW4gdGhlIHJlZ2lzdGVyIHRoYXQgc3RpbGwgaGFkIHRoZSB2YWx1ZQorICAgICAg
ICBmcm9tIGJlZm9yZSB0cnVuY2F0aW9uLCBhbmQgdGhhdCByZWdpc3RlciBtYXkgaGF2ZSBnYXJi
YWdlIGluIHRoZSBoaWdoIGJpdHMuCisKKyAgICAgICAgVGhpcyBtZWFucyB0aGF0IG9uIG91ciBl
bmQsIGlmIHdlIHdhbnQgYSAzMi1iaXQgdmFsdWUgYW5kIHdlIHdhbnQgdGhhdCB2YWx1ZSB0byBi
ZQorICAgICAgICB6ZXJvLWV4dGVuZGVkLCB3ZSBzaG91bGQgemVyby1leHRlbmQgaXQgb3Vyc2Vs
dmVzLiAgVGhpcyBpcyBwcmV0dHkgZWFzeSBhbmQgc2hvdWxkIGJlCisgICAgICAgIGNoZWFwLCBz
byB3ZSBzaG91bGQganVzdCBkbyBpdCBhbmQgbm90IG1ha2UgaXQgYSByZXF1aXJlbWVudCB0aGF0
IExMVk0gZG9lcyBpdCBvbiBpdHMKKyAgICAgICAgZW5kLgorICAgICAgICAKKyAgICAgICAgVGhp
cyBtYWtlcyBhbGwgdGVzdHMgcGFzcyB3aXRoIEpTQ19mdGxPU1JFeGl0VXNlc1N0YWNrbWFwPXRy
dWUuCisKKyAgICAgICAgKiBmdGwvRlRMT1NSRXhpdENvbXBpbGVyLmNwcDoKKyAgICAgICAgKEpT
Qzo6RlRMOjpjb21waWxlU3R1YldpdGhPU1JFeGl0U3RhY2ttYXApOgorICAgICAgICAqIGZ0bC9G
VExWYWx1ZUZvcm1hdC5jcHA6CisgICAgICAgIChKU0M6OkZUTDo6cmVib3hBY2NvcmRpbmdUb0Zv
cm1hdCk6CisKIDIwMTMtMTAtMTEgIERhcmluIEFkbGVyICA8ZGFyaW5AYXBwbGUuY29tPgogCiAg
ICAgICAgIENoYW5nZSBtb3N0IGNhbGwgc2l0ZXMgdG8gY2FsbCBJQ1UgZGlyZWN0bHkgaW5zdGVh
ZCBvZiB0aHJvdWdoIFdURjo6VW5pY29kZQpJbmRleDogU291cmNlL0phdmFTY3JpcHRDb3JlL2Z0
bC9GVExPU1JFeGl0Q29tcGlsZXIuY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9KYXZhU2NyaXB0
Q29yZS9mdGwvRlRMT1NSRXhpdENvbXBpbGVyLmNwcAkocmV2aXNpb24gMTU3MzMwKQorKysgU291
cmNlL0phdmFTY3JpcHRDb3JlL2Z0bC9GVExPU1JFeGl0Q29tcGlsZXIuY3BwCSh3b3JraW5nIGNv
cHkpCkBAIC0xNzEsMTAgKzE3MSwxMSBAQCBzdGF0aWMgdm9pZCBjb21waWxlU3R1YldpdGhPU1JF
eGl0U3RhY2ttCiAgICAgZXhpdC5tX2NvZGUgPSBGSU5BTElaRV9DT0RFX0lGKAogICAgICAgICBz
aG91bGRTaG93RGlzYXNzZW1ibHkoKSwKICAgICAgICAgcGF0Y2hCdWZmZXIsCi0gICAgICAgICgi
RlRMIE9TUiBleGl0ICMldSAoYmMjJXUsICVzKSBmcm9tICVzLCB3aXRoIG9wZXJhbmRzID0gJXMi
LAorICAgICAgICAoIkZUTCBPU1IgZXhpdCAjJXUgKGJjIyV1LCAlcykgZnJvbSAlcywgd2l0aCBv
cGVyYW5kcyA9ICVzLCBhbmQgcmVjb3JkID0gJXMiLAogICAgICAgICAgICAgZXhpdElELCBleGl0
Lm1fY29kZU9yaWdpbi5ieXRlY29kZUluZGV4LAogICAgICAgICAgICAgZXhpdEtpbmRUb1N0cmlu
ZyhleGl0Lm1fa2luZCksIHRvQ1N0cmluZygqY29kZUJsb2NrKS5kYXRhKCksCi0gICAgICAgICAg
ICB0b0NTdHJpbmcoaWdub3JpbmdDb250ZXh0PER1bXBDb250ZXh0PihleGl0Lm1fdmFsdWVzKSku
ZGF0YSgpKSk7CisgICAgICAgICAgICB0b0NTdHJpbmcoaWdub3JpbmdDb250ZXh0PER1bXBDb250
ZXh0PihleGl0Lm1fdmFsdWVzKSkuZGF0YSgpLAorICAgICAgICAgICAgdG9DU3RyaW5nKCpyZWNv
cmQpLmRhdGEoKSkpOwogfQogCiBzdGF0aWMgdm9pZCBjb21waWxlU3R1YldpdGhvdXRPU1JFeGl0
U3RhY2ttYXAoCkluZGV4OiBTb3VyY2UvSmF2YVNjcmlwdENvcmUvZnRsL0ZUTFZhbHVlRm9ybWF0
LmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvSmF2YVNjcmlwdENvcmUvZnRsL0ZUTFZhbHVlRm9y
bWF0LmNwcAkocmV2aXNpb24gMTU3MzMwKQorKysgU291cmNlL0phdmFTY3JpcHRDb3JlL2Z0bC9G
VExWYWx1ZUZvcm1hdC5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTM3LDExICszNywxMyBAQCB2b2lk
IHJlYm94QWNjb3JkaW5nVG9Gb3JtYXQoCiB7CiAgICAgc3dpdGNoIChmb3JtYXQpIHsKICAgICBj
YXNlIFZhbHVlRm9ybWF0SW50MzI6IHsKKyAgICAgICAgaml0Lnplcm9FeHRlbmQzMlRvUHRyKHZh
bHVlLCB2YWx1ZSk7CiAgICAgICAgIGppdC5vcjY0KEdQUkluZm86OnRhZ1R5cGVOdW1iZXJSZWdp
c3RlciwgdmFsdWUpOwogICAgICAgICBicmVhazsKICAgICB9CiAgICAgCiAgICAgY2FzZSBWYWx1
ZUZvcm1hdFVJbnQzMjogeworICAgICAgICBqaXQuemVyb0V4dGVuZDMyVG9QdHIodmFsdWUsIHZh
bHVlKTsKICAgICAgICAgaml0Lm1vdmVEb3VibGVUbzY0KEZQUkluZm86OmZwUmVnVDAsIHNjcmF0
Y2gyKTsKICAgICAgICAgaml0LmJveEludDUyKHZhbHVlLCB2YWx1ZSwgc2NyYXRjaDEsIEZQUklu
Zm86OmZwUmVnVDApOwogICAgICAgICBqaXQubW92ZTY0VG9Eb3VibGUoc2NyYXRjaDIsIEZQUklu
Zm86OmZwUmVnVDApOwpAQCAtNjQsNiArNjYsNyBAQCB2b2lkIHJlYm94QWNjb3JkaW5nVG9Gb3Jt
YXQoCiAgICAgfQogICAgIAogICAgIGNhc2UgVmFsdWVGb3JtYXRCb29sZWFuOiB7CisgICAgICAg
IGppdC56ZXJvRXh0ZW5kMzJUb1B0cih2YWx1ZSwgdmFsdWUpOwogICAgICAgICBqaXQub3IzMihN
YWNyb0Fzc2VtYmxlcjo6VHJ1c3RlZEltbTMyKFZhbHVlRmFsc2UpLCB2YWx1ZSk7CiAgICAgICAg
IGJyZWFrOwogICAgIH0K
</data>
<flag name="review"
          id="236532"
          type_id="1"
          status="+"
          setter="barraclough"
    />
          </attachment>
      

    </bug>

</bugzilla>