<?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>138544</bug_id>
          
          <creation_ts>2014-11-09 09:32:20 -0800</creation_ts>
          <short_desc>Exception fuzz helper generates incorrect target range</short_desc>
          <delta_ts>2014-11-09 23:59:33 -0800</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>Tools / Tests</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></keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Akos Kiss">akiss</reporter>
          <assigned_to name="Nobody">webkit-unassigned</assigned_to>
          <cc>buildbot</cc>
    
    <cc>commit-queue</cc>
    
    <cc>darin</cc>
    
    <cc>fpizlo</cc>
    
    <cc>rniwa</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1047394</commentid>
    <comment_count>0</comment_count>
    <who name="Akos Kiss">akiss</who>
    <bug_when>2014-11-09 09:32:20 -0800</bug_when>
    <thetext>Currently, the jsc-stress-test-helpers/js-exception-fuzz script generates targets in the range of 0..($checkCount-1). However, target 0 is never hit, while target 1 is always outside of the outermost try block of the tests, which therefore prints unexpected output and results in false failures when fired at. Additionally, target $checkCount is never generated.

An example failure report for target 1:

exceptionFuzz.yaml/exceptionFuzz/3d-cube.js.exception-fuzz: iteration(62) target(1): Exception: Error: Exception Fuzz
exceptionFuzz.yaml/exceptionFuzz/3d-cube.js.exception-fuzz: iteration(62) target(1): global code@3d-cube.js:7:18
exceptionFuzz.yaml/exceptionFuzz/3d-cube.js.exception-fuzz: Failure for command ../../../.vm/JavaScriptCore.framework/Resources/jsc 3d-cube.js with seed 1415502219, repeat 100: Unexpected state thrown at end for target 1 at ../../../.helpers/js-exception-fuzz line 67, &lt;$testInput&gt; line 4.
exceptionFuzz.yaml/exceptionFuzz/3d-cube.js.exception-fuzz: ERROR: Unexpected exit code: 255

The above output is for 3d-cube.js, but all 3 tests in tests/exceptionFuzz can fail like this. Target 1 can be manually triggered by the command:
WebKitBuild/Debug/bin/jsc --enableExceptionFuzz=true --fireExceptionFuzzAt=1 Source/JavaScriptCore/tests/exceptionFuzz/3d-cube.js</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1047395</commentid>
    <comment_count>1</comment_count>
      <attachid>241254</attachid>
    <who name="Akos Kiss">akiss</who>
    <bug_when>2014-11-09 09:33:58 -0800</bug_when>
    <thetext>Created attachment 241254
Proposed patch.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1047396</commentid>
    <comment_count>2</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2014-11-09 09:35:46 -0800</bug_when>
    <thetext>Attachment 241254 did not pass style-queue:


ERROR: Tools/ChangeLog:1:  ChangeLog entry has no bug number  [changelog/bugnumber] [5]
Total errors found: 1 in 2 files


If any of these errors are false positives, please file a bug against check-webkit-style.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1047397</commentid>
    <comment_count>3</comment_count>
      <attachid>241254</attachid>
    <who name="Darin Adler">darin</who>
    <bug_when>2014-11-09 09:56:34 -0800</bug_when>
    <thetext>Comment on attachment 241254
Proposed patch.

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

&gt; Tools/ChangeLog:4
&gt; +        Need the bug URL (OOPS!).

I don’t think we can land this with the commit queue with this line like this.

&gt; Tools/ChangeLog:12
&gt; +        Currently, the script generates exception fuzz targets in the range of
&gt; +        0..($checkCount-1). However, target 0 is never hit, while target 1 is
&gt; +        always outside of the outermost try block of the tests, which therefore
&gt; +        prints unexpected output and results in false failures when fired at.
&gt; +        Additionally, target $checkCount is never generated.

