<?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>20816</bug_id>
          
          <creation_ts>2008-09-12 16:49:51 -0700</creation_ts>
          <short_desc>op_lesseq should be optimized</short_desc>
          <delta_ts>2008-09-14 16:01:54 -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>20813</blocked>
          <everconfirmed>1</everconfirmed>
          <reporter name="Cameron Zwarich (cpst)">zwarich</reporter>
          <assigned_to name="Cameron Zwarich (cpst)">zwarich</assigned_to>
          
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>90990</commentid>
    <comment_count>0</comment_count>
    <who name="Cameron Zwarich (cpst)">zwarich</who>
    <bug_when>2008-09-12 16:49:51 -0700</bug_when>
    <thetext>I had tried to create a loop_if_lesseq opcode during the Summer of Code, but it wasn&apos;t enough of a win on any of the existing tests (it is a small-win on some of the ones that are already fast). However, the V8 Crypto benchmark benefits greatly from this, so we should consider doing it again, especially since we get an additional gain by making native code for this opcode.

I have a patch to do this, and it gives about a 10% speedup on the Crypto benchmark, but it gives an inexplicable slowdown on Richards, with most of the additional time spent in JSFunction::getCallData(). I am hoping that the coming improvements to function calls will remove this slowdown, and I&apos;ll be able to land it. I&apos;ll post the patch here so other people can try it out or see if I am doing something wrong.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>91017</commentid>
    <comment_count>1</comment_count>
      <attachid>23387</attachid>
    <who name="Cameron Zwarich (cpst)">zwarich</who>
    <bug_when>2008-09-12 19:45:34 -0700</bug_when>
    <thetext>Created attachment 23387
Patch that is a slowdown, but shouldn&apos;t be</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>91141</commentid>
    <comment_count>2</comment_count>
      <attachid>23418</attachid>
    <who name="Cameron Zwarich (cpst)">zwarich</who>
    <bug_when>2008-09-14 15:15:24 -0700</bug_when>
    <thetext>Created attachment 23418
Proposed patch with ChangeLog

This is a 9.4% speedup on the Crypto benchmark. It is a random slowdown on Richards, but Maciej says that he is willing to overlook the random (and cyclic) slowdown issues with Richards for now.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>91146</commentid>
    <comment_count>3</comment_count>
    <who name="Cameron Zwarich (cpst)">zwarich</who>
    <bug_when>2008-09-14 16:01:54 -0700</bug_when>
    <thetext>Landed in r36408.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>23387</attachid>
            <date>2008-09-12 19:45:34 -0700</date>
            <delta_ts>2008-09-14 15:15:24 -0700</delta_ts>
            <desc>Patch that is a slowdown, but shouldn&apos;t be</desc>
            <filename>loop_if_lesseq.diff</filename>
            <type>text/plain</type>
            <size>7497</size>
            <attacher name="Cameron Zwarich (cpst)">zwarich</attacher>
            
              <data encoding="base64">SW5kZXg6IFZNL0NUSS5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gVk0vQ1RJLmNwcAkocmV2aXNpb24gMzYz
