<?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>38898</bug_id>
          
          <creation_ts>2010-05-11 05:03:20 -0700</creation_ts>
          <short_desc>Remove unnecessary jump in Yarr JIT&apos;s code</short_desc>
          <delta_ts>2010-05-12 04:49:59 -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>
          
          
          <everconfirmed>0</everconfirmed>
          <reporter name="Peter Varga">pvarga</reporter>
          <assigned_to name="Nobody">webkit-unassigned</assigned_to>
          <cc>barraclough</cc>
    
    <cc>ggaren</cc>
    
    <cc>zherczeg</cc>
    
    <cc>zoltan</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>223870</commentid>
    <comment_count>0</comment_count>
    <who name="Peter Varga">pvarga</who>
    <bug_when>2010-05-11 05:03:20 -0700</bug_when>
    <thetext>The Yarr JIT generates an unnecessary jump in case of greedy character and
characterclass matching when it checks the count of repetitions.
It should be removed, because it is followed by a direct jump
instead of a branch if the greedy term&apos;s quantityCount doesn&apos;t have max limit.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>223871</commentid>
    <comment_count>1</comment_count>
      <attachid>55689</attachid>
    <who name="Peter Varga">pvarga</who>
    <bug_when>2010-05-11 05:08:29 -0700</bug_when>
    <thetext>Created attachment 55689
proposed patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>224519</commentid>
    <comment_count>2</comment_count>
      <attachid>55689</attachid>
    <who name="Zoltan Horvath">zoltan</who>
    <bug_when>2010-05-12 04:40:25 -0700</bug_when>
    <thetext>Comment on attachment 55689
proposed patch

Setting cq+.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>224522</commentid>
    <comment_count>3</comment_count>
      <attachid>55689</attachid>
    <who name="Zoltan Horvath">zoltan</who>
    <bug_when>2010-05-12 04:49:50 -0700</bug_when>
    <thetext>Comment on attachment 55689
proposed patch

Clearing flags on attachment: 55689

Committed r59222: &lt;http://trac.webkit.org/changeset/59222&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>224523</commentid>
    <comment_count>4</comment_count>
    <who name="Zoltan Horvath">zoltan</who>
    <bug_when>2010-05-12 04:49:59 -0700</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>55689</attachid>
            <date>2010-05-11 05:08:29 -0700</date>
            <delta_ts>2010-05-12 04:49:49 -0700</delta_ts>
            <desc>proposed patch</desc>
            <filename>0001-Eliminate-jumps.patch</filename>
            <type>text/plain</type>
            <size>2591</size>
            <attacher name="Peter Varga">pvarga</attacher>
            
              <data encoding="base64">RnJvbSBhZjk0ZTQ5ZGY3YTU3ZTcwZjRjZjY1ZmQ3MzMyMjllNTFlMjgwOGVjIE1vbiBTZXAgMTcg