This looks right to me, but I am not sufficiently familiar with the exception system to check if this paragraph is correct or not. The code does correctly implement what this paragraph describes.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1047401</commentid>
    <comment_count>4</comment_count>
      <attachid>241256</attachid>
    <who name="Akos Kiss">akiss</who>
    <bug_when>2014-11-09 11:01:49 -0800</bug_when>
    <thetext>Created attachment 241256
Updated patch

Fixed the ChangeLog. My bad. Sorry.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1047488</commentid>
    <comment_count>5</comment_count>
      <attachid>241256</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2014-11-09 23:59:30 -0800</bug_when>
    <thetext>Comment on attachment 241256
Updated patch

Clearing flags on attachment: 241256

Committed r175801: &lt;http://trac.webkit.org/changeset/175801&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1047489</commentid>
    <comment_count>6</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2014-11-09 23:59:33 -0800</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>241254</attachid>
            <date>2014-11-09 09:33:58 -0800</date>
            <delta_ts>2014-11-09 11:01:49 -0800</delta_ts>
            <desc>Proposed patch.</desc>
            <filename>exfuzz-helper-range-fix-v1.patch</filename>
            <type>text/plain</type>
            <size>1604</size>
            <attacher name="Akos Kiss">akiss</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1Rvb2xzL0NoYW5nZUxvZyBiL1Rvb2xzL0NoYW5nZUxvZwppbmRleCAzNzk0
