<?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>112202</bug_id>
          
          <creation_ts>2013-03-12 15:38:40 -0700</creation_ts>
          <short_desc>[iOS] Add optimized version of StringImpl&apos;s equal(LChar*,LChar*) for Apple CPUs</short_desc>
          <delta_ts>2013-03-13 13:46:23 -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>New Bugs</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>InRadar</keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Benjamin Poulain">benjamin</reporter>
          <assigned_to name="Benjamin Poulain">benjamin</assigned_to>
          <cc>barraclough</cc>
    
    <cc>cmarcelo</cc>
    
    <cc>dglazkov</cc>
    
    <cc>fpizlo</cc>
    
    <cc>ggaren</cc>
    
    <cc>ojan.autocc</cc>
    
    <cc>peter+ews</cc>
    
    <cc>psolanki</cc>
    
    <cc>webkit-ews</cc>
    
    <cc>webkit.review.bot</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>853856</commentid>
    <comment_count>0</comment_count>
    <who name="Benjamin Poulain">benjamin</who>
    <bug_when>2013-03-12 15:38:40 -0700</bug_when>
    <thetext>[iOS] Add optimized version of StringImpl&apos;s equal(LChar*,LChar*) for Apple CPUs</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>853866</commentid>
    <comment_count>1</comment_count>
      <attachid>192827</attachid>
    <who name="Benjamin Poulain">benjamin</who>
    <bug_when>2013-03-12 15:42:56 -0700</bug_when>
    <thetext>Created attachment 192827
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>853870</commentid>
    <comment_count>2</comment_count>
    <who name="Benjamin Poulain">benjamin</who>
    <bug_when>2013-03-12 15:47:42 -0700</bug_when>
    <thetext>&lt;rdar://problem/12437844&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>853883</commentid>
    <comment_count>3</comment_count>
      <attachid>192827</attachid>
    <who name="Early Warning System Bot">webkit-ews</who>
    <bug_when>2013-03-12 16:01:05 -0700</bug_when>
    <thetext>Comment on attachment 192827
Patch

Attachment 192827 did not pass qt-ews (qt):
Output: http://webkit-commit-queue.appspot.com/results/17174180</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>853890</commentid>
    <comment_count>4</comment_count>
      <attachid>192827</attachid>
    <who name="Early Warning System Bot">webkit-ews</who>
    <bug_when>2013-03-12 16:13:42 -0700</bug_when>
    <thetext>Comment on attachment 192827
Patch

Attachment 192827 did not pass qt-wk2-ews (qt):
Output: http://webkit-commit-queue.appspot.com/results/17074383</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>853904</commentid>
    <comment_count>5</comment_count>
      <attachid>192827</attachid>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2013-03-12 16:44:08 -0700</bug_when>
    <thetext>Comment on attachment 192827
Patch

Attachment 192827 did not pass chromium-ews (chromium-xvfb):
Output: http://webkit-commit-queue.appspot.com/results/17201136</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>853923</commentid>
    <comment_count>6</comment_count>
      <attachid>192836</attachid>
    <who name="Benjamin Poulain">benjamin</who>
    <bug_when>2013-03-12 17:06:08 -0700</bug_when>
    <thetext>Created attachment 192836
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>853957</commentid>
    <comment_count>7</comment_count>
      <attachid>192836</attachid>
    <who name="Gavin Barraclough">barraclough</who>
    <bug_when>2013-03-12 18:09:35 -0700</bug_when>
    <thetext>Comment on attachment 192836
Patch

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

Looks good!

&gt; Source/WTF/wtf/text/StringImpl.h:933
&gt; +        &quot;b      66f\n&quot;

I think you could invert this to:
-&gt; &quot;bneq 66f&quot; &quot;b 0b&quot;

And if you then move the label &quot;0:&quot; down a line, you could branch past the cbz:
-&gt; &quot;bneq 66f&quot; &quot;cbnz 0b&quot;

This would save an unconditional branch from the loop.
Don&apos;t know if this might help?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>853989</commentid>
    <comment_count>8</comment_count>
      <attachid>192836</attachid>
    <who name="Peter Beverloo (cr-android ews)">peter+ews</who>
    <bug_when>2013-03-12 18:55:35 -0700</bug_when>
    <thetext>Comment on attachment 192836
Patch

Attachment 192836 did not pass cr-android-ews (chromium-android):
Output: http://webkit-commit-queue.appspot.com/results/17188165</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>854012</commentid>
    <comment_count>9</comment_count>
    <who name="Benjamin Poulain">benjamin</who>
    <bug_when>2013-03-12 19:27:40 -0700</bug_when>
    <thetext>&gt; &gt; Source/WTF/wtf/text/StringImpl.h:933
&gt; &gt; +        &quot;b      66f\n&quot;
&gt; 
&gt; I think you could invert this to:
&gt; -&gt; &quot;bneq 66f&quot; &quot;b 0b&quot;
&gt; 
&gt; And if you then move the label &quot;0:&quot; down a line, you could branch past the cbz:
&gt; -&gt; &quot;bneq 66f&quot; &quot;cbnz 0b&quot;
&gt; 
&gt; This would save an unconditional branch from the loop.
&gt; Don&apos;t know if this might help?

