Bug 116878 - fourthTier: fast/js should have a way of running tests long enough to wait for the concurrent JIT to tier up
Summary: fourthTier: fast/js should have a way of running tests long enough to wait fo...
Status: RESOLVED FIXED
Alias: None
Product: WebKit
Classification: Unclassified
Component: Tools / Tests (show other bugs)
Version: 528+ (Nightly build)
Hardware: All All
: P2 Normal
Assignee: Filip Pizlo
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2013-05-28 11:59 PDT by Filip Pizlo
Modified: 2013-05-28 12:37 PDT (History)
7 users (show)

See Also:


Attachments
Patch (9.98 KB, patch)
2013-05-28 12:14 PDT, Filip Pizlo
oliver: review+
Details | Formatted Diff | Diff

Note You need to log in before you can comment on or make changes to this bug.
Description Filip Pizlo 2013-05-28 11:59:25 PDT
This bug will just implement the facility and convert one test to use the facility, and later I'll work on converting all of the fast/js/dfg-* tests.
Comment 1 Filip Pizlo 2013-05-28 12:07:35 PDT
Here's what failure looks like.  Note that this test would have passed a bunch of calls as well, but we don't show passes now, because the number of passes is variable and so it would screw up the text diff.

[pizlo@bigmac OpenSource] DYLD_FRAMEWORK_PATH=WebKitBuild/Debug/ WebKitBuild/Debug/DumpRenderTree LayoutTests/fast/js/dfg-arguments-osr-exit-multiple-blocks.html 
Content-Type: text/plain
DumpMalloc: 0
Tests aliased uses of 'arguments' that require reification of the Arguments object on OSR exit, in the case that there is some interesting control flow.

On success, you will see a series of "PASS" messages, followed by "TEST COMPLETE".