MjJhLi5jZTBlMTA5IDEwMDY0NAotLS0gYS9Ub29scy9DaGFuZ2VMb2cKKysrIGIvVG9vbHMvQ2hh
bmdlTG9nCkBAIC0xLDMgKzEsMjEgQEAKKzIwMTQtMTEtMDkgIEFrb3MgS2lzcyAgPGFraXNzQGlu
Zi51LXN6ZWdlZC5odT4KKworICAgICAgICBGaXggdGhlIGV4Y2VwdGlvbiBmdXp6IGhlbHBlciB0
byBnZW5lcmF0ZSB0YXJnZXRzIGluIHRoZSBjb3JyZWN0IHJhbmdlCisgICAgICAgIE5lZWQgdGhl
IGJ1ZyBVUkwgKE9PUFMhKS4KKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4K
KworICAgICAgICBDdXJyZW50bHksIHRoZSBzY3JpcHQgZ2VuZXJhdGVzIGV4Y2VwdGlvbiBmdXp6
IHRhcmdldHMgaW4gdGhlIHJhbmdlIG9mCisgICAgICAgIDAuLigkY2hlY2tDb3VudC0xKS4gSG93
ZXZlciwgdGFyZ2V0IDAgaXMgbmV2ZXIgaGl0LCB3aGlsZSB0YXJnZXQgMSBpcworICAgICAgICBh
bHdheXMgb3V0c2lkZSBvZiB0aGUgb3V0ZXJtb3N0IHRyeSBibG9jayBvZiB0aGUgdGVzdHMsIHdo
aWNoIHRoZXJlZm9yZQorICAgICAgICBwcmludHMgdW5leHBlY3RlZCBvdXRwdXQgYW5kIHJlc3Vs
dHMgaW4gZmFsc2UgZmFpbHVyZXMgd2hlbiBmaXJlZCBhdC4KKyAgICAgICAgQWRkaXRpb25hbGx5
LCB0YXJnZXQgJGNoZWNrQ291bnQgaXMgbmV2ZXIgZ2VuZXJhdGVkLgorCisgICAgICAgIFRoaXMg
cGF0Y2ggZml4ZXMgdGhlIHNjcmlwdCB0byBnZW5lcmF0ZSB0YXJnZXRzIGluIHRoZSByYW5nZSBv
ZgorICAgICAgICAyLi4kY2hlY2tDb3VudC4KKworICAgICAgICAqIFNjcmlwdHMvanNjLXN0cmVz
cy10ZXN0LWhlbHBlcnMvanMtZXhjZXB0aW9uLWZ1eno6CisKIDIwMTQtMTEtMDggIENhcmxvcyBH
YXJjaWEgQ2FtcG9zICA8Y2dhcmNpYUBpZ2FsaWEuY29tPgogCiAgICAgICAgIFtHVEtdIFJ1biBs
YXlvdXQgdGVzdHMgdXNpbmcgdGhlIG5ldHdvcmsgcHJvY2VzcwpkaWZmIC0tZ2l0IGEvVG9vbHMv
U2NyaXB0cy9qc2Mtc3RyZXNzLXRlc3QtaGVscGVycy9qcy1leGNlcHRpb24tZnV6eiBiL1Rvb2xz
L1NjcmlwdHMvanNjLXN0cmVzcy10ZXN0LWhlbHBlcnMvanMtZXhjZXB0aW9uLWZ1enoKaW5kZXgg
NjNkMGE3My4uNmIxZjAyZiAxMDA3NTUKLS0tIGEvVG9vbHMvU2NyaXB0cy9qc2Mtc3RyZXNzLXRl
c3QtaGVscGVycy9qcy1leGNlcHRpb24tZnV6egorKysgYi9Ub29scy9TY3JpcHRzL2pzYy1zdHJl
c3MtdGVzdC1oZWxwZXJzL2pzLWV4Y2VwdGlvbi1mdXp6CkBAIC0xMDAsNyArMTAwLDcgQEAgaWYg
KCEkY2hlY2tDb3VudCkgewogc3JhbmQoJHNlZWQpOwogCiBmb3IgKG15ICRpdGVyYXRpb24gPSAw
OyAkaXRlcmF0aW9uIDwgJHJlcGVhdDsgKyskaXRlcmF0aW9uKSB7Ci0gICAgbXkgJHRhcmdldCA9
IGludChyYW5kKCkgKiAkY2hlY2tDb3VudCk7CisgICAgbXkgJHRhcmdldCA9IGludChyYW5kKCkg
KiAoJGNoZWNrQ291bnQgLSAxKSkgKyAyOwogICAgIGlmICgkdmVyYm9zZSkgewogICAgICAgICBw
cmludCAiaXRlcmF0aW9uKCRpdGVyYXRpb24pIHRhcmdldCgkdGFyZ2V0KTogUnVubmluZy5cbiI7
CiAgICAgfQo=
</data>
<flag name="commit-queue"
          id="266093"
          type_id="3"
          status="-"
          setter="darin"
    />
          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>241256</attachid>
            <date>2014-11-09 11:01:49 -0800</date>
            <delta_ts>2014-11-09 23:59:30 -0800</delta_ts>
            <desc>Updated patch</desc>
            <filename>exfuzz-helper-range-fix-v2.patch</filename>
            <type>text/plain</type>
            <size>1625</size>
            <attacher name="Akos Kiss">akiss</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1Rvb2xzL0NoYW5nZUxvZyBiL1Rvb2xzL0NoYW5nZUxvZwppbmRleCAzNzk0
