<?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>15711</bug_id>
          
          <creation_ts>2007-10-26 09:52:27 -0700</creation_ts>
          <short_desc>force JSImmediate to be inlined for roughly 1.2% SunSpider speedup</short_desc>
          <delta_ts>2007-10-27 07:59: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>JavaScriptCore</component>
          <version>523.x (Safari 3)</version>
          <rep_platform>Mac</rep_platform>
          <op_sys>OS X 10.4</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>Enhancement</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Darin Adler">darin</reporter>
          <assigned_to name="Darin Adler">darin</assigned_to>
          
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>59550</commentid>
    <comment_count>0</comment_count>
    <who name="Darin Adler">darin</who>
    <bug_when>2007-10-26 09:52:27 -0700</bug_when>
    <thetext>After we added ALWAYS_INLINE elsewhere, various JSImmediate functions weren&apos;t being inlined any more. They&apos;re all intended to always be inlined, so I forced the compiler to do it, and the tools say it&apos;s a 1.2% speedup.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>59551</commentid>
    <comment_count>1</comment_count>
      <attachid>16881</attachid>
    <who name="Darin Adler">darin</who>
    <bug_when>2007-10-26 09:56:00 -0700</bug_when>
    <thetext>Created attachment 16881
patch with change log</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>59589</commentid>
    <comment_count>2</comment_count>
      <attachid>16881</attachid>
    <who name="Maciej Stachowiak">mjs</who>
    <bug_when>2007-10-26 19:05:04 -0700</bug_when>
    <thetext>Comment on attachment 16881
patch with change log

r=me</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>59622</commentid>
    <comment_count>3</comment_count>
    <who name="Darin Adler">darin</who>
    <bug_when>2007-10-27 07:59:36 -0700</bug_when>
    <thetext>Committed revision 27149.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>16881</attachid>
            <date>2007-10-26 09:56:00 -0700</date>
            <delta_ts>2007-10-26 19:05:04 -0700</delta_ts>
            <desc>patch with change log</desc>
            <filename>JSImmediateInlinePatch.txt</filename>
            <type>text/plain</type>
            <size>8679</size>
            <attacher name="Darin Adler">darin</attacher>
            
              <data encoding="base64">SW5kZXg6IEphdmFTY3JpcHRDb3JlL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBKYXZhU2NyaXB0