FAIL bar(42) should be 74. Was 32.
FAIL bar(42) should be 74. Was 32.
FAIL bar(42) should be 74. Was 32.
FAIL bar(42) should be 74. Was 32.
FAIL bar(42) should be 74. Was 32.
FAIL bar(42) should be 74. Was 32.
FAIL bar(42) should be 74. Was 32.
FAIL bar(42) should be 74. Was 32.
FAIL bar(42) should be 74. Was 32.
FAIL bar(42) should be 74. Was 32.
FAIL bar(42) should be 74. Was 32.
FAIL bar(42) should be 74. Was 32.
FAIL bar(42) should be 74. Was 32.
FAIL bar(42) should be 74. Was 32.
FAIL bar(42) should be 74. Was 32.
FAIL bar(42) should be 74. Was 32.
FAIL bar(42) should be 74. Was 32.
FAIL bar(42) should be 74. Was 32.
FAIL bar(42) should be 74. Was 32.
FAIL bar(42) should be 74. Was 32.
FAIL bar(42) should be 74. Was 32.
FAIL bar(42) should be 74. Was 32.
FAIL bar(42) should be 74. Was 32.
FAIL bar(42) should be 74. Was 32.
FAIL bar(42) should be 74. Was 32.
FAIL bar(42) should be 74. Was 32.
FAIL bar(42) should be 74. Was 32.
FAIL bar(42) should be 74. Was 32.
FAIL bar(42) should be 74. Was 32.
FAIL bar(42) should be 74. Was 32.
FAIL bar(42) should be 74. Was 32.
FAIL bar(42) should be 74. Was 32.
FAIL bar(42) should be 74. Was 32.
FAIL bar(42) should be 74. Was 32.
FAIL bar(42) should be 74. Was 32.
FAIL bar(42) should be 74. Was 32.
FAIL bar(42) should be 74. Was 32.
FAIL bar(42) should be 74. Was 32.
FAIL bar(42) should be 74. Was 32.
FAIL bar(42) should be 74. Was 32.
FAIL bar(42) should be 74. Was 32.
FAIL bar(42) should be 74. Was 32.
FAIL bar(42) should be 74. Was 32.
FAIL bar(42) should be 74. Was 32.
FAIL bar(42) should be 74. Was 32.
FAIL bar(42) should be 74. Was 32.
FAIL bar(42) should be 74. Was 32.
FAIL bar(42) should be 74. Was 32.
FAIL bar(42) should be 74. Was 32.
FAIL bar(42) should be 74. Was 32.
FAIL bar(42) should be 74. Was 32.
FAIL bar(42) should be 74. Was 32.
FAIL bar(42) should be 74. Was 32.
FAIL bar(42) should be 74. Was 32.
FAIL bar(42) should be 74. Was 32.
FAIL bar(42) should be 74. Was 32.
FAIL bar(42) should be 74. Was 32.
FAIL bar(42) should be 74. Was 32.
FAIL bar(42) should be 74. Was 32.
FAIL bar(42) should be 74. Was 32.
FAIL bar(42) should be 74. Was 32.
FAIL bar(42) should be 74. Was 32.
FAIL bar(42) should be 74. Was 32.
FAIL bar(42) should be 74. Was 32.
FAIL bar(42) should be 74. Was 32.
FAIL bar(42) should be 74. Was 32.
FAIL bar(42) should be 74. Was 32.
FAIL bar(42) should be 74. Was 32.
FAIL bar(42) should be 74. Was 32.
FAIL bar(42) should be 74. Was 32.
FAIL bar(42) should be 74. Was 32.
FAIL bar(42) should be 74. Was 32.
FAIL bar(42) should be 74. Was 32.
FAIL bar(42) should be 74. Was 32.
FAIL bar(42) should be 74. Was 32.
FAIL bar(42) should be 74. Was 32.
FAIL bar(42) should be 74. Was 32.
FAIL bar(42) should be 74. Was 32.
FAIL bar(42) should be 74. Was 32.
FAIL bar(42) should be 74. Was 32.
FAIL bar(42) should be 74. Was 32.
FAIL bar(42) should be 74. Was 32.
FAIL bar(42) should be 74. Was 32.
FAIL bar(42) should be 74. Was 32.
FAIL bar(42) should be 74. Was 32.
FAIL bar(42) should be 74. Was 32.
FAIL bar(42) should be 74. Was 32.
FAIL bar(42) should be 74. Was 32.
FAIL bar(42) should be 74. Was 32.
FAIL bar(42) should be 74. Was 32.
FAIL bar(42) should be 74. Was 32.
FAIL bar(42) should be 74. Was 32.
FAIL bar(42) should be 74. Was 32.
FAIL bar(42) should be 74. Was 32.
FAIL bar(42) should be 74. Was 32.
FAIL bar(42) should be 74. Was 32.
FAIL bar(42) should be 74. Was 32.
FAIL bar(42) should be 74. Was 32.
FAIL bar(42) should be 74. Was 32.
FAIL bar(42) should be 74. Was 32.
FAIL bar(42) should be 74. Was 32.
Passed some tests silently.

TEST COMPLETE

#EOF
Comment 2 Filip Pizlo 2013-05-28 12:08:05 PDT
And here's what passing looks like now:

[pizlo@bigmac OpenSource] DYLD_FRAMEWORK_PATH=WebKitBuild/Debug/ WebKitBuild/Debug/DumpRenderTree LayoutTests/fast/js/dfg-arguments-osr-exit-multiple-blocks.html 
Content-Type: text/plain
DumpMalloc: 0
Tests aliased uses of 'arguments' that require reification of the Arguments object on OSR exit, in the case that there is some interesting control flow.

On success, you will see a series of "PASS" messages, followed by "TEST COMPLETE".


Passed some tests silently.

TEST COMPLETE

#EOF
Comment 3 Filip Pizlo 2013-05-28 12:14:07 PDT
Created attachment 203075 [details]
Patch
Comment 4 Oliver Hunt 2013-05-28 12:17:47 PDT
Comment on attachment 203075 [details]
Patch

rs=me for the rest
Comment 5 Filip Pizlo 2013-05-28 12:37:04 PDT
Landed in http://trac.webkit.org/changeset/150825