Good idea! This is faster indeed.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>854093</commentid>
    <comment_count>10</comment_count>
      <attachid>192876</attachid>
    <who name="Benjamin Poulain">benjamin</who>
    <bug_when>2013-03-13 00:18:32 -0700</bug_when>
    <thetext>Created attachment 192876
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>854589</commentid>
    <comment_count>11</comment_count>
    <who name="Benjamin Poulain">benjamin</who>
    <bug_when>2013-03-13 13:46:23 -0700</bug_when>
    <thetext>Committed r145748: &lt;http://trac.webkit.org/changeset/145748&gt;</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>192827</attachid>
            <date>2013-03-12 15:42:56 -0700</date>
            <delta_ts>2013-03-12 17:06:05 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-112202-20130312153855.patch</filename>
            <type>text/plain</type>
            <size>2896</size>
            <attacher name="Benjamin Poulain">benjamin</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTQ1NDA1CmRpZmYgLS1naXQgYS9Tb3VyY2UvV1RGL0NoYW5n
ZUxvZyBiL1NvdXJjZS9XVEYvQ2hhbmdlTG9nCmluZGV4IDZiNmEwOWQwMmI0ZDg4NTMwOWZhNmRj
NWU3YmQyZGE0MTAyZmE4ZjQuLjNjZDIxMDU4NTk5YWRhZDFkYzRlMTg4MmVlODEzNDE4OWJhYmQ3
MTUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XVEYvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9XVEYvQ2hh
bmdlTG9nCkBAIC0xLDMgKzEsMTUgQEAKKzIwMTMtMDMtMTIgIEJlbmphbWluIFBvdWxhaW4gIDxi
cG91bGFpbkBhcHBsZS5jb20+CisKKyAgICAgICAgW2lPU10gQWRkIG9wdGltaXplZCB2ZXJzaW9u
IG9mIFN0cmluZ0ltcGwncyBlcXVhbChMQ2hhciosTENoYXIqKSBmb3IgQXBwbGUgQ1BVcworICAg
ICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTEyMjAyCisKKyAg
ICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgKiB3dGYvdGV4dC9T
dHJpbmdJbXBsLmg6CisgICAgICAgIChXVEY6OmVxdWFsKToKKyAgICAgICAgT24gQVJNdjdTLCB0
aGUgbmV3IHZlcnNpb24gaXMgYWJvdXQgMjUlIHBlcmNlbnQgZmFzdGVyIHRoYW4gdGhlIHNpbXBs
ZSBsb29wLgorICAgICAgICBPbiBBUk12NyBjbGFzc2ljLCBtZW1jbXAgaXMgYSBsaXR0bGUgZmFz
dGVyIHRoYW4gdGhlIHNpbXBsZSBsb29wIG9uIEFwcGxlIEE1LgorCiAyMDEzLTAzLTExICBPbGl2
ZXIgSHVudCAgPG9saXZlckBhcHBsZS5jb20+CiAKICAgICAgICAgTWFrZSBTZWdtZW50ZWRWZWN0
b3IgTm9uY29weWFibGUKZGlmZiAtLWdpdCBhL1NvdXJjZS9XVEYvd3RmL3RleHQvU3RyaW5nSW1w
bC5oIGIvU291cmNlL1dURi93dGYvdGV4dC9TdHJpbmdJbXBsLmgKaW5kZXggZjVkYjY4ZTQzZjA4
NWYwMzg1YjFhMzQ2NzBhMTg5Nzk5ZDU0ZDAxZS4uN2Y0NDZhMjY3NzBiZGNhMjk0OGVkYTE2MTlk
Mzg1MjA5MGEzMzllYyAxMDA2NDQKLS0tIGEvU291cmNlL1dURi93dGYvdGV4dC9TdHJpbmdJbXBs
LmgKKysrIGIvU291cmNlL1dURi93dGYvdGV4dC9TdHJpbmdJbXBsLmgKQEAgLTkxNyw2ICs5MTcs
NjEgQEAgQUxXQVlTX0lOTElORSBib29sIGVxdWFsKGNvbnN0IFVDaGFyKiBhLCBjb25zdCBVQ2hh
ciogYiwgdW5zaWduZWQgbGVuZ3RoKQogICAgIAogICAgIHJldHVybiB0cnVlOwogfQorI2VsaWYg
Q1BVKEFQUExFX0FSTVY3UykKK0FMV0FZU19JTkxJTkUgYm9vbCBlcXVhbChjb25zdCBMQ2hhciog
YSwgY29uc3QgTENoYXIqIGIsIHVuc2lnbmVkIGxlbmd0aCkKK3sKKyAgICBib29sIGlzRXF1YWwg
PSBmYWxzZTsKKyAgICBhc20oImxzciAgICByMywgJVtsZW5ndGhdLCAjMlxuIgorCisgICAgICAg
ICIwOlxuIiAvLyBUYWcgMCA9IFN0YXJ0IG9mIGxvb3Agb3ZlciAzMiBiaXRzLgorICAgICAgICAi
Y2J6ICAgIHIzLCAyZlxuIgorICAgICAgICAibGRyICAgIHI5LCBbJVthXV0sICM0XG4iCisgICAg
ICAgICJzdWIgICAgcjMsICMxXG4iCisgICAgICAgICJsZHIgICAgcjEyLCBbJVtiXV0sICM0XG4i
CisgICAgICAgICJjbXAgICAgcjksIHIxMlxuIgorICAgICAgICAiYmVxICAgIDBiXG4iCisgICAg
ICAgICJiICAgICAgNjZmXG4iCisKKyAgICAgICAgIjI6XG4iIC8vIFRhZyAyID0gRW5kIG9mIGxv
b3Agb3ZlciAzMiBiaXRzLCBjaGVjayBmb3IgcGFpciBvZiBjaGFyYWN0ZXJzLgorICAgICAgICAi
dHN0ICAgICVbbGVuZ3RoXSwgIzJcbiIKKyAgICAgICAgImJlcSAgICAxZlxuIgorICAgICAgICAi
bGRyaCAgIHI5LCBbJVthXV0sICMyXG4iCisgICAgICAgICJsZHJoICAgcjEyLCBbJVtiXV0sICMy
XG4iCisgICAgICAgICJjbXAgICAgcjksIHIxMlxuIgorICAgICAgICAiYm5lICAgIDY2ZlxuIgor
CisgICAgICAgICIxOlxuIiAvLyBUYWcgMSA9IENoZWNrIGZvciBhIHNpbmdsZSBjaGFyYWN0ZXIg
bGVmdC4KKyAgICAgICAgInRzdCAgICAlW2xlbmd0aF0sICMxXG4iCisgICAgICAgICJiZXEgICAg
NDJmXG4iCisgICAgICAgICJsZHJiICAgcjksIFslW2FdXVxuIgorICAgICAgICAibGRyYiAgIHIx
MiwgWyVbYl1dXG4iCisgICAgICAgICJjbXAgICAgcjksIHIxMlxuIgorICAgICAgICAiYm5lICAg
IDY2ZlxuIgorCisgICAgICAgICI0MjpcbiIgLy8gVGFnIDQyID0gU3VjY2Vzcy4KKyAgICAgICAg
Im1vdiAgICAlW2lzRXF1YWxdLCAjMVxuIgorICAgICAgICAiNjY6XG4iIC8vIFRhZyA2NiA9IEVu
ZCB3aXRob3V0IGNoYW5naW5nIGlzRXF1YWwgdG8gMS4KKyAgICAgICAgOiBbaXNFcXVhbF0iK3Ii
KGlzRXF1YWwpLCBbYV0iK3IiKGEpLCBbYl0iK3IiKGIpCisgICAgICAgIDogW2xlbmd0aF0iciIo
bGVuZ3RoKQorICAgICAgICA6ICJyMyIsICJyOSIsICJyMTIiCisgICAgICAgICk7CisgICAgcmV0
dXJuIGlzRXF1YWw7Cit9CisKK0FMV0FZU19JTkxJTkUgYm9vbCBlcXVhbChjb25zdCBVQ2hhciog
YSwgY29uc3QgVUNoYXIqIGIsIHVuc2lnbmVkIGxlbmd0aCkKK3sKKyAgICByZXR1cm4gIW1lbWNt
cChhLCBiLCBsZW5ndGgpOworfQorI2VsaWYgUExBVEZPUk0oSU9TKSAmJiBXVEZfQVJNX0FSQ0hf
QVRfTEVBU1QoNykKK0FMV0FZU19JTkxJTkUgYm9vbCBlcXVhbChjb25zdCBMQ2hhciogYSwgY29u
c3QgTENoYXIqIGIsIHVuc2lnbmVkIGxlbmd0aCkKK3sKKyAgICByZXR1cm4gIW1lbWNtcChhLCBi
LCBsZW5ndGgpOworfQorCitBTFdBWVNfSU5MSU5FIGJvb2wgZXF1YWwoY29uc3QgVUNoYXIqIGEs
IGNvbnN0IFVDaGFyKiBiLCB1bnNpZ25lZCBsZW5ndGgpCit7CisgICAgcmV0dXJuICFtZW1jbXAo
YSwgYiwgbGVuZ3RoKTsKK30KICNlbHNlCiBBTFdBWVNfSU5MSU5FIGJvb2wgZXF1YWwoY29uc3Qg
TENoYXIqIGEsIGNvbnN0IExDaGFyKiBiLCB1bnNpZ25lZCBsZW5ndGgpCiB7Cg==
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>192836</attachid>
            <date>2013-03-12 17:06:08 -0700</date>
            <delta_ts>2013-03-13 00:18:29 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-112202-20130312170206.patch</filename>
            <type>text/plain</type>
            <size>4350</size>
            <attacher name="Benjamin Poulain">benjamin</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTQ1NDA1CmRpZmYgLS1naXQgYS9Tb3VyY2UvV1RGL0NoYW5n