MjJhLi4zN2RkNzI5IDEwMDY0NAotLS0gYS9Ub29scy9DaGFuZ2VMb2cKKysrIGIvVG9vbHMvQ2hh
bmdlTG9nCkBAIC0xLDMgKzEsMjEgQEAKKzIwMTQtMTEtMDkgIEFrb3MgS2lzcyAgPGFraXNzQGlu
Zi51LXN6ZWdlZC5odT4KKworICAgICAgICBGaXggdGhlIGV4Y2VwdGlvbiBmdXp6IGhlbHBlciB0
byBnZW5lcmF0ZSB0YXJnZXRzIGluIHRoZSBjb3JyZWN0IHJhbmdlCisgICAgICAgIGh0dHBzOi8v
YnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xMzg1NDQKKworICAgICAgICBSZXZpZXdl
ZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBDdXJyZW50bHksIHRoZSBzY3JpcHQgZ2Vu
ZXJhdGVzIGV4Y2VwdGlvbiBmdXp6IHRhcmdldHMgaW4gdGhlIHJhbmdlIG9mCisgICAgICAgIDAu
LigkY2hlY2tDb3VudC0xKS4gSG93ZXZlciwgdGFyZ2V0IDAgaXMgbmV2ZXIgaGl0LCB3aGlsZSB0
YXJnZXQgMSBpcworICAgICAgICBhbHdheXMgb3V0c2lkZSBvZiB0aGUgb3V0ZXJtb3N0IHRyeSBi
bG9jayBvZiB0aGUgdGVzdHMsIHdoaWNoIHRoZXJlZm9yZQorICAgICAgICBwcmludHMgdW5leHBl
Y3RlZCBvdXRwdXQgYW5kIHJlc3VsdHMgaW4gZmFsc2UgZmFpbHVyZXMgd2hlbiBmaXJlZCBhdC4K
KyAgICAgICAgQWRkaXRpb25hbGx5LCB0YXJnZXQgJGNoZWNrQ291bnQgaXMgbmV2ZXIgZ2VuZXJh
dGVkLgorCisgICAgICAgIFRoaXMgcGF0Y2ggZml4ZXMgdGhlIHNjcmlwdCB0byBnZW5lcmF0ZSB0
YXJnZXRzIGluIHRoZSByYW5nZSBvZgorICAgICAgICAyLi4kY2hlY2tDb3VudC4KKworICAgICAg
ICAqIFNjcmlwdHMvanNjLXN0cmVzcy10ZXN0LWhlbHBlcnMvanMtZXhjZXB0aW9uLWZ1eno6CisK
IDIwMTQtMTEtMDggIENhcmxvcyBHYXJjaWEgQ2FtcG9zICA8Y2dhcmNpYUBpZ2FsaWEuY29tPgog
CiAgICAgICAgIFtHVEtdIFJ1biBsYXlvdXQgdGVzdHMgdXNpbmcgdGhlIG5ldHdvcmsgcHJvY2Vz
cwpkaWZmIC0tZ2l0IGEvVG9vbHMvU2NyaXB0cy9qc2Mtc3RyZXNzLXRlc3QtaGVscGVycy9qcy1l
eGNlcHRpb24tZnV6eiBiL1Rvb2xzL1NjcmlwdHMvanNjLXN0cmVzcy10ZXN0LWhlbHBlcnMvanMt
ZXhjZXB0aW9uLWZ1enoKaW5kZXggNjNkMGE3My4uNmIxZjAyZiAxMDA3NTUKLS0tIGEvVG9vbHMv
U2NyaXB0cy9qc2Mtc3RyZXNzLXRlc3QtaGVscGVycy9qcy1leGNlcHRpb24tZnV6egorKysgYi9U
b29scy9TY3JpcHRzL2pzYy1zdHJlc3MtdGVzdC1oZWxwZXJzL2pzLWV4Y2VwdGlvbi1mdXp6CkBA
IC0xMDAsNyArMTAwLDcgQEAgaWYgKCEkY2hlY2tDb3VudCkgewogc3JhbmQoJHNlZWQpOwogCiBm
b3IgKG15ICRpdGVyYXRpb24gPSAwOyAkaXRlcmF0aW9uIDwgJHJlcGVhdDsgKyskaXRlcmF0aW9u
KSB7Ci0gICAgbXkgJHRhcmdldCA9IGludChyYW5kKCkgKiAkY2hlY2tDb3VudCk7CisgICAgbXkg
JHRhcmdldCA9IGludChyYW5kKCkgKiAoJGNoZWNrQ291bnQgLSAxKSkgKyAyOwogICAgIGlmICgk
dmVyYm9zZSkgewogICAgICAgICBwcmludCAiaXRlcmF0aW9uKCRpdGVyYXRpb24pIHRhcmdldCgk
dGFyZ2V0KTogUnVubmluZy5cbiI7CiAgICAgfQo=
</data>

          </attachment>
      

    </bug>

</bugzilla>