MDA6MDA6MDAgMjAwMQpGcm9tOiBQZXRlciBWYXJnYSA8cHZhcmdhQGluZi51LXN6ZWdlZC5odT4K
RGF0ZTogVHVlLCAxMSBNYXkgMjAxMCAxNDowNjo0NyArMDIwMApTdWJqZWN0OiBbUEFUQ0hdIEVs
aW1pbmF0ZSBqdW1wcwoKLS0tCiBKYXZhU2NyaXB0Q29yZS9DaGFuZ2VMb2cgICAgICAgICB8ICAg
MTMgKysrKysrKysrKysrKwogSmF2YVNjcmlwdENvcmUveWFyci9SZWdleEpJVC5jcHAgfCAgIDE0
ICsrKysrKy0tLS0tLS0tCiAyIGZpbGVzIGNoYW5nZWQsIDE5IGluc2VydGlvbnMoKyksIDggZGVs
ZXRpb25zKC0pCgpkaWZmIC0tZ2l0IGEvSmF2YVNjcmlwdENvcmUvQ2hhbmdlTG9nIGIvSmF2YVNj
cmlwdENvcmUvQ2hhbmdlTG9nCmluZGV4IDM1OWZhY2UuLjRhZjhjNGMgMTAwNjQ0Ci0tLSBhL0ph
dmFTY3JpcHRDb3JlL0NoYW5nZUxvZworKysgYi9KYXZhU2NyaXB0Q29yZS9DaGFuZ2VMb2cKQEAg
LTEsMyArMSwxNiBAQAorMjAxMC0wNS0xMSAgUGV0ZXIgVmFyZ2EgIDxwdmFyZ2FAaW5mLnUtc3pl
Z2VkLmh1PgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAg
IFJlbW92ZSBhIGRpcmVjdCBqdW1wIGluIGdlbmVyYXRlUGF0dGVybkNoYXJhY3RlckdyZWVkeSgp
IGFuZAorICAgICAgICBnZW5lcmF0ZVBhdHRlcm5DaGFyYWN0ZXJDbGFzc0dyZWVkeSgpIGZ1bmN0
aW9ucyBpZiBxdWFudGl0eUNvdW50IG9mIHRoZSB0ZXJtCisgICAgICAgIGlzIHVubGltaXRlZC4K
KyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTM4ODk4CisK
KyAgICAgICAgKiB5YXJyL1JlZ2V4SklULmNwcDoKKyAgICAgICAgKEpTQzo6WWFycjo6UmVnZXhH
ZW5lcmF0b3I6OmdlbmVyYXRlUGF0dGVybkNoYXJhY3RlckdyZWVkeSk6CisgICAgICAgIChKU0M6
OllhcnI6OlJlZ2V4R2VuZXJhdG9yOjpnZW5lcmF0ZUNoYXJhY3RlckNsYXNzR3JlZWR5KToKKwog
MjAxMC0wNS0xMCAgTGFzemxvIEdvbWJvcyAgPGxhc3psby4xLmdvbWJvc0Bub2tpYS5jb20+CiAK
ICAgICAgICAgUmV2aWV3ZWQgYnkgRGFyaW4gQWRsZXIuCmRpZmYgLS1naXQgYS9KYXZhU2NyaXB0
Q29yZS95YXJyL1JlZ2V4SklULmNwcCBiL0phdmFTY3JpcHRDb3JlL3lhcnIvUmVnZXhKSVQuY3Bw
CmluZGV4IDM0MGI1M2QuLmUzM2RiYTAgMTAwNjQ0Ci0tLSBhL0phdmFTY3JpcHRDb3JlL3lhcnIv
UmVnZXhKSVQuY3BwCisrKyBiL0phdmFTY3JpcHRDb3JlL3lhcnIvUmVnZXhKSVQuY3BwCkBAIC02
MTYsMTMgKzYxNiwxMiBAQCBjbGFzcyBSZWdleEdlbmVyYXRvciA6IHByaXZhdGUgTWFjcm9Bc3Nl
bWJsZXIgewogCiAgICAgICAgIGFkZDMyKEltbTMyKDEpLCBjb3VudFJlZ2lzdGVyKTsKICAgICAg
ICAgYWRkMzIoSW1tMzIoMSksIGluZGV4KTsKLSAgICAgICAgaWYgKHRlcm0ucXVhbnRpdHlDb3Vu
dCAhPSAweGZmZmZmZmZmKQorICAgICAgICBpZiAodGVybS5xdWFudGl0eUNvdW50ICE9IDB4ZmZm
ZmZmZmYpIHsKICAgICAgICAgICAgIGJyYW5jaDMyKE5vdEVxdWFsLCBjb3VudFJlZ2lzdGVyLCBJ
bW0zMih0ZXJtLnF1YW50aXR5Q291bnQpKS5saW5rVG8obG9vcCwgdGhpcyk7Ci0gICAgICAgIGVs
c2UKKyAgICAgICAgICAgIGZhaWx1cmVzLmFwcGVuZChqdW1wKCkpOworICAgICAgICB9IGVsc2UK
ICAgICAgICAgICAgIGp1bXAobG9vcCk7CiAKLSAgICAgICAgZmFpbHVyZXMuYXBwZW5kKGp1bXAo
KSk7Ci0KICAgICAgICAgTGFiZWwgYmFja3RyYWNrQmVnaW4odGhpcyk7CiAgICAgICAgIGxvYWRG
cm9tRnJhbWUodGVybS5mcmFtZUxvY2F0aW9uLCBjb3VudFJlZ2lzdGVyKTsKICAgICAgICAgc3Rh
dGUuanVtcFRvQmFja3RyYWNrKGJyYW5jaFRlc3QzMihaZXJvLCBjb3VudFJlZ2lzdGVyKSwgdGhp
cyk7CkBAIC03NDIsMTMgKzc0MSwxMiBAQCBjbGFzcyBSZWdleEdlbmVyYXRvciA6IHByaXZhdGUg
TWFjcm9Bc3NlbWJsZXIgewogCiAgICAgICAgIGFkZDMyKEltbTMyKDEpLCBjb3VudFJlZ2lzdGVy
KTsKICAgICAgICAgYWRkMzIoSW1tMzIoMSksIGluZGV4KTsKLSAgICAgICAgaWYgKHRlcm0ucXVh
bnRpdHlDb3VudCAhPSAweGZmZmZmZmZmKQorICAgICAgICBpZiAodGVybS5xdWFudGl0eUNvdW50
ICE9IDB4ZmZmZmZmZmYpIHsKICAgICAgICAgICAgIGJyYW5jaDMyKE5vdEVxdWFsLCBjb3VudFJl
Z2lzdGVyLCBJbW0zMih0ZXJtLnF1YW50aXR5Q291bnQpKS5saW5rVG8obG9vcCwgdGhpcyk7Ci0g
ICAgICAgIGVsc2UKKyAgICAgICAgICAgIGZhaWx1cmVzLmFwcGVuZChqdW1wKCkpOworICAgICAg
ICB9IGVsc2UKICAgICAgICAgICAgIGp1bXAobG9vcCk7CiAKLSAgICAgICAgZmFpbHVyZXMuYXBw
ZW5kKGp1bXAoKSk7Ci0KICAgICAgICAgTGFiZWwgYmFja3RyYWNrQmVnaW4odGhpcyk7CiAgICAg
ICAgIGxvYWRGcm9tRnJhbWUodGVybS5mcmFtZUxvY2F0aW9uLCBjb3VudFJlZ2lzdGVyKTsKICAg
ICAgICAgc3RhdGUuanVtcFRvQmFja3RyYWNrKGJyYW5jaFRlc3QzMihaZXJvLCBjb3VudFJlZ2lz
dGVyKSwgdGhpcyk7Ci0tIAoxLjYuNC40Cgo=
</data>

          </attachment>
      

    </bug>

</bugzilla>