Q29yZS9DaGFuZ2VMb2cJKHJldmlzaW9uIDI3MTEzKQorKysgSmF2YVNjcmlwdENvcmUvQ2hhbmdl
TG9nCSh3b3JraW5nIGNvcHkpCkBAIC0xLDMgKzEsMTUgQEAKKzIwMDctMTAtMjYgIERhcmluIEFk
bGVyICA8ZGFyaW5AYXBwbGUuY29tPgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09Q
UyEpLgorCisgICAgICAgIC0gaHR0cDovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9
MTU3MTEKKyAgICAgICAgICBmb3JjZSBKU0ltbWVkaWF0ZSB0byBiZSBpbmxpbmVkIGZvciByb3Vn
aGx5IDEuMiUgU3VuU3BpZGVyIHNwZWVkdXAKKworICAgICAgICAqIGtqcy9KU0ltbWVkaWF0ZS5o
OiBQdXQgQUxXQVlTX0lOTElORSBvbiBldmVyeXRoaW5nLgorCisgICAgICAgICoga2pzL29iamVj
dC5oOiBSZW1vdmVkIHJlZHVuZGFudCBpbmNsdWRlcy4KKyAgICAgICAgKiBranMvdmFsdWUuaDog
RGl0dG8uCisKIDIwMDctMTAtMjYgIE1hcmsgUm93ZSAgPG1yb3dlQGFwcGxlLmNvbT4KIAogICAg
ICAgICBXaW5kb3dzIGJ1aWxkIGZpeC4KSW5kZXg6IEphdmFTY3JpcHRDb3JlL2tqcy9KU0ltbWVk
aWF0ZS5oCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT0KLS0tIEphdmFTY3JpcHRDb3JlL2tqcy9KU0ltbWVkaWF0ZS5oCShy
ZXZpc2lvbiAyNzExMikKKysrIEphdmFTY3JpcHRDb3JlL2tqcy9KU0ltbWVkaWF0ZS5oCSh3b3Jr
aW5nIGNvcHkpCkBAIC0yNCw2ICsyNCw3IEBACiAKICNpbmNsdWRlICJKU1R5cGUuaCIKICNpbmNs
dWRlIDx3dGYvQXNzZXJ0aW9ucy5oPgorI2luY2x1ZGUgPHd0Zi9BbHdheXNJbmxpbmUuaD4KICNp
bmNsdWRlIDxzdGRhcmcuaD4KICNpbmNsdWRlIDxzdGRpbnQuaD4KICNpbmNsdWRlIDxzdGRsaWIu
aD4KQEAgLTU5LDIzICs2MCwyMyBAQCBjbGFzcyBVU3RyaW5nOwogCiBjbGFzcyBKU0ltbWVkaWF0
ZSB7CiBwdWJsaWM6Ci0gICAgc3RhdGljIGJvb2wgaXNJbW1lZGlhdGUoY29uc3QgSlNWYWx1ZSog
dikKKyAgICBzdGF0aWMgQUxXQVlTX0lOTElORSBib29sIGlzSW1tZWRpYXRlKGNvbnN0IEpTVmFs
dWUqIHYpCiAgICAgewogICAgICAgICByZXR1cm4gZ2V0VGFnKHYpICE9IDA7CiAgICAgfQogICAg
IAotICAgIHN0YXRpYyBib29sIGlzTnVtYmVyKGNvbnN0IEpTVmFsdWUqIHYpCisgICAgc3RhdGlj
IEFMV0FZU19JTkxJTkUgYm9vbCBpc051bWJlcihjb25zdCBKU1ZhbHVlKiB2KQogICAgIHsKICAg
ICAgICAgcmV0dXJuIChnZXRUYWcodikgPT0gTnVtYmVyVHlwZSk7CiAgICAgfQogICAgIAotICAg
IHN0YXRpYyBib29sIGlzQm9vbGVhbihjb25zdCBKU1ZhbHVlKiB2KQorICAgIHN0YXRpYyBBTFdB
WVNfSU5MSU5FIGJvb2wgaXNCb29sZWFuKGNvbnN0IEpTVmFsdWUqIHYpCiAgICAgewogICAgICAg
ICByZXR1cm4gKGdldFRhZyh2KSA9PSBCb29sZWFuVHlwZSk7CiAgICAgfQogICAgIAogICAgIC8v
IFNpbmNlIHdlIGhhdmUgcm9vbSBmb3Igb25seSAzIHVuaXF1ZSB0YWdzLCBudWxsIGFuZCB1bmRl
ZmluZWQgaGF2ZSB0byBzaGFyZS4KLSAgICBzdGF0aWMgYm9vbCBpc1VuZGVmaW5lZE9yTnVsbChj
b25zdCBKU1ZhbHVlKiB2KQorICAgIHN0YXRpYyBBTFdBWVNfSU5MSU5FIGJvb2wgaXNVbmRlZmlu
ZWRPck51bGwoY29uc3QgSlNWYWx1ZSogdikKICAgICB7CiAgICAgICAgIHJldHVybiAoZ2V0VGFn
KHYpID09IFVuZGVmaW5lZFR5cGUpOwogICAgIH0KQEAgLTEwMiwxNyArMTAzLDE3IEBAIHB1Ymxp
YzoKIHByaXZhdGU6CiAgICAgc3RhdGljIGNvbnN0IHVpbnRwdHJfdCBUYWdNYXNrID0gMzsgLy8g
dHlwZSB0YWdzIGFyZSAyIGJpdHMgbG9uZwogICAgIAotICAgIHN0YXRpYyBKU1ZhbHVlKiB0YWco
dWludHB0cl90IGJpdHMsIHVpbnRwdHJfdCB0YWcpCisgICAgc3RhdGljIEFMV0FZU19JTkxJTkUg
SlNWYWx1ZSogdGFnKHVpbnRwdHJfdCBiaXRzLCB1aW50cHRyX3QgdGFnKQogICAgIHsKICAgICAg
ICAgcmV0dXJuIHJlaW50ZXJwcmV0X2Nhc3Q8SlNWYWx1ZSo+KGJpdHMgfCB0YWcpOwogICAgIH0K
ICAgICAKLSAgICBzdGF0aWMgdWludHB0cl90IHVuVGFnKGNvbnN0IEpTVmFsdWUqIHYpCisgICAg
c3RhdGljIEFMV0FZU19JTkxJTkUgdWludHB0cl90IHVuVGFnKGNvbnN0IEpTVmFsdWUqIHYpCiAg
ICAgewogICAgICAgICByZXR1cm4gcmVpbnRlcnByZXRfY2FzdDx1aW50cHRyX3Q+KHYpICYgflRh
Z01hc2s7CiAgICAgfQogICAgIAotICAgIHN0YXRpYyB1aW50cHRyX3QgZ2V0VGFnKGNvbnN0IEpT
VmFsdWUqIHYpCisgICAgc3RhdGljIEFMV0FZU19JTkxJTkUgdWludHB0cl90IGdldFRhZyhjb25z
dCBKU1ZhbHVlKiB2KQogICAgIHsKICAgICAgICAgcmV0dXJuIHJlaW50ZXJwcmV0X2Nhc3Q8dWlu
dHB0cl90Pih2KSAmIFRhZ01hc2s7CiAgICAgfQpAQCAtMTQ1LDcgKzE0Niw3IEBAIHRlbXBsYXRl
PD4gc3RydWN0IEpTSW1tZWRpYXRlOjpGUEJpdFZhbHUKICAgICBzdGF0aWMgY29uc3QgdWludDMy
X3Qgb25lQXNCaXRzID0gMHgzZjgwMDAwMDsKICAgICBzdGF0aWMgY29uc3QgdWludDMyX3QgemVy
b0FzQml0cyA9IDB4MDsKIAotICAgIHN0YXRpYyBKU1ZhbHVlKiBmcm9tRG91YmxlKGRvdWJsZSBk
KQorICAgIHN0YXRpYyBBTFdBWVNfSU5MSU5FIEpTVmFsdWUqIGZyb21Eb3VibGUoZG91YmxlIGQp
CiAgICAgewogICAgICAgICBGbG9hdFVuaW9uIGZsb2F0VW5pb247CiAgICAgICAgIGZsb2F0VW5p
b24uYXNGbG9hdCA9IHN0YXRpY19jYXN0PGZsb2F0PihkKTsKQEAgLTE2Myw3ICsxNjQsNyBAQCB0
ZW1wbGF0ZTw+IHN0cnVjdCBKU0ltbWVkaWF0ZTo6RlBCaXRWYWx1CiAgICAgICAgIHJldHVybiB0
YWcoZmxvYXRVbmlvbi5hc0JpdHMsIE51bWJlclR5cGUpOwogICAgIH0KIAotICAgIHN0YXRpYyBm
bG9hdCB0b0Zsb2F0KGNvbnN0IEpTVmFsdWUqIHYpCisgICAgc3RhdGljIEFMV0FZU19JTkxJTkUg
ZmxvYXQgdG9GbG9hdChjb25zdCBKU1ZhbHVlKiB2KQogICAgIHsKICAgICAgICAgQVNTRVJUKGlz
SW1tZWRpYXRlKHYpKTsKIApAQCAtMTcyLDEyICsxNzMsMTIgQEAgdGVtcGxhdGU8PiBzdHJ1Y3Qg
SlNJbW1lZGlhdGU6OkZQQml0VmFsdQogICAgICAgICByZXR1cm4gZmxvYXRVbmlvbi5hc0Zsb2F0
OwogICAgIH0KIAotICAgIHN0YXRpYyBkb3VibGUgdG9Eb3VibGUoY29uc3QgSlNWYWx1ZSogdikK
KyAgICBzdGF0aWMgQUxXQVlTX0lOTElORSBkb3VibGUgdG9Eb3VibGUoY29uc3QgSlNWYWx1ZSog
dikKICAgICB7CiAgICAgICAgIHJldHVybiB0b0Zsb2F0KHYpOwogICAgIH0KIAotICAgIHN0YXRp
YyBib29sIGdldFRydW5jYXRlZEludDMyKGNvbnN0IEpTVmFsdWUqIHYsIGludDMyX3QmIGkpCisg
ICAgc3RhdGljIEFMV0FZU19JTkxJTkUgYm9vbCBnZXRUcnVuY2F0ZWRJbnQzMihjb25zdCBKU1Zh
bHVlKiB2LCBpbnQzMl90JiBpKQogICAgIHsKICAgICAgICAgZmxvYXQgZiA9IHRvRmxvYXQodik7
CiAgICAgICAgIGlmICghKGYgPj0gLTIxNDc0ODM2NDguMEYgJiYgZiA8IDIxNDc0ODM2NDguMEYp
KQpAQCAtMTg2LDcgKzE4Nyw3IEBAIHRlbXBsYXRlPD4gc3RydWN0IEpTSW1tZWRpYXRlOjpGUEJp
dFZhbHUKICAgICAgICAgcmV0dXJuIGlzTnVtYmVyKHYpOwogICAgIH0KIAotICAgIHN0YXRpYyBi
b29sIGdldFRydW5jYXRlZFVJbnQzMihjb25zdCBKU1ZhbHVlKiB2LCB1aW50MzJfdCYgaSkKKyAg
ICBzdGF0aWMgQUxXQVlTX0lOTElORSBib29sIGdldFRydW5jYXRlZFVJbnQzMihjb25zdCBKU1Zh
bHVlKiB2LCB1aW50MzJfdCYgaSkKICAgICB7CiAgICAgICAgIGZsb2F0IGYgPSB0b0Zsb2F0KHYp
OwogICAgICAgICBpZiAoIShmID49IDAuMEYgJiYgZiA8IDQyOTQ5NjcyOTYuMEYpKQpAQCAtMjAx
LDcgKzIwMiw3IEBAIHRlbXBsYXRlPD4gc3RydWN0IEpTSW1tZWRpYXRlOjpGUEJpdFZhbHUKICAg
ICBzdGF0aWMgY29uc3QgdWludDY0X3Qgb25lQXNCaXRzID0gMHgzZmYwMDAwMFVMTCA8PCAzMjsK
ICAgICBzdGF0aWMgY29uc3QgdWludDY0X3QgemVyb0FzQml0cyA9IDB4MDsKIAotICAgIHN0YXRp
YyBKU1ZhbHVlKiBmcm9tRG91YmxlKGRvdWJsZSBkKQorICAgIHN0YXRpYyBBTFdBWVNfSU5MSU5F
IEpTVmFsdWUqIGZyb21Eb3VibGUoZG91YmxlIGQpCiAgICAgewogICAgICAgICBEb3VibGVVbmlv
biBkb3VibGVVbmlvbjsKICAgICAgICAgZG91YmxlVW5pb24uYXNEb3VibGUgPSBkOwpAQCAtMjEz
LDcgKzIxNCw3IEBAIHRlbXBsYXRlPD4gc3RydWN0IEpTSW1tZWRpYXRlOjpGUEJpdFZhbHUKICAg
ICAgICAgcmV0dXJuIHRhZyhzdGF0aWNfY2FzdDx1aW50cHRyX3Q+KGRvdWJsZVVuaW9uLmFzQml0
cyksIE51bWJlclR5cGUpOwogICAgIH0KIAotICAgIHN0YXRpYyBkb3VibGUgdG9Eb3VibGUoY29u
c3QgSlNWYWx1ZSogdikKKyAgICBzdGF0aWMgQUxXQVlTX0lOTElORSBkb3VibGUgdG9Eb3VibGUo
Y29uc3QgSlNWYWx1ZSogdikKICAgICB7CiAgICAgICAgIEFTU0VSVChpc0ltbWVkaWF0ZSh2KSk7
CiAKQEAgLTIyMiw3ICsyMjMsNyBAQCB0ZW1wbGF0ZTw+IHN0cnVjdCBKU0ltbWVkaWF0ZTo6RlBC
aXRWYWx1CiAgICAgICAgIHJldHVybiBkb3VibGVVbmlvbi5hc0RvdWJsZTsKICAgICB9CiAKLSAg
ICBzdGF0aWMgYm9vbCBnZXRUcnVuY2F0ZWRJbnQzMihjb25zdCBKU1ZhbHVlKiB2LCBpbnQzMl90
JiBpKQorICAgIHN0YXRpYyBBTFdBWVNfSU5MSU5FIGJvb2wgZ2V0VHJ1bmNhdGVkSW50MzIoY29u
c3QgSlNWYWx1ZSogdiwgaW50MzJfdCYgaSkKICAgICB7CiAgICAgICAgIGRvdWJsZSBkID0gdG9E
b3VibGUodik7CiAgICAgICAgIGlmICghKGQgPj0gLTIxNDc0ODM2NDguMCAmJiBkIDwgMjE0NzQ4
MzY0OC4wKSkKQEAgLTIzMSw3ICsyMzIsNyBAQCB0ZW1wbGF0ZTw+IHN0cnVjdCBKU0ltbWVkaWF0
ZTo6RlBCaXRWYWx1CiAgICAgICAgIHJldHVybiBpc051bWJlcih2KTsKICAgICB9CiAKLSAgICBz
dGF0aWMgYm9vbCBnZXRUcnVuY2F0ZWRVSW50MzIoY29uc3QgSlNWYWx1ZSogdiwgdWludDMyX3Qm
IGkpCisgICAgc3RhdGljIEFMV0FZU19JTkxJTkUgYm9vbCBnZXRUcnVuY2F0ZWRVSW50MzIoY29u
c3QgSlNWYWx1ZSogdiwgdWludDMyX3QmIGkpCiAgICAgewogICAgICAgICBkb3VibGUgZCA9IHRv
RG91YmxlKHYpOwogICAgICAgICBpZiAoIShkID49IDAuMCAmJiBkIDwgNDI5NDk2NzI5Ni4wKSkK
QEAgLTI0MSwxMyArMjQyLDEzIEBAIHRlbXBsYXRlPD4gc3RydWN0IEpTSW1tZWRpYXRlOjpGUEJp
dFZhbHUKICAgICB9CiB9OwogCi1pbmxpbmUgSlNWYWx1ZSogSlNJbW1lZGlhdGU6OnRydWVJbW1l
ZGlhdGUoKSB7IHJldHVybiB0YWcoRlBCaXRWYWx1ZXM8aXMzMmJpdCwgaXM2NGJpdD46Om9uZUFz
Qml0cywgQm9vbGVhblR5cGUpOyB9Ci1pbmxpbmUgSlNWYWx1ZSogSlNJbW1lZGlhdGU6OmZhbHNl
SW1tZWRpYXRlKCkgeyByZXR1cm4gdGFnKEZQQml0VmFsdWVzPGlzMzJiaXQsIGlzNjRiaXQ+Ojp6
ZXJvQXNCaXRzLCBCb29sZWFuVHlwZSk7IH0KLWlubGluZSBKU1ZhbHVlKiBKU0ltbWVkaWF0ZTo6
TmFOSW1tZWRpYXRlKCkgeyByZXR1cm4gdGFnKEZQQml0VmFsdWVzPGlzMzJiaXQsIGlzNjRiaXQ+
OjpuYW5Bc0JpdHMsIE51bWJlclR5cGUpOyB9Ci1pbmxpbmUgSlNWYWx1ZSogSlNJbW1lZGlhdGU6
OnVuZGVmaW5lZEltbWVkaWF0ZSgpIHsgcmV0dXJuIHRhZyhGUEJpdFZhbHVlczxpczMyYml0LCBp
czY0Yml0Pjo6bmFuQXNCaXRzLCBVbmRlZmluZWRUeXBlKTsgfQotaW5saW5lIEpTVmFsdWUqIEpT
SW1tZWRpYXRlOjpudWxsSW1tZWRpYXRlKCkgeyByZXR1cm4gdGFnKEZQQml0VmFsdWVzPGlzMzJi
aXQsIGlzNjRiaXQ+Ojp6ZXJvQXNCaXRzLCBVbmRlZmluZWRUeXBlKTsgfQorQUxXQVlTX0lOTElO
RSBKU1ZhbHVlKiBKU0ltbWVkaWF0ZTo6dHJ1ZUltbWVkaWF0ZSgpIHsgcmV0dXJuIHRhZyhGUEJp
dFZhbHVlczxpczMyYml0LCBpczY0Yml0Pjo6b25lQXNCaXRzLCBCb29sZWFuVHlwZSk7IH0KK0FM
V0FZU19JTkxJTkUgSlNWYWx1ZSogSlNJbW1lZGlhdGU6OmZhbHNlSW1tZWRpYXRlKCkgeyByZXR1
cm4gdGFnKEZQQml0VmFsdWVzPGlzMzJiaXQsIGlzNjRiaXQ+Ojp6ZXJvQXNCaXRzLCBCb29sZWFu
VHlwZSk7IH0KK0FMV0FZU19JTkxJTkUgSlNWYWx1ZSogSlNJbW1lZGlhdGU6Ok5hTkltbWVkaWF0
ZSgpIHsgcmV0dXJuIHRhZyhGUEJpdFZhbHVlczxpczMyYml0LCBpczY0Yml0Pjo6bmFuQXNCaXRz
LCBOdW1iZXJUeXBlKTsgfQorQUxXQVlTX0lOTElORSBKU1ZhbHVlKiBKU0ltbWVkaWF0ZTo6dW5k
ZWZpbmVkSW1tZWRpYXRlKCkgeyByZXR1cm4gdGFnKEZQQml0VmFsdWVzPGlzMzJiaXQsIGlzNjRi
aXQ+OjpuYW5Bc0JpdHMsIFVuZGVmaW5lZFR5cGUpOyB9CitBTFdBWVNfSU5MSU5FIEpTVmFsdWUq
IEpTSW1tZWRpYXRlOjpudWxsSW1tZWRpYXRlKCkgeyByZXR1cm4gdGFnKEZQQml0VmFsdWVzPGlz
MzJiaXQsIGlzNjRiaXQ+Ojp6ZXJvQXNCaXRzLCBVbmRlZmluZWRUeXBlKTsgfQogCi1pbmxpbmUg
Ym9vbCBKU0ltbWVkaWF0ZTo6dG9Cb29sZWFuKGNvbnN0IEpTVmFsdWUqIHYpCitBTFdBWVNfSU5M
SU5FIGJvb2wgSlNJbW1lZGlhdGU6OnRvQm9vbGVhbihjb25zdCBKU1ZhbHVlKiB2KQogewogICAg
IEFTU0VSVChpc0ltbWVkaWF0ZSh2KSk7CiAKQEAgLTI1OCwyOSArMjU5LDI5IEBAIGlubGluZSBi
b29sIEpTSW1tZWRpYXRlOjp0b0Jvb2xlYW4oY29uc3QKICAgICByZXR1cm4gYml0cyAhPSBGUEJp
dFZhbHVlczxpczMyYml0LCBpczY0Yml0Pjo6bmFuQXNCaXRzOwogfQogCi1pbmxpbmUgSlNWYWx1
ZSogSlNJbW1lZGlhdGU6OmZyb21Eb3VibGUoZG91YmxlIGQpCitBTFdBWVNfSU5MSU5FIEpTVmFs
dWUqIEpTSW1tZWRpYXRlOjpmcm9tRG91YmxlKGRvdWJsZSBkKQogewogICAgIHJldHVybiBGUEJp
dFZhbHVlczxpczMyYml0LCBpczY0Yml0Pjo6ZnJvbURvdWJsZShkKTsKIH0KIAotaW5saW5lIGRv
dWJsZSBKU0ltbWVkaWF0ZTo6dG9Eb3VibGUoY29uc3QgSlNWYWx1ZSogdikKK0FMV0FZU19JTkxJ
TkUgZG91YmxlIEpTSW1tZWRpYXRlOjp0b0RvdWJsZShjb25zdCBKU1ZhbHVlKiB2KQogewogICAg
IHJldHVybiBGUEJpdFZhbHVlczxpczMyYml0LCBpczY0Yml0Pjo6dG9Eb3VibGUodik7CiB9CiAK
LWlubGluZSBib29sIEpTSW1tZWRpYXRlOjpnZXRVSW50MzIoY29uc3QgSlNWYWx1ZSogdiwgdWlu
dDMyX3QmIGkpCitBTFdBWVNfSU5MSU5FIGJvb2wgSlNJbW1lZGlhdGU6OmdldFVJbnQzMihjb25z
dCBKU1ZhbHVlKiB2LCB1aW50MzJfdCYgaSkKIHsKICAgICBkb3VibGUgZCA9IHRvRG91YmxlKHYp
OwogICAgIGkgPSBzdGF0aWNfY2FzdDx1aW50MzJfdD4oZCk7CiAgICAgcmV0dXJuIGlzTnVtYmVy
KHYpICYgKGkgPT0gZCk7CiB9CiAKLWlubGluZSBib29sIEpTSW1tZWRpYXRlOjpnZXRUcnVuY2F0
ZWRJbnQzMihjb25zdCBKU1ZhbHVlKiB2LCBpbnQzMl90JiBpKQorQUxXQVlTX0lOTElORSBib29s
IEpTSW1tZWRpYXRlOjpnZXRUcnVuY2F0ZWRJbnQzMihjb25zdCBKU1ZhbHVlKiB2LCBpbnQzMl90
JiBpKQogewogICAgIHJldHVybiBGUEJpdFZhbHVlczxpczMyYml0LCBpczY0Yml0Pjo6Z2V0VHJ1
bmNhdGVkSW50MzIodiwgaSk7CiB9CiAKLWlubGluZSBib29sIEpTSW1tZWRpYXRlOjpnZXRUcnVu
Y2F0ZWRVSW50MzIoY29uc3QgSlNWYWx1ZSogdiwgdWludDMyX3QmIGkpCitBTFdBWVNfSU5MSU5F
IGJvb2wgSlNJbW1lZGlhdGU6OmdldFRydW5jYXRlZFVJbnQzMihjb25zdCBKU1ZhbHVlKiB2LCB1
aW50MzJfdCYgaSkKIHsKICAgICByZXR1cm4gRlBCaXRWYWx1ZXM8aXMzMmJpdCwgaXM2NGJpdD46
OmdldFRydW5jYXRlZFVJbnQzMih2LCBpKTsKIH0KSW5kZXg6IEphdmFTY3JpcHRDb3JlL2tqcy9v
YmplY3QuaAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09Ci0tLSBKYXZhU2NyaXB0Q29yZS9ranMvb2JqZWN0LmgJKHJldmlz
aW9uIDI3MTEyKQorKysgSmF2YVNjcmlwdENvcmUva2pzL29iamVjdC5oCSh3b3JraW5nIGNvcHkp
CkBAIC0zMSw4ICszMSw2IEBACiAjaW5jbHVkZSAicHJvcGVydHlfbWFwLmgiCiAjaW5jbHVkZSAi
cHJvcGVydHlfc2xvdC5oIgogI2luY2x1ZGUgInNjb3BlX2NoYWluLmgiCi0jaW5jbHVkZSA8d3Rm
L0Fsd2F5c0lubGluZS5oPgotI2luY2x1ZGUgPHd0Zi9Bc3NlcnRpb25zLmg+CiAKIG5hbWVzcGFj
ZSBLSlMgewogCkluZGV4OiBKYXZhU2NyaXB0Q29yZS9ranMvdmFsdWUuaAo9PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0t
LSBKYXZhU2NyaXB0Q29yZS9ranMvdmFsdWUuaAkocmV2aXNpb24gMjcxMTIpCisrKyBKYXZhU2Ny
aXB0Q29yZS9ranMvdmFsdWUuaAkod29ya2luZyBjb3B5KQpAQCAtMjcsNyArMjcsNiBAQAogI2lu
Y2x1ZGUgImNvbGxlY3Rvci5oIgogI2luY2x1ZGUgInVzdHJpbmcuaCIKICNpbmNsdWRlIDxzdGRk
ZWYuaD4gLy8gZm9yIHNpemVfdAotI2luY2x1ZGUgPHd0Zi9BbHdheXNJbmxpbmUuaD4KIAogbmFt
ZXNwYWNlIEtKUyB7CiAK
</data>
<flag name="review"
          id="7151"
          type_id="1"
          status="+"
          setter="mjs"
    />
          </attachment>
      

    </bug>

</bugzilla>