ZUxvZyBiL1NvdXJjZS9XVEYvQ2hhbmdlTG9nCmluZGV4IDZiNmEwOWQwMmI0ZDg4NTMwOWZhNmRj
NWU3YmQyZGE0MTAyZmE4ZjQuLjE5YWY2ODA5OWFhMGRlYzlkODFkNThiMjE2ZWQwZmUxMDFjYTMz
MDQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XVEYvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9XVEYvQ2hh
bmdlTG9nCkBAIC0xLDMgKzEsMTcgQEAKKzIwMTMtMDMtMTIgIEJlbmphbWluIFBvdWxhaW4gIDxi
cG91bGFpbkBhcHBsZS5jb20+CisKKyAgICAgICAgW2lPU10gQWRkIG9wdGltaXplZCB2ZXJzaW9u
IG9mIFN0cmluZ0ltcGwncyBlcXVhbChMQ2hhciosTENoYXIqKSBmb3IgQXBwbGUgQ1BVcworICAg
ICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTEyMjAyCisKKyAg
ICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgKiBTb3VyY2UvV1RG
L3d0Zi9QbGF0Zm9ybS5oOgorICAgICAgICBNYWtlIFdURl9BUk1fQVJDSF9WRVJTSU9OIHdvcmtz
IG9uIGFsbCBwbGF0Zm9ybS4KKyAgICAgICAgKiB3dGYvdGV4dC9TdHJpbmdJbXBsLmg6CisgICAg
ICAgIChXVEY6OmVxdWFsKToKKyAgICAgICAgT24gQVJNdjdTLCB0aGUgbmV3IHZlcnNpb24gaXMg
YWJvdXQgMjUlIHBlcmNlbnQgZmFzdGVyIHRoYW4gdGhlIHNpbXBsZSBsb29wLgorICAgICAgICBP
biBBUk12NyBjbGFzc2ljLCBtZW1jbXAgaXMgYSBsaXR0bGUgZmFzdGVyIHRoYW4gdGhlIHNpbXBs
ZSBsb29wIG9uIEFwcGxlIEE1LgorCiAyMDEzLTAzLTExICBPbGl2ZXIgSHVudCAgPG9saXZlckBh
cHBsZS5jb20+CiAKICAgICAgICAgTWFrZSBTZWdtZW50ZWRWZWN0b3IgTm9uY29weWFibGUKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9XVEYvd3RmL1BsYXRmb3JtLmggYi9Tb3VyY2UvV1RGL3d0Zi9QbGF0
Zm9ybS5oCmluZGV4IDkzMDFmMTA1NTE1ZDE0ZTZjZDI3NTE1MGFlZWRlMDBkMjJkNGNkOTUuLjU5
ODA3ODNkODY0ODFmZGM1ZTQ4ZDRiMzk1NTVjNGQ2MzQ0NjVjY2UgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9XVEYvd3RmL1BsYXRmb3JtLmgKKysrIGIvU291cmNlL1dURi93dGYvUGxhdGZvcm0uaApAQCAt
MSw1ICsxLDUgQEAKIC8qCi0gKiBDb3B5cmlnaHQgKEMpIDIwMDYsIDIwMDcsIDIwMDgsIDIwMDkg
QXBwbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgorICogQ29weXJpZ2h0IChDKSAyMDA2LCAy
MDA3LCAyMDA4LCAyMDA5LCAyMDEzIEFwcGxlIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KICAq
IENvcHlyaWdodCAoQykgMjAwNy0yMDA5IFRvcmNoIE1vYmlsZSwgSW5jLgogICogQ29weXJpZ2h0
IChDKSAyMDEwLCAyMDExIFJlc2VhcmNoIEluIE1vdGlvbiBMaW1pdGVkLiBBbGwgcmlnaHRzIHJl
c2VydmVkLgogICoKQEAgLTE4NSw4ICsxODUsNiBAQAogCiAjZW5kaWYKIAotI2RlZmluZSBXVEZf
QVJNX0FSQ0hfQVRfTEVBU1QoTikgKENQVShBUk0pICYmIFdURl9BUk1fQVJDSF9WRVJTSU9OID49
IE4pCi0KIC8qIFNldCBXVEZfQVJNX0FSQ0hfVkVSU0lPTiAqLwogI2lmICAgZGVmaW5lZChfX0FS
TV9BUkNIXzRfXykgXAogICAgIHx8IGRlZmluZWQoX19BUk1fQVJDSF80VF9fKSBcCkBAIC0zMTMs
NiArMzExLDcgQEAKICNlbmRpZgogCiAjZW5kaWYgLyogQVJNICovCisjZGVmaW5lIFdURl9BUk1f
QVJDSF9BVF9MRUFTVChOKSAoQ1BVKEFSTSkgJiYgZGVmaW5lZChXVEZfQVJNX0FSQ0hfVkVSU0lP
TikgJiYgV1RGX0FSTV9BUkNIX1ZFUlNJT04gPj0gTikKIAogI2lmIENQVShBUk0pIHx8IENQVShN
SVBTKSB8fCBDUFUoU0g0KSB8fCBDUFUoU1BBUkMpCiAjZGVmaW5lIFdURl9DUFVfTkVFRFNfQUxJ
R05FRF9BQ0NFU1MgMQpkaWZmIC0tZ2l0IGEvU291cmNlL1dURi93dGYvdGV4dC9TdHJpbmdJbXBs
LmggYi9Tb3VyY2UvV1RGL3d0Zi90ZXh0L1N0cmluZ0ltcGwuaAppbmRleCBmNWRiNjhlNDNmMDg1
ZjAzODViMWEzNDY3MGExODk3OTlkNTRkMDFlLi5jYjNmMGJmOWZjN2ZiMWQ1MDBmNmJhNWViMjdh
ZjI3MmRjZDhiZjRiIDEwMDY0NAotLS0gYS9Tb3VyY2UvV1RGL3d0Zi90ZXh0L1N0cmluZ0ltcGwu
aAorKysgYi9Tb3VyY2UvV1RGL3d0Zi90ZXh0L1N0cmluZ0ltcGwuaApAQCAtMSw2ICsxLDYgQEAK
IC8qCiAgKiBDb3B5cmlnaHQgKEMpIDE5OTkgTGFycyBLbm9sbCAoa25vbGxAa2RlLm9yZykKLSAq
IENvcHlyaWdodCAoQykgMjAwNSwgMjAwNiwgMjAwNywgMjAwOCwgMjAwOSwgMjAxMCBBcHBsZSBJ
bmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisgKiBDb3B5cmlnaHQgKEMpIDIwMDUsIDIwMDYsIDIw
MDcsIDIwMDgsIDIwMDksIDIwMTAsIDIwMTMgQXBwbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVk
LgogICogQ29weXJpZ2h0IChDKSAyMDA5IEdvb2dsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQu
CiAgKgogICogVGhpcyBsaWJyYXJ5IGlzIGZyZWUgc29mdHdhcmU7IHlvdSBjYW4gcmVkaXN0cmli
dXRlIGl0IGFuZC9vcgpAQCAtOTE3LDYgKzkxNyw2MSBAQCBBTFdBWVNfSU5MSU5FIGJvb2wgZXF1
YWwoY29uc3QgVUNoYXIqIGEsIGNvbnN0IFVDaGFyKiBiLCB1bnNpZ25lZCBsZW5ndGgpCiAgICAg
CiAgICAgcmV0dXJuIHRydWU7CiB9CisjZWxpZiBDUFUoQVBQTEVfQVJNVjdTKQorQUxXQVlTX0lO
TElORSBib29sIGVxdWFsKGNvbnN0IExDaGFyKiBhLCBjb25zdCBMQ2hhciogYiwgdW5zaWduZWQg
bGVuZ3RoKQoreworICAgIGJvb2wgaXNFcXVhbCA9IGZhbHNlOworICAgIGFzbSgibHNyICAgIHIz
LCAlW2xlbmd0aF0sICMyXG4iCisKKyAgICAgICAgIjA6XG4iIC8vIFRhZyAwID0gU3RhcnQgb2Yg
bG9vcCBvdmVyIDMyIGJpdHMuCisgICAgICAgICJjYnogICAgcjMsIDJmXG4iCisgICAgICAgICJs
ZHIgICAgcjksIFslW2FdXSwgIzRcbiIKKyAgICAgICAgInN1YiAgICByMywgIzFcbiIKKyAgICAg
ICAgImxkciAgICByMTIsIFslW2JdXSwgIzRcbiIKKyAgICAgICAgImNtcCAgICByOSwgcjEyXG4i
CisgICAgICAgICJiZXEgICAgMGJcbiIKKyAgICAgICAgImIgICAgICA2NmZcbiIKKworICAgICAg
ICAiMjpcbiIgLy8gVGFnIDIgPSBFbmQgb2YgbG9vcCBvdmVyIDMyIGJpdHMsIGNoZWNrIGZvciBw
YWlyIG9mIGNoYXJhY3RlcnMuCisgICAgICAgICJ0c3QgICAgJVtsZW5ndGhdLCAjMlxuIgorICAg
ICAgICAiYmVxICAgIDFmXG4iCisgICAgICAgICJsZHJoICAgcjksIFslW2FdXSwgIzJcbiIKKyAg
ICAgICAgImxkcmggICByMTIsIFslW2JdXSwgIzJcbiIKKyAgICAgICAgImNtcCAgICByOSwgcjEy
XG4iCisgICAgICAgICJibmUgICAgNjZmXG4iCisKKyAgICAgICAgIjE6XG4iIC8vIFRhZyAxID0g
Q2hlY2sgZm9yIGEgc2luZ2xlIGNoYXJhY3RlciBsZWZ0LgorICAgICAgICAidHN0ICAgICVbbGVu
Z3RoXSwgIzFcbiIKKyAgICAgICAgImJlcSAgICA0MmZcbiIKKyAgICAgICAgImxkcmIgICByOSwg
WyVbYV1dXG4iCisgICAgICAgICJsZHJiICAgcjEyLCBbJVtiXV1cbiIKKyAgICAgICAgImNtcCAg
ICByOSwgcjEyXG4iCisgICAgICAgICJibmUgICAgNjZmXG4iCisKKyAgICAgICAgIjQyOlxuIiAv
LyBUYWcgNDIgPSBTdWNjZXNzLgorICAgICAgICAibW92ICAgICVbaXNFcXVhbF0sICMxXG4iCisg
ICAgICAgICI2NjpcbiIgLy8gVGFnIDY2ID0gRW5kIHdpdGhvdXQgY2hhbmdpbmcgaXNFcXVhbCB0
byAxLgorICAgICAgICA6IFtpc0VxdWFsXSIrciIoaXNFcXVhbCksIFthXSIrciIoYSksIFtiXSIr
ciIoYikKKyAgICAgICAgOiBbbGVuZ3RoXSJyIihsZW5ndGgpCisgICAgICAgIDogInIzIiwgInI5
IiwgInIxMiIKKyAgICAgICAgKTsKKyAgICByZXR1cm4gaXNFcXVhbDsKK30KKworQUxXQVlTX0lO
TElORSBib29sIGVxdWFsKGNvbnN0IFVDaGFyKiBhLCBjb25zdCBVQ2hhciogYiwgdW5zaWduZWQg
bGVuZ3RoKQoreworICAgIHJldHVybiAhbWVtY21wKGEsIGIsIGxlbmd0aCk7Cit9CisjZWxpZiBQ
TEFURk9STShJT1MpICYmIFdURl9BUk1fQVJDSF9BVF9MRUFTVCg3KQorQUxXQVlTX0lOTElORSBi
b29sIGVxdWFsKGNvbnN0IExDaGFyKiBhLCBjb25zdCBMQ2hhciogYiwgdW5zaWduZWQgbGVuZ3Ro
KQoreworICAgIHJldHVybiAhbWVtY21wKGEsIGIsIGxlbmd0aCk7Cit9CisKK0FMV0FZU19JTkxJ
TkUgYm9vbCBlcXVhbChjb25zdCBVQ2hhciogYSwgY29uc3QgVUNoYXIqIGIsIHVuc2lnbmVkIGxl
bmd0aCkKK3sKKyAgICByZXR1cm4gIW1lbWNtcChhLCBiLCBsZW5ndGgpOworfQogI2Vsc2UKIEFM
V0FZU19JTkxJTkUgYm9vbCBlcXVhbChjb25zdCBMQ2hhciogYSwgY29uc3QgTENoYXIqIGIsIHVu
c2lnbmVkIGxlbmd0aCkKIHsK
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>192876</attachid>
            <date>2013-03-13 00:18:32 -0700</date>
            <delta_ts>2013-03-13 00:18:32 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-112202-20130313001428.patch</filename>
            <type>text/plain</type>
            <size>4418</size>
            <attacher name="Benjamin Poulain">benjamin</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTQ1NjgxCmRpZmYgLS1naXQgYS9Tb3VyY2UvV1RGL0NoYW5n