MjcpCisrKyBWTS9DVEkuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC01NzAsNiArNTcwLDI3IEBAIHZv
aWQgQ1RJOjpwcml2YXRlQ29tcGlsZU1haW5QYXNzKCkKICAgICAgICAgICAgIGkgKz0gNDsKICAg
ICAgICAgICAgIGJyZWFrOwogICAgICAgICB9CisgICAgICAgIGNhc2Ugb3BfbG9vcF9pZl9sZXNz
ZXE6IHsKKyAgICAgICAgICAgIGVtaXRTbG93U2NyaXB0Q2hlY2soaSk7CisKKyAgICAgICAgICAg
IHVuc2lnbmVkIHRhcmdldCA9IGluc3RydWN0aW9uW2kgKyAzXS51Lm9wZXJhbmQ7CisgICAgICAg
ICAgICBKU1ZhbHVlKiBzcmMyaW1tID0gZ2V0Q29uc3RhbnRJbW1lZGlhdGVOdW1lcmljQXJnKGlu
c3RydWN0aW9uW2kgKyAyXS51Lm9wZXJhbmQpOworICAgICAgICAgICAgaWYgKHNyYzJpbW0pIHsK
KyAgICAgICAgICAgICAgICBlbWl0R2V0QXJnKGluc3RydWN0aW9uW2kgKyAxXS51Lm9wZXJhbmQs
IFg4Njo6ZWR4KTsKKyAgICAgICAgICAgICAgICBlbWl0SnVtcFNsb3dDYXNlSWZOb3RJbW0oWDg2
OjplZHgsIGkpOworICAgICAgICAgICAgICAgIG1faml0LmNtcGxfaTMycihyZWludGVycHJldF9j
YXN0PHVuc2lnbmVkPihzcmMyaW1tKSwgWDg2OjplZHgpOworICAgICAgICAgICAgICAgIG1fam1w
VGFibGUuYXBwZW5kKEptcFRhYmxlKG1faml0LmVtaXRVbmxpbmtlZEpsZSgpLCBpICsgMyArIHRh
cmdldCkpOworICAgICAgICAgICAgfSBlbHNlIHsKKyAgICAgICAgICAgICAgICBlbWl0R2V0QXJn
KGluc3RydWN0aW9uW2kgKyAxXS51Lm9wZXJhbmQsIFg4Njo6ZWF4KTsKKyAgICAgICAgICAgICAg
ICBlbWl0R2V0QXJnKGluc3RydWN0aW9uW2kgKyAyXS51Lm9wZXJhbmQsIFg4Njo6ZWR4KTsKKyAg
ICAgICAgICAgICAgICBlbWl0SnVtcFNsb3dDYXNlSWZOb3RJbW0oWDg2OjplYXgsIGkpOworICAg
ICAgICAgICAgICAgIGVtaXRKdW1wU2xvd0Nhc2VJZk5vdEltbShYODY6OmVkeCwgaSk7CisgICAg
ICAgICAgICAgICAgbV9qaXQuY21wbF9ycihYODY6OmVkeCwgWDg2OjplYXgpOworICAgICAgICAg
ICAgICAgIG1fam1wVGFibGUuYXBwZW5kKEptcFRhYmxlKG1faml0LmVtaXRVbmxpbmtlZEpsZSgp
LCBpICsgMyArIHRhcmdldCkpOworICAgICAgICAgICAgfQorICAgICAgICAgICAgaSArPSA0Owor
ICAgICAgICAgICAgYnJlYWs7CisgICAgICAgIH0KICAgICAgICAgY2FzZSBvcF9uZXdfb2JqZWN0
OiB7CiAgICAgICAgICAgICBlbWl0Q2FsbChpLCBNYWNoaW5lOjpjdGlfb3BfbmV3X29iamVjdCk7
CiAgICAgICAgICAgICBlbWl0UHV0UmVzdWx0KGluc3RydWN0aW9uW2kgKyAxXS51Lm9wZXJhbmQp
OwpAQCAtMTQ0NCw2ICsxNDY1LDMwIEBAIHZvaWQgQ1RJOjpwcml2YXRlQ29tcGlsZVNsb3dDYXNl
cygpCiAgICAgICAgICAgICBpICs9IDQ7CiAgICAgICAgICAgICBicmVhazsKICAgICAgICAgfQor
ICAgICAgICBjYXNlIG9wX2xvb3BfaWZfbGVzc2VxOiB7CisgICAgICAgICAgICBlbWl0U2xvd1Nj
cmlwdENoZWNrKGkpOworCisgICAgICAgICAgICB1bnNpZ25lZCB0YXJnZXQgPSBpbnN0cnVjdGlv
bltpICsgM10udS5vcGVyYW5kOworICAgICAgICAgICAgSlNWYWx1ZSogc3JjMmltbSA9IGdldENv
bnN0YW50SW1tZWRpYXRlTnVtZXJpY0FyZyhpbnN0cnVjdGlvbltpICsgMl0udS5vcGVyYW5kKTsK
KyAgICAgICAgICAgIGlmIChzcmMyaW1tKSB7CisgICAgICAgICAgICAgICAgbV9qaXQubGluayhp
dGVyLT5mcm9tLCBtX2ppdC5sYWJlbCgpKTsKKyAgICAgICAgICAgICAgICBlbWl0UHV0QXJnKFg4
Njo6ZWR4LCAwKTsKKyAgICAgICAgICAgICAgICBlbWl0R2V0UHV0QXJnKGluc3RydWN0aW9uW2kg
KyAyXS51Lm9wZXJhbmQsIDQsIFg4Njo6ZWN4KTsKKyAgICAgICAgICAgICAgICBlbWl0Q2FsbChp
LCBNYWNoaW5lOjpjdGlfb3BfbG9vcF9pZl9sZXNzZXEpOworICAgICAgICAgICAgICAgIG1faml0
LnRlc3RsX3JyKFg4Njo6ZWF4LCBYODY6OmVheCk7CisgICAgICAgICAgICAgICAgbV9qaXQubGlu
ayhtX2ppdC5lbWl0VW5saW5rZWRKbmUoKSwgbV9sYWJlbHNbaSArIDMgKyB0YXJnZXRdKTsKKyAg
ICAgICAgICAgIH0gZWxzZSB7CisgICAgICAgICAgICAgICAgbV9qaXQubGluayhpdGVyLT5mcm9t
LCBtX2ppdC5sYWJlbCgpKTsKKyAgICAgICAgICAgICAgICBtX2ppdC5saW5rKCgrK2l0ZXIpLT5m
cm9tLCBtX2ppdC5sYWJlbCgpKTsKKyAgICAgICAgICAgICAgICBlbWl0UHV0QXJnKFg4Njo6ZWF4
LCAwKTsKKyAgICAgICAgICAgICAgICBlbWl0UHV0QXJnKFg4Njo6ZWR4LCA0KTsKKyAgICAgICAg
ICAgICAgICBlbWl0Q2FsbChpLCBNYWNoaW5lOjpjdGlfb3BfbG9vcF9pZl9sZXNzZXEpOworICAg
ICAgICAgICAgICAgIG1faml0LnRlc3RsX3JyKFg4Njo6ZWF4LCBYODY6OmVheCk7CisgICAgICAg
ICAgICAgICAgbV9qaXQubGluayhtX2ppdC5lbWl0VW5saW5rZWRKbmUoKSwgbV9sYWJlbHNbaSAr
IDMgKyB0YXJnZXRdKTsKKyAgICAgICAgICAgIH0KKyAgICAgICAgICAgIGkgKz0gNDsKKyAgICAg
ICAgICAgIGJyZWFrOworICAgICAgICB9CiAgICAgICAgIGNhc2Ugb3BfcHJlX2luYzogewogICAg
ICAgICAgICAgdW5zaWduZWQgc3JjRHN0ID0gaW5zdHJ1Y3Rpb25baSArIDFdLnUub3BlcmFuZDsK
ICAgICAgICAgICAgIFg4NkFzc2VtYmxlcjo6Sm1wU3JjIG5vdEltbSA9IGl0ZXItPmZyb207Cklu
ZGV4OiBWTS9Db2RlQmxvY2suY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFZNL0NvZGVCbG9jay5jcHAJKHJl
dmlzaW9uIDM2MzI2KQorKysgVk0vQ29kZUJsb2NrLmNwcAkod29ya2luZyBjb3B5KQpAQCAtNjgx
LDYgKzY4MSwxMyBAQCB2b2lkIENvZGVCbG9jazo6ZHVtcChFeGVjU3RhdGUqIGV4ZWMsIGNvCiAg
ICAgICAgICAgICBwcmludGYoIlslNGRdIGxvb3BfaWZfbGVzc1x0ICVzLCAlcywgJWQoLT4lZClc
biIsIGxvY2F0aW9uLCByZWdpc3Rlck5hbWUocjApLmNfc3RyKCksIHJlZ2lzdGVyTmFtZShyMSku
Y19zdHIoKSwgb2Zmc2V0LCBqdW1wVGFyZ2V0KGJlZ2luLCBpdCwgb2Zmc2V0KSk7CiAgICAgICAg
ICAgICBicmVhazsKICAgICAgICAgfQorICAgICAgICBjYXNlIG9wX2xvb3BfaWZfbGVzc2VxOiB7
CisgICAgICAgICAgICBpbnQgcjAgPSAoKytpdCktPnUub3BlcmFuZDsKKyAgICAgICAgICAgIGlu
dCByMSA9ICgrK2l0KS0+dS5vcGVyYW5kOworICAgICAgICAgICAgaW50IG9mZnNldCA9ICgrK2l0
KS0+dS5vcGVyYW5kOworICAgICAgICAgICAgcHJpbnRmKCJbJTRkXSBsb29wX2lmX2xlc3NlcVx0
ICVzLCAlcywgJWQoLT4lZClcbiIsIGxvY2F0aW9uLCByZWdpc3Rlck5hbWUocjApLmNfc3RyKCks
IHJlZ2lzdGVyTmFtZShyMSkuY19zdHIoKSwgb2Zmc2V0LCBqdW1wVGFyZ2V0KGJlZ2luLCBpdCwg
b2Zmc2V0KSk7CisgICAgICAgICAgICBicmVhazsKKyAgICAgICAgfQogICAgICAgICBjYXNlIG9w
X3N3aXRjaF9pbW06IHsKICAgICAgICAgICAgIGludCB0YWJsZUluZGV4ID0gKCsraXQpLT51Lm9w
ZXJhbmQ7CiAgICAgICAgICAgICBpbnQgZGVmYXVsdFRhcmdldCA9ICgrK2l0KS0+dS5vcGVyYW5k
OwpJbmRleDogVk0vQ29kZUdlbmVyYXRvci5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gVk0vQ29kZUdlbmVy
YXRvci5jcHAJKHJldmlzaW9uIDM2MzI2KQorKysgVk0vQ29kZUdlbmVyYXRvci5jcHAJKHdvcmtp
bmcgY29weSkKQEAgLTQ4Niw2ICs0ODYsMjEgQEAgUGFzc1JlZlB0cjxMYWJlbElEPiBDb2RlR2Vu
ZXJhdG9yOjplbWl0SgogICAgICAgICAgICAgaW5zdHJ1Y3Rpb25zKCkuYXBwZW5kKHRhcmdldC0+
b2Zmc2V0RnJvbShpbnN0cnVjdGlvbnMoKS5zaXplKCkpKTsKICAgICAgICAgICAgIHJldHVybiB0
YXJnZXQ7CiAgICAgICAgIH0KKyAgICB9IGVsc2UgaWYgKG1fbGFzdE9wY29kZUlEID09IG9wX2xl
c3NlcSAmJiAhdGFyZ2V0LT5pc0ZvcndhcmRMYWJlbCgpKSB7CisgICAgICAgIGludCBkc3RJbmRl
eDsKKyAgICAgICAgaW50IHNyYzFJbmRleDsKKyAgICAgICAgaW50IHNyYzJJbmRleDsKKworICAg
ICAgICByZXRyaWV2ZUxhc3RCaW5hcnlPcChkc3RJbmRleCwgc3JjMUluZGV4LCBzcmMySW5kZXgp
OworCisgICAgICAgIGlmIChjb25kLT5pbmRleCgpID09IGRzdEluZGV4ICYmIGNvbmQtPmlzVGVt
cG9yYXJ5KCkgJiYgIWNvbmQtPnJlZkNvdW50KCkpIHsKKyAgICAgICAgICAgIHJld2luZEJpbmFy
eU9wKCk7CisgICAgICAgICAgICBlbWl0T3Bjb2RlKG9wX2xvb3BfaWZfbGVzc2VxKTsKKyAgICAg
ICAgICAgIGluc3RydWN0aW9ucygpLmFwcGVuZChzcmMxSW5kZXgpOworICAgICAgICAgICAgaW5z
dHJ1Y3Rpb25zKCkuYXBwZW5kKHNyYzJJbmRleCk7CisgICAgICAgICAgICBpbnN0cnVjdGlvbnMo
KS5hcHBlbmQodGFyZ2V0LT5vZmZzZXRGcm9tKGluc3RydWN0aW9ucygpLnNpemUoKSkpOworICAg
ICAgICAgICAgcmV0dXJuIHRhcmdldDsKKyAgICAgICAgfQogICAgIH0KIAogICAgIGVtaXRPcGNv
ZGUodGFyZ2V0LT5pc0ZvcndhcmRMYWJlbCgpID8gb3BfanRydWUgOiBvcF9sb29wX2lmX3RydWUp
OwpJbmRleDogVk0vTWFjaGluZS5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gVk0vTWFjaGluZS5jcHAJKHJl
dmlzaW9uIDM2MzI2KQorKysgVk0vTWFjaGluZS5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTI3NTIs
NiArMjc1MiwzMyBAQCBKU1ZhbHVlKiBNYWNoaW5lOjpwcml2YXRlRXhlY3V0ZShFeGVjdXRpCiAg
ICAgICAgICsrdlBDOwogICAgICAgICBORVhUX09QQ09ERTsKICAgICB9CisgICAgQkVHSU5fT1BD
T0RFKG9wX2xvb3BfaWZfbGVzc2VxKSB7CisgICAgICAgIC8qIGxvb3BfaWZfbGVzc2VxIHNyYzEo
cikgc3JjMihyKSB0YXJnZXQob2Zmc2V0KQorCisgICAgICAgICAgIENoZWNrcyB3aGV0aGVyIHJl
Z2lzdGVyIHNyYzEgaXMgbGVzcyB0aGFuIG9yIGVxdWFsIHRvIHJlZ2lzdGVyCisgICAgICAgICAg
IHNyYzIsIGFzIHdpdGggdGhlIEVDTUFTY3JpcHQgJzw9JyBvcGVyYXRvciwgYW5kIHRoZW4ganVt
cHMgdG8KKyAgICAgICAgICAgb2Zmc2V0IHRhcmdldCBmcm9tIHRoZSBjdXJyZW50IGluc3RydWN0
aW9uLCBpZiBhbmQgb25seSBpZiB0aGUgCisgICAgICAgICAgIHJlc3VsdCBvZiB0aGUgY29tcGFy
aXNvbiBpcyB0cnVlLgorCisgICAgICAgICAgIEFkZGl0aW9uYWxseSB0aGlzIGxvb3AgaW5zdHJ1
Y3Rpb24gbWF5IHRlcm1pbmF0ZSBKUyBleGVjdXRpb24gaXMKKyAgICAgICAgICAgdGhlIEpTIHRp
bWVvdXQgaXMgcmVhY2hlZC4KKyAgICAgICAgKi8KKyAgICAgICAgSlNWYWx1ZSogc3JjMSA9IHJb
KCsrdlBDKS0+dS5vcGVyYW5kXS5qc1ZhbHVlKGV4ZWMpOworICAgICAgICBKU1ZhbHVlKiBzcmMy
ID0gclsoKyt2UEMpLT51Lm9wZXJhbmRdLmpzVmFsdWUoZXhlYyk7CisgICAgICAgIGludCB0YXJn
ZXQgPSAoKyt2UEMpLT51Lm9wZXJhbmQ7CisgICAgICAgIAorICAgICAgICBib29sIHJlc3VsdCA9
IGpzTGVzc0VxKGV4ZWMsIHNyYzEsIHNyYzIpOworICAgICAgICBWTV9DSEVDS19FWENFUFRJT04o
KTsKKyAgICAgICAgCisgICAgICAgIGlmIChyZXN1bHQpIHsKKyAgICAgICAgICAgIHZQQyArPSB0
YXJnZXQ7CisgICAgICAgICAgICBDSEVDS19GT1JfVElNRU9VVCgpOworICAgICAgICAgICAgTkVY
VF9PUENPREU7CisgICAgICAgIH0KKyAgICAgICAgCisgICAgICAgICsrdlBDOworICAgICAgICBO
RVhUX09QQ09ERTsKKyAgICB9CiAgICAgQkVHSU5fT1BDT0RFKG9wX2pubGVzcykgewogICAgICAg
ICAvKiBqbmxlc3Mgc3JjMShyKSBzcmMyKHIpIHRhcmdldChvZmZzZXQpCiAKQEAgLTM4MDcsNiAr
MzgzNCwxNyBAQCBpbnQgTWFjaGluZTo6Y3RpX29wX2xvb3BfaWZfbGVzcyhDVElfQVJHCiAgICAg
cmV0dXJuIHJlc3VsdDsKIH0KIAoraW50IE1hY2hpbmU6OmN0aV9vcF9sb29wX2lmX2xlc3NlcShD
VElfQVJHUykKK3sKKyAgICBKU1ZhbHVlKiBzcmMxID0gQVJHX3NyYzE7CisgICAgSlNWYWx1ZSog
c3JjMiA9IEFSR19zcmMyOworICAgIEV4ZWNTdGF0ZSogZXhlYyA9IEFSR19leGVjOworCisgICAg
Ym9vbCByZXN1bHQgPSBqc0xlc3NFcShleGVjLCBzcmMxLCBzcmMyKTsKKyAgICBWTV9DSEVDS19F
WENFUFRJT05fQVRfRU5EKCk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KKwogSlNWYWx1ZSogTWFj
aGluZTo6Y3RpX29wX25ld19vYmplY3QoQ1RJX0FSR1MpCiB7CiAgICAgcmV0dXJuIGNvbnN0cnVj
dEVtcHR5T2JqZWN0KEFSR19leGVjKTs7CkluZGV4OiBWTS9NYWNoaW5lLmgKPT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQot
LS0gVk0vTWFjaGluZS5oCShyZXZpc2lvbiAzNjMyNikKKysrIFZNL01hY2hpbmUuaAkod29ya2lu
ZyBjb3B5KQpAQCAtMTQ0LDYgKzE0NCw3IEBAIG5hbWVzcGFjZSBKU0MgewogICAgICAgICBzdGF0
aWMgSlNWYWx1ZSogU0ZYX0NBTEwgY3RpX29wX2FkZChDVElfQVJHUyk7CiAgICAgICAgIHN0YXRp
YyBKU1ZhbHVlKiBTRlhfQ0FMTCBjdGlfb3BfcHJlX2luYyhDVElfQVJHUyk7CiAgICAgICAgIHN0
YXRpYyBpbnQgU0ZYX0NBTEwgY3RpX29wX2xvb3BfaWZfbGVzcyhDVElfQVJHUyk7CisgICAgICAg
IHN0YXRpYyBpbnQgU0ZYX0NBTEwgY3RpX29wX2xvb3BfaWZfbGVzc2VxKENUSV9BUkdTKTsKICAg
ICAgICAgc3RhdGljIEpTVmFsdWUqIFNGWF9DQUxMIGN0aV9vcF9uZXdfb2JqZWN0KENUSV9BUkdT
KTsKICAgICAgICAgc3RhdGljIHZvaWQgU0ZYX0NBTEwgY3RpX29wX3B1dF9ieV9pZChDVElfQVJH
Uyk7CiAgICAgICAgIHN0YXRpYyB2b2lkIFNGWF9DQUxMIGN0aV9vcF9wdXRfYnlfaWRfc2Vjb25k
KENUSV9BUkdTKTsKSW5kZXg6IFZNL09wY29kZS5oCj09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFZNL09wY29kZS5o
CShyZXZpc2lvbiAzNjMyNikKKysrIFZNL09wY29kZS5oCSh3b3JraW5nIGNvcHkpCkBAIC0xMTUs
NiArMTE1LDcgQEAgbmFtZXNwYWNlIEpTQyB7CiAgICAgICAgIG1hY3JvKG9wX2xvb3ApIFwKICAg
ICAgICAgbWFjcm8ob3BfbG9vcF9pZl90cnVlKSBcCiAgICAgICAgIG1hY3JvKG9wX2xvb3BfaWZf
bGVzcykgXAorICAgICAgICBtYWNybyhvcF9sb29wX2lmX2xlc3NlcSkgXAogICAgICAgICBtYWNy
byhvcF9zd2l0Y2hfaW1tKSBcCiAgICAgICAgIG1hY3JvKG9wX3N3aXRjaF9jaGFyKSBcCiAgICAg
ICAgIG1hY3JvKG9wX3N3aXRjaF9zdHJpbmcpIFwK
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>23418</attachid>
            <date>2008-09-14 15:15:24 -0700</date>
            <delta_ts>2008-09-14 15:33:02 -0700</delta_ts>
            <desc>Proposed patch with ChangeLog</desc>
            <filename>loop_if_lesseq.diff</filename>
            <type>text/plain</type>
            <size>8514</size>
            <attacher name="Cameron Zwarich (cpst)">zwarich</attacher>
            
              <data encoding="base64">SW5kZXg6IENoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBDaGFuZ2VMb2cJKHJldmlzaW9uIDM2NDA0