ZUxvZyBiL1NvdXJjZS9XVEYvQ2hhbmdlTG9nCmluZGV4IGU5OGRhNTk2ZWY3M2Y1Mjg5ZDA0ODVl
MGRhNTA5NjIzMzY2M2ZmMzAuLmVmZWMwNTM4ZjQ0MzYxYTk5NjU5NDQxMzA5ZDdiNDdiZWEzNzYw
YjEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XVEYvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9XVEYvQ2hh
bmdlTG9nCkBAIC0xLDMgKzEsMTcgQEAKKzIwMTMtMDMtMTIgIEJlbmphbWluIFBvdWxhaW4gIDxi
cG91bGFpbkBhcHBsZS5jb20+CisKKyAgICAgICAgW2lPU10gQWRkIG9wdGltaXplZCB2ZXJzaW9u
IG9mIFN0cmluZ0ltcGwncyBlcXVhbChMQ2hhciosTENoYXIqKSBmb3IgQXBwbGUgQ1BVcworICAg
ICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTEyMjAyCisKKyAg
ICAgICAgUmV2aWV3ZWQgYnkgR2F2aW4gQmFycmFjbG91Z2guCisKKyAgICAgICAgKiBTb3VyY2Uv
V1RGL3d0Zi9QbGF0Zm9ybS5oOgorICAgICAgICBNYWtlIHRoZSBtYWNybyBXVEZfQVJNX0FSQ0hf
VkVSU0lPTiB2YWxpZCBvbiBhbnkgYXJjaGl0ZWN0dXJlLgorICAgICAgICAqIHd0Zi90ZXh0L1N0
cmluZ0ltcGwuaDoKKyAgICAgICAgKFdURjo6ZXF1YWwpOgorICAgICAgICBPbiBBUk12N1MsIHRo
ZSBuZXcgdmVyc2lvbiBpcyBhYm91dCAyNSUgcGVyY2VudCBmYXN0ZXIgdGhhbiB0aGUgc2ltcGxl
IGxvb3AuCisgICAgICAgIE9uIEFSTXY3IGNsYXNzaWMsIG1lbWNtcCBpcyBhIGxpdHRsZSBmYXN0
ZXIgdGhhbiB0aGUgc2ltcGxlIGxvb3Agb24gQXBwbGUgQTUuCisKIDIwMTMtMDMtMTIgIEdlb2Zm
cmV5IEdhcmVuICA8Z2dhcmVuQGFwcGxlLmNvbT4KIAogICAgICAgICBVbnJldmlld2VkIGF0dGVt
cHRlZCBXaW5kb3dzIGJ1aWxkIGZpeCBhZnRlciBodHRwOi8vdHJhYy53ZWJraXQub3JnL2NoYW5n
ZXNldC8xNDU1OTIuCmRpZmYgLS1naXQgYS9Tb3VyY2UvV1RGL3d0Zi9QbGF0Zm9ybS5oIGIvU291
cmNlL1dURi93dGYvUGxhdGZvcm0uaAppbmRleCA5MzAxZjEwNTUxNWQxNGU2Y2QyNzUxNTBhZWVk
ZTAwZDIyZDRjZDk1Li5iZDNmY2M5ODQ1NzlkZDNmZDQ0MjNjMWQ1MzNmZjY0YWQ0MWZiZDQyIDEw
MDY0NAotLS0gYS9Tb3VyY2UvV1RGL3d0Zi9QbGF0Zm9ybS5oCisrKyBiL1NvdXJjZS9XVEYvd3Rm
L1BsYXRmb3JtLmgKQEAgLTEsNSArMSw1IEBACiAvKgotICogQ29weXJpZ2h0IChDKSAyMDA2LCAy
MDA3LCAyMDA4LCAyMDA5IEFwcGxlIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKyAqIENvcHly
aWdodCAoQykgMjAwNiwgMjAwNywgMjAwOCwgMjAwOSwgMjAxMyBBcHBsZSBJbmMuIEFsbCByaWdo
dHMgcmVzZXJ2ZWQuCiAgKiBDb3B5cmlnaHQgKEMpIDIwMDctMjAwOSBUb3JjaCBNb2JpbGUsIElu
Yy4KICAqIENvcHlyaWdodCAoQykgMjAxMCwgMjAxMSBSZXNlYXJjaCBJbiBNb3Rpb24gTGltaXRl
ZC4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KICAqCkBAIC0xNjMsNiArMTYzLDggQEAKICNlbmRpZgog
CiAvKiBDUFUoQVJNKSAtIEFSTSwgYW55IHZlcnNpb24qLworI2RlZmluZSBXVEZfQVJNX0FSQ0hf
QVRfTEVBU1QoTikgKENQVShBUk0pICYmIGRlZmluZWQoV1RGX0FSTV9BUkNIX1ZFUlNJT04pICYm
IFdURl9BUk1fQVJDSF9WRVJTSU9OID49IE4pCisKICNpZiAgIGRlZmluZWQoYXJtKSBcCiAgICAg
fHwgZGVmaW5lZChfX2FybV9fKSBcCiAgICAgfHwgZGVmaW5lZChBUk0pIFwKQEAgLTE4NSw4ICsx
ODcsNiBAQAogCiAjZW5kaWYKIAotI2RlZmluZSBXVEZfQVJNX0FSQ0hfQVRfTEVBU1QoTikgKENQ
VShBUk0pICYmIFdURl9BUk1fQVJDSF9WRVJTSU9OID49IE4pCi0KIC8qIFNldCBXVEZfQVJNX0FS
Q0hfVkVSU0lPTiAqLwogI2lmICAgZGVmaW5lZChfX0FSTV9BUkNIXzRfXykgXAogICAgIHx8IGRl
ZmluZWQoX19BUk1fQVJDSF80VF9fKSBcCmRpZmYgLS1naXQgYS9Tb3VyY2UvV1RGL3d0Zi90ZXh0
L1N0cmluZ0ltcGwuaCBiL1NvdXJjZS9XVEYvd3RmL3RleHQvU3RyaW5nSW1wbC5oCmluZGV4IGY1
ZGI2OGU0M2YwODVmMDM4NWIxYTM0NjcwYTE4OTc5OWQ1NGQwMWUuLmNiM2YwYmY5ZmM3ZmIxZDUw
MGY2YmE1ZWIyN2FmMjcyZGNkOGJmNGIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XVEYvd3RmL3RleHQv
U3RyaW5nSW1wbC5oCisrKyBiL1NvdXJjZS9XVEYvd3RmL3RleHQvU3RyaW5nSW1wbC5oCkBAIC0x
LDYgKzEsNiBAQAogLyoKICAqIENvcHlyaWdodCAoQykgMTk5OSBMYXJzIEtub2xsIChrbm9sbEBr
ZGUub3JnKQotICogQ29weXJpZ2h0IChDKSAyMDA1LCAyMDA2LCAyMDA3LCAyMDA4LCAyMDA5LCAy
MDEwIEFwcGxlIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKyAqIENvcHlyaWdodCAoQykgMjAw
NSwgMjAwNiwgMjAwNywgMjAwOCwgMjAwOSwgMjAxMCwgMjAxMyBBcHBsZSBJbmMuIEFsbCByaWdo
dHMgcmVzZXJ2ZWQuCiAgKiBDb3B5cmlnaHQgKEMpIDIwMDkgR29vZ2xlIEluYy4gQWxsIHJpZ2h0
cyByZXNlcnZlZC4KICAqCiAgKiBUaGlzIGxpYnJhcnkgaXMgZnJlZSBzb2Z0d2FyZTsgeW91IGNh
biByZWRpc3RyaWJ1dGUgaXQgYW5kL29yCkBAIC05MTcsNiArOTE3LDYxIEBAIEFMV0FZU19JTkxJ
TkUgYm9vbCBlcXVhbChjb25zdCBVQ2hhciogYSwgY29uc3QgVUNoYXIqIGIsIHVuc2lnbmVkIGxl
bmd0aCkKICAgICAKICAgICByZXR1cm4gdHJ1ZTsKIH0KKyNlbGlmIENQVShBUFBMRV9BUk1WN1Mp
CitBTFdBWVNfSU5MSU5FIGJvb2wgZXF1YWwoY29uc3QgTENoYXIqIGEsIGNvbnN0IExDaGFyKiBi
LCB1bnNpZ25lZCBsZW5ndGgpCit7CisgICAgYm9vbCBpc0VxdWFsID0gZmFsc2U7CisgICAgYXNt
KCJsc3IgICAgcjMsICVbbGVuZ3RoXSwgIzJcbiIKKworICAgICAgICAiMDpcbiIgLy8gVGFnIDAg
PSBTdGFydCBvZiBsb29wIG92ZXIgMzIgYml0cy4KKyAgICAgICAgImNieiAgICByMywgMmZcbiIK
KyAgICAgICAgImxkciAgICByOSwgWyVbYV1dLCAjNFxuIgorICAgICAgICAic3ViICAgIHIzLCAj
MVxuIgorICAgICAgICAibGRyICAgIHIxMiwgWyVbYl1dLCAjNFxuIgorICAgICAgICAiY21wICAg
IHI5LCByMTJcbiIKKyAgICAgICAgImJlcSAgICAwYlxuIgorICAgICAgICAiYiAgICAgIDY2Zlxu
IgorCisgICAgICAgICIyOlxuIiAvLyBUYWcgMiA9IEVuZCBvZiBsb29wIG92ZXIgMzIgYml0cywg
Y2hlY2sgZm9yIHBhaXIgb2YgY2hhcmFjdGVycy4KKyAgICAgICAgInRzdCAgICAlW2xlbmd0aF0s
ICMyXG4iCisgICAgICAgICJiZXEgICAgMWZcbiIKKyAgICAgICAgImxkcmggICByOSwgWyVbYV1d
LCAjMlxuIgorICAgICAgICAibGRyaCAgIHIxMiwgWyVbYl1dLCAjMlxuIgorICAgICAgICAiY21w
ICAgIHI5LCByMTJcbiIKKyAgICAgICAgImJuZSAgICA2NmZcbiIKKworICAgICAgICAiMTpcbiIg
Ly8gVGFnIDEgPSBDaGVjayBmb3IgYSBzaW5nbGUgY2hhcmFjdGVyIGxlZnQuCisgICAgICAgICJ0
c3QgICAgJVtsZW5ndGhdLCAjMVxuIgorICAgICAgICAiYmVxICAgIDQyZlxuIgorICAgICAgICAi
bGRyYiAgIHI5LCBbJVthXV1cbiIKKyAgICAgICAgImxkcmIgICByMTIsIFslW2JdXVxuIgorICAg
ICAgICAiY21wICAgIHI5LCByMTJcbiIKKyAgICAgICAgImJuZSAgICA2NmZcbiIKKworICAgICAg
ICAiNDI6XG4iIC8vIFRhZyA0MiA9IFN1Y2Nlc3MuCisgICAgICAgICJtb3YgICAgJVtpc0VxdWFs
XSwgIzFcbiIKKyAgICAgICAgIjY2OlxuIiAvLyBUYWcgNjYgPSBFbmQgd2l0aG91dCBjaGFuZ2lu
ZyBpc0VxdWFsIHRvIDEuCisgICAgICAgIDogW2lzRXF1YWxdIityIihpc0VxdWFsKSwgW2FdIity
IihhKSwgW2JdIityIihiKQorICAgICAgICA6IFtsZW5ndGhdInIiKGxlbmd0aCkKKyAgICAgICAg
OiAicjMiLCAicjkiLCAicjEyIgorICAgICAgICApOworICAgIHJldHVybiBpc0VxdWFsOworfQor
CitBTFdBWVNfSU5MSU5FIGJvb2wgZXF1YWwoY29uc3QgVUNoYXIqIGEsIGNvbnN0IFVDaGFyKiBi
LCB1bnNpZ25lZCBsZW5ndGgpCit7CisgICAgcmV0dXJuICFtZW1jbXAoYSwgYiwgbGVuZ3RoKTsK
K30KKyNlbGlmIFBMQVRGT1JNKElPUykgJiYgV1RGX0FSTV9BUkNIX0FUX0xFQVNUKDcpCitBTFdB
WVNfSU5MSU5FIGJvb2wgZXF1YWwoY29uc3QgTENoYXIqIGEsIGNvbnN0IExDaGFyKiBiLCB1bnNp
Z25lZCBsZW5ndGgpCit7CisgICAgcmV0dXJuICFtZW1jbXAoYSwgYiwgbGVuZ3RoKTsKK30KKwor
QUxXQVlTX0lOTElORSBib29sIGVxdWFsKGNvbnN0IFVDaGFyKiBhLCBjb25zdCBVQ2hhciogYiwg
dW5zaWduZWQgbGVuZ3RoKQoreworICAgIHJldHVybiAhbWVtY21wKGEsIGIsIGxlbmd0aCk7Cit9
CiAjZWxzZQogQUxXQVlTX0lOTElORSBib29sIGVxdWFsKGNvbnN0IExDaGFyKiBhLCBjb25zdCBM
Q2hhciogYiwgdW5zaWduZWQgbGVuZ3RoKQogewo=
</data>

          </attachment>
      

    </bug>

</bugzilla>