KQorKysgQ2hhbmdlTG9nCSh3b3JraW5nIGNvcHkpCkBAIC0xLDMgKzEsMjcgQEAKKzIwMDgtMDkt
MTQgIENhbWVyb24gWndhcmljaCAgPGN3endhcmljaEB1d2F0ZXJsb28uY2E+CisKKyAgICAgICAg
UmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgQnVnIDIwODE2OiBvcF9sZXNz
ZXEgc2hvdWxkIGJlIG9wdGltaXplZAorICAgICAgICA8aHR0cHM6Ly9idWdzLndlYmtpdC5vcmcv
c2hvd19idWcuY2dpP2lkPTIwODE2PgorCisgICAgICAgIEFkZCBhIGxvb3BfaWZfbGVzc2VxIG9w
Y29kZSB0aGF0IGlzIHNpbWlsYXIgdG8gdGhlIGxvb3BfaWZfbGVzcyBvcGNvZGUuCisKKyAgICAg
ICAgVGhpcyBpcyBhIDkuNCUgc3BlZWR1cCBvbiB0aGUgVjggQ3J5cHRvIGJlbmNobWFyay4KKwor
ICAgICAgICAqIFZNL0NUSS5jcHA6CisgICAgICAgIChKU0M6OkNUSTo6cHJpdmF0ZUNvbXBpbGVN
YWluUGFzcyk6CisgICAgICAgIChKU0M6OkNUSTo6cHJpdmF0ZUNvbXBpbGVTbG93Q2FzZXMpOgor
ICAgICAgICAqIFZNL0NvZGVCbG9jay5jcHA6CisgICAgICAgIChKU0M6OkNvZGVCbG9jazo6ZHVt
cCk6CisgICAgICAgICogVk0vQ29kZUdlbmVyYXRvci5jcHA6CisgICAgICAgIChKU0M6OkNvZGVH
ZW5lcmF0b3I6OmVtaXRKdW1wSWZUcnVlKToKKyAgICAgICAgKiBWTS9NYWNoaW5lLmNwcDoKKyAg
ICAgICAgKEpTQzo6TWFjaGluZTo6cHJpdmF0ZUV4ZWN1dGUpOgorICAgICAgICAoSlNDOjpNYWNo
aW5lOjpjdGlfb3BfbG9vcF9pZl9sZXNzZXEpOgorICAgICAgICAqIFZNL01hY2hpbmUuaDoKKyAg
ICAgICAgKiBWTS9PcGNvZGUuaDoKKwogMjAwOC0wOS0xNCAgU2FtIFdlaW5pZyAgPHNhbUB3ZWJr
aXQub3JnPgogCiAgICAgICAgIFJldmlld2VkIGJ5IENhbWVyb24gWndhcmljaC4KSW5kZXg6IFZN
L0NUSS5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PQotLS0gVk0vQ1RJLmNwcAkocmV2aXNpb24gMzY0MDIpCisrKyBW
TS9DVEkuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC01NzAsNiArNTcwLDI3IEBAIHZvaWQgQ1RJOjpw
cml2YXRlQ29tcGlsZU1haW5QYXNzKCkKICAgICAgICAgICAgIGkgKz0gNDsKICAgICAgICAgICAg
IGJyZWFrOwogICAgICAgICB9CisgICAgICAgIGNhc2Ugb3BfbG9vcF9pZl9sZXNzZXE6IHsKKyAg
ICAgICAgICAgIGVtaXRTbG93U2NyaXB0Q2hlY2soaSk7CisKKyAgICAgICAgICAgIHVuc2lnbmVk
IHRhcmdldCA9IGluc3RydWN0aW9uW2kgKyAzXS51Lm9wZXJhbmQ7CisgICAgICAgICAgICBKU1Zh
bHVlKiBzcmMyaW1tID0gZ2V0Q29uc3RhbnRJbW1lZGlhdGVOdW1lcmljQXJnKGluc3RydWN0aW9u
W2kgKyAyXS51Lm9wZXJhbmQpOworICAgICAgICAgICAgaWYgKHNyYzJpbW0pIHsKKyAgICAgICAg
ICAgICAgICBlbWl0R2V0QXJnKGluc3RydWN0aW9uW2kgKyAxXS51Lm9wZXJhbmQsIFg4Njo6ZWR4
KTsKKyAgICAgICAgICAgICAgICBlbWl0SnVtcFNsb3dDYXNlSWZOb3RJbW0oWDg2OjplZHgsIGkp
OworICAgICAgICAgICAgICAgIG1faml0LmNtcGxfaTMycihyZWludGVycHJldF9jYXN0PHVuc2ln
bmVkPihzcmMyaW1tKSwgWDg2OjplZHgpOworICAgICAgICAgICAgICAgIG1fam1wVGFibGUuYXBw
ZW5kKEptcFRhYmxlKG1faml0LmVtaXRVbmxpbmtlZEpsZSgpLCBpICsgMyArIHRhcmdldCkpOwor
ICAgICAgICAgICAgfSBlbHNlIHsKKyAgICAgICAgICAgICAgICBlbWl0R2V0QXJnKGluc3RydWN0
aW9uW2kgKyAxXS51Lm9wZXJhbmQsIFg4Njo6ZWF4KTsKKyAgICAgICAgICAgICAgICBlbWl0R2V0
QXJnKGluc3RydWN0aW9uW2kgKyAyXS51Lm9wZXJhbmQsIFg4Njo6ZWR4KTsKKyAgICAgICAgICAg
ICAgICBlbWl0SnVtcFNsb3dDYXNlSWZOb3RJbW0oWDg2OjplYXgsIGkpOworICAgICAgICAgICAg
ICAgIGVtaXRKdW1wU2xvd0Nhc2VJZk5vdEltbShYODY6OmVkeCwgaSk7CisgICAgICAgICAgICAg
ICAgbV9qaXQuY21wbF9ycihYODY6OmVkeCwgWDg2OjplYXgpOworICAgICAgICAgICAgICAgIG1f
am1wVGFibGUuYXBwZW5kKEptcFRhYmxlKG1faml0LmVtaXRVbmxpbmtlZEpsZSgpLCBpICsgMyAr
IHRhcmdldCkpOworICAgICAgICAgICAgfQorICAgICAgICAgICAgaSArPSA0OworICAgICAgICAg
ICAgYnJlYWs7CisgICAgICAgIH0KICAgICAgICAgY2FzZSBvcF9uZXdfb2JqZWN0OiB7CiAgICAg
ICAgICAgICBlbWl0Q2FsbChpLCBNYWNoaW5lOjpjdGlfb3BfbmV3X29iamVjdCk7CiAgICAgICAg
ICAgICBlbWl0UHV0UmVzdWx0KGluc3RydWN0aW9uW2kgKyAxXS51Lm9wZXJhbmQpOwpAQCAtMTQ0
NSw2ICsxNDY2LDMwIEBAIHZvaWQgQ1RJOjpwcml2YXRlQ29tcGlsZVNsb3dDYXNlcygpCiAgICAg
ICAgICAgICBpICs9IDQ7CiAgICAgICAgICAgICBicmVhazsKICAgICAgICAgfQorICAgICAgICBj
YXNlIG9wX2xvb3BfaWZfbGVzc2VxOiB7CisgICAgICAgICAgICBlbWl0U2xvd1NjcmlwdENoZWNr
KGkpOworCisgICAgICAgICAgICB1bnNpZ25lZCB0YXJnZXQgPSBpbnN0cnVjdGlvbltpICsgM10u
dS5vcGVyYW5kOworICAgICAgICAgICAgSlNWYWx1ZSogc3JjMmltbSA9IGdldENvbnN0YW50SW1t
ZWRpYXRlTnVtZXJpY0FyZyhpbnN0cnVjdGlvbltpICsgMl0udS5vcGVyYW5kKTsKKyAgICAgICAg
ICAgIGlmIChzcmMyaW1tKSB7CisgICAgICAgICAgICAgICAgbV9qaXQubGluayhpdGVyLT5mcm9t
LCBtX2ppdC5sYWJlbCgpKTsKKyAgICAgICAgICAgICAgICBlbWl0UHV0QXJnKFg4Njo6ZWR4LCAw
KTsKKyAgICAgICAgICAgICAgICBlbWl0R2V0UHV0QXJnKGluc3RydWN0aW9uW2kgKyAyXS51Lm9w
ZXJhbmQsIDQsIFg4Njo6ZWN4KTsKKyAgICAgICAgICAgICAgICBlbWl0Q2FsbChpLCBNYWNoaW5l
OjpjdGlfb3BfbG9vcF9pZl9sZXNzZXEpOworICAgICAgICAgICAgICAgIG1faml0LnRlc3RsX3Jy
KFg4Njo6ZWF4LCBYODY6OmVheCk7CisgICAgICAgICAgICAgICAgbV9qaXQubGluayhtX2ppdC5l
bWl0VW5saW5rZWRKbmUoKSwgbV9sYWJlbHNbaSArIDMgKyB0YXJnZXRdKTsKKyAgICAgICAgICAg
IH0gZWxzZSB7CisgICAgICAgICAgICAgICAgbV9qaXQubGluayhpdGVyLT5mcm9tLCBtX2ppdC5s
YWJlbCgpKTsKKyAgICAgICAgICAgICAgICBtX2ppdC5saW5rKCgrK2l0ZXIpLT5mcm9tLCBtX2pp
dC5sYWJlbCgpKTsKKyAgICAgICAgICAgICAgICBlbWl0UHV0QXJnKFg4Njo6ZWF4LCAwKTsKKyAg
ICAgICAgICAgICAgICBlbWl0UHV0QXJnKFg4Njo6ZWR4LCA0KTsKKyAgICAgICAgICAgICAgICBl
bWl0Q2FsbChpLCBNYWNoaW5lOjpjdGlfb3BfbG9vcF9pZl9sZXNzZXEpOworICAgICAgICAgICAg
ICAgIG1faml0LnRlc3RsX3JyKFg4Njo6ZWF4LCBYODY6OmVheCk7CisgICAgICAgICAgICAgICAg
bV9qaXQubGluayhtX2ppdC5lbWl0VW5saW5rZWRKbmUoKSwgbV9sYWJlbHNbaSArIDMgKyB0YXJn
ZXRdKTsKKyAgICAgICAgICAgIH0KKyAgICAgICAgICAgIGkgKz0gNDsKKyAgICAgICAgICAgIGJy
ZWFrOworICAgICAgICB9CiAgICAgICAgIGNhc2Ugb3BfcHJlX2luYzogewogICAgICAgICAgICAg
dW5zaWduZWQgc3JjRHN0ID0gaW5zdHJ1Y3Rpb25baSArIDFdLnUub3BlcmFuZDsKICAgICAgICAg
ICAgIFg4NkFzc2VtYmxlcjo6Sm1wU3JjIG5vdEltbSA9IGl0ZXItPmZyb207CkluZGV4OiBWTS9D
b2RlQmxvY2suY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFZNL0NvZGVCbG9jay5jcHAJKHJldmlzaW9uIDM2
NDAyKQorKysgVk0vQ29kZUJsb2NrLmNwcAkod29ya2luZyBjb3B5KQpAQCAtNjg5LDYgKzY4OSwx
MyBAQCB2b2lkIENvZGVCbG9jazo6ZHVtcChFeGVjU3RhdGUqIGV4ZWMsIGNvCiAgICAgICAgICAg
ICBwcmludGYoIlslNGRdIGxvb3BfaWZfbGVzc1x0ICVzLCAlcywgJWQoLT4lZClcbiIsIGxvY2F0
aW9uLCByZWdpc3Rlck5hbWUocjApLmNfc3RyKCksIHJlZ2lzdGVyTmFtZShyMSkuY19zdHIoKSwg
b2Zmc2V0LCBqdW1wVGFyZ2V0KGJlZ2luLCBpdCwgb2Zmc2V0KSk7CiAgICAgICAgICAgICBicmVh
azsKICAgICAgICAgfQorICAgICAgICBjYXNlIG9wX2xvb3BfaWZfbGVzc2VxOiB7CisgICAgICAg
ICAgICBpbnQgcjAgPSAoKytpdCktPnUub3BlcmFuZDsKKyAgICAgICAgICAgIGludCByMSA9ICgr
K2l0KS0+dS5vcGVyYW5kOworICAgICAgICAgICAgaW50IG9mZnNldCA9ICgrK2l0KS0+dS5vcGVy
YW5kOworICAgICAgICAgICAgcHJpbnRmKCJbJTRkXSBsb29wX2lmX2xlc3NlcVx0ICVzLCAlcywg
JWQoLT4lZClcbiIsIGxvY2F0aW9uLCByZWdpc3Rlck5hbWUocjApLmNfc3RyKCksIHJlZ2lzdGVy
TmFtZShyMSkuY19zdHIoKSwgb2Zmc2V0LCBqdW1wVGFyZ2V0KGJlZ2luLCBpdCwgb2Zmc2V0KSk7
CisgICAgICAgICAgICBicmVhazsKKyAgICAgICAgfQogICAgICAgICBjYXNlIG9wX3N3aXRjaF9p
bW06IHsKICAgICAgICAgICAgIGludCB0YWJsZUluZGV4ID0gKCsraXQpLT51Lm9wZXJhbmQ7CiAg
ICAgICAgICAgICBpbnQgZGVmYXVsdFRhcmdldCA9ICgrK2l0KS0+dS5vcGVyYW5kOwpJbmRleDog
Vk0vQ29kZUdlbmVyYXRvci5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gVk0vQ29kZUdlbmVyYXRvci5jcHAJ
KHJldmlzaW9uIDM2NDAyKQorKysgVk0vQ29kZUdlbmVyYXRvci5jcHAJKHdvcmtpbmcgY29weSkK
QEAgLTQ4Niw2ICs0ODYsMjEgQEAgUGFzc1JlZlB0cjxMYWJlbElEPiBDb2RlR2VuZXJhdG9yOjpl
bWl0SgogICAgICAgICAgICAgaW5zdHJ1Y3Rpb25zKCkuYXBwZW5kKHRhcmdldC0+b2Zmc2V0RnJv
bShpbnN0cnVjdGlvbnMoKS5zaXplKCkpKTsKICAgICAgICAgICAgIHJldHVybiB0YXJnZXQ7CiAg
ICAgICAgIH0KKyAgICB9IGVsc2UgaWYgKG1fbGFzdE9wY29kZUlEID09IG9wX2xlc3NlcSAmJiAh
dGFyZ2V0LT5pc0ZvcndhcmRMYWJlbCgpKSB7CisgICAgICAgIGludCBkc3RJbmRleDsKKyAgICAg
ICAgaW50IHNyYzFJbmRleDsKKyAgICAgICAgaW50IHNyYzJJbmRleDsKKworICAgICAgICByZXRy
aWV2ZUxhc3RCaW5hcnlPcChkc3RJbmRleCwgc3JjMUluZGV4LCBzcmMySW5kZXgpOworCisgICAg
ICAgIGlmIChjb25kLT5pbmRleCgpID09IGRzdEluZGV4ICYmIGNvbmQtPmlzVGVtcG9yYXJ5KCkg
JiYgIWNvbmQtPnJlZkNvdW50KCkpIHsKKyAgICAgICAgICAgIHJld2luZEJpbmFyeU9wKCk7Cisg
ICAgICAgICAgICBlbWl0T3Bjb2RlKG9wX2xvb3BfaWZfbGVzc2VxKTsKKyAgICAgICAgICAgIGlu
c3RydWN0aW9ucygpLmFwcGVuZChzcmMxSW5kZXgpOworICAgICAgICAgICAgaW5zdHJ1Y3Rpb25z
KCkuYXBwZW5kKHNyYzJJbmRleCk7CisgICAgICAgICAgICBpbnN0cnVjdGlvbnMoKS5hcHBlbmQo
dGFyZ2V0LT5vZmZzZXRGcm9tKGluc3RydWN0aW9ucygpLnNpemUoKSkpOworICAgICAgICAgICAg
cmV0dXJuIHRhcmdldDsKKyAgICAgICAgfQogICAgIH0KIAogICAgIGVtaXRPcGNvZGUodGFyZ2V0
LT5pc0ZvcndhcmRMYWJlbCgpID8gb3BfanRydWUgOiBvcF9sb29wX2lmX3RydWUpOwpJbmRleDog
Vk0vTWFjaGluZS5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gVk0vTWFjaGluZS5jcHAJKHJldmlzaW9uIDM2
NDAyKQorKysgVk0vTWFjaGluZS5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTI4MjMsNiArMjgyMywz
MyBAQCBKU1ZhbHVlKiBNYWNoaW5lOjpwcml2YXRlRXhlY3V0ZShFeGVjdXRpCiAgICAgICAgICsr
dlBDOwogICAgICAgICBORVhUX09QQ09ERTsKICAgICB9CisgICAgQkVHSU5fT1BDT0RFKG9wX2xv
b3BfaWZfbGVzc2VxKSB7CisgICAgICAgIC8qIGxvb3BfaWZfbGVzc2VxIHNyYzEocikgc3JjMihy
KSB0YXJnZXQob2Zmc2V0KQorCisgICAgICAgICAgIENoZWNrcyB3aGV0aGVyIHJlZ2lzdGVyIHNy
YzEgaXMgbGVzcyB0aGFuIG9yIGVxdWFsIHRvIHJlZ2lzdGVyCisgICAgICAgICAgIHNyYzIsIGFz
IHdpdGggdGhlIEVDTUFTY3JpcHQgJzw9JyBvcGVyYXRvciwgYW5kIHRoZW4ganVtcHMgdG8KKyAg
ICAgICAgICAgb2Zmc2V0IHRhcmdldCBmcm9tIHRoZSBjdXJyZW50IGluc3RydWN0aW9uLCBpZiBh
bmQgb25seSBpZiB0aGUgCisgICAgICAgICAgIHJlc3VsdCBvZiB0aGUgY29tcGFyaXNvbiBpcyB0
cnVlLgorCisgICAgICAgICAgIEFkZGl0aW9uYWxseSB0aGlzIGxvb3AgaW5zdHJ1Y3Rpb24gbWF5
IHRlcm1pbmF0ZSBKUyBleGVjdXRpb24gaXMKKyAgICAgICAgICAgdGhlIEpTIHRpbWVvdXQgaXMg
cmVhY2hlZC4KKyAgICAgICAgKi8KKyAgICAgICAgSlNWYWx1ZSogc3JjMSA9IHJbKCsrdlBDKS0+
dS5vcGVyYW5kXS5qc1ZhbHVlKGV4ZWMpOworICAgICAgICBKU1ZhbHVlKiBzcmMyID0gclsoKyt2
UEMpLT51Lm9wZXJhbmRdLmpzVmFsdWUoZXhlYyk7CisgICAgICAgIGludCB0YXJnZXQgPSAoKyt2
UEMpLT51Lm9wZXJhbmQ7CisgICAgICAgIAorICAgICAgICBib29sIHJlc3VsdCA9IGpzTGVzc0Vx
KGV4ZWMsIHNyYzEsIHNyYzIpOworICAgICAgICBWTV9DSEVDS19FWENFUFRJT04oKTsKKyAgICAg
ICAgCisgICAgICAgIGlmIChyZXN1bHQpIHsKKyAgICAgICAgICAgIHZQQyArPSB0YXJnZXQ7Cisg
ICAgICAgICAgICBDSEVDS19GT1JfVElNRU9VVCgpOworICAgICAgICAgICAgTkVYVF9PUENPREU7
CisgICAgICAgIH0KKyAgICAgICAgCisgICAgICAgICsrdlBDOworICAgICAgICBORVhUX09QQ09E
RTsKKyAgICB9CiAgICAgQkVHSU5fT1BDT0RFKG9wX2pubGVzcykgewogICAgICAgICAvKiBqbmxl
c3Mgc3JjMShyKSBzcmMyKHIpIHRhcmdldChvZmZzZXQpCiAKQEAgLTM4OTUsNiArMzkyMiwxNyBA
QCBpbnQgTWFjaGluZTo6Y3RpX29wX2xvb3BfaWZfbGVzcyhDVElfQVJHCiAgICAgcmV0dXJuIHJl
c3VsdDsKIH0KIAoraW50IE1hY2hpbmU6OmN0aV9vcF9sb29wX2lmX2xlc3NlcShDVElfQVJHUykK
K3sKKyAgICBKU1ZhbHVlKiBzcmMxID0gQVJHX3NyYzE7CisgICAgSlNWYWx1ZSogc3JjMiA9IEFS
R19zcmMyOworICAgIEV4ZWNTdGF0ZSogZXhlYyA9IEFSR19leGVjOworCisgICAgYm9vbCByZXN1
bHQgPSBqc0xlc3NFcShleGVjLCBzcmMxLCBzcmMyKTsKKyAgICBWTV9DSEVDS19FWENFUFRJT05f
QVRfRU5EKCk7CisgICAgcmV0dXJuIHJlc3VsdDsKK30KKwogSlNWYWx1ZSogTWFjaGluZTo6Y3Rp
X29wX25ld19vYmplY3QoQ1RJX0FSR1MpCiB7CiAgICAgcmV0dXJuIGNvbnN0cnVjdEVtcHR5T2Jq
ZWN0KEFSR19leGVjKTs7CkluZGV4OiBWTS9NYWNoaW5lLmgKPT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gVk0vTWFj
aGluZS5oCShyZXZpc2lvbiAzNjQwMikKKysrIFZNL01hY2hpbmUuaAkod29ya2luZyBjb3B5KQpA
QCAtMTQ0LDYgKzE0NCw3IEBAIG5hbWVzcGFjZSBKU0MgewogICAgICAgICBzdGF0aWMgSlNWYWx1
ZSogU0ZYX0NBTEwgY3RpX29wX2FkZChDVElfQVJHUyk7CiAgICAgICAgIHN0YXRpYyBKU1ZhbHVl
KiBTRlhfQ0FMTCBjdGlfb3BfcHJlX2luYyhDVElfQVJHUyk7CiAgICAgICAgIHN0YXRpYyBpbnQg
U0ZYX0NBTEwgY3RpX29wX2xvb3BfaWZfbGVzcyhDVElfQVJHUyk7CisgICAgICAgIHN0YXRpYyBp
bnQgU0ZYX0NBTEwgY3RpX29wX2xvb3BfaWZfbGVzc2VxKENUSV9BUkdTKTsKICAgICAgICAgc3Rh
dGljIEpTVmFsdWUqIFNGWF9DQUxMIGN0aV9vcF9uZXdfb2JqZWN0KENUSV9BUkdTKTsKICAgICAg
ICAgc3RhdGljIHZvaWQgU0ZYX0NBTEwgY3RpX29wX3B1dF9ieV9pZChDVElfQVJHUyk7CiAgICAg
ICAgIHN0YXRpYyB2b2lkIFNGWF9DQUxMIGN0aV9vcF9wdXRfYnlfaWRfc2Vjb25kKENUSV9BUkdT
KTsKSW5kZXg6IFZNL09wY29kZS5oCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFZNL09wY29kZS5oCShyZXZpc2lv
biAzNjQwMikKKysrIFZNL09wY29kZS5oCSh3b3JraW5nIGNvcHkpCkBAIC0xMTYsNiArMTE2LDcg
QEAgbmFtZXNwYWNlIEpTQyB7CiAgICAgICAgIG1hY3JvKG9wX2xvb3ApIFwKICAgICAgICAgbWFj
cm8ob3BfbG9vcF9pZl90cnVlKSBcCiAgICAgICAgIG1hY3JvKG9wX2xvb3BfaWZfbGVzcykgXAor
ICAgICAgICBtYWNybyhvcF9sb29wX2lmX2xlc3NlcSkgXAogICAgICAgICBtYWNybyhvcF9zd2l0
Y2hfaW1tKSBcCiAgICAgICAgIG1hY3JvKG9wX3N3aXRjaF9jaGFyKSBcCiAgICAgICAgIG1hY3Jv
KG9wX3N3aXRjaF9zdHJpbmcpIFwK
</data>
<flag name="review"
          id="10449"
          type_id="1"
          status="+"
          setter="oliver"
    />
          </attachment>
      

    </bug>

</bugzilla>