Bug 176703

Summary: OSR exit should remove tail deleted frames from the inline call stack
Product: WebKit Reporter: Ryan Haddad <ryanhaddad>
Component: JavaScriptCoreAssignee: Saam Barati <saam>
Status: ASSIGNED ---    
Severity: Normal CC: ap, buildbot, jlewis3, keith_miller, mark.lam, msaboff, rniwa, saam, webkit-bug-importer
Priority: P2 Keywords: InRadar
Version: WebKit Nightly Build   
Hardware: Unspecified   
OS: Unspecified   
See Also: https://bugs.webkit.org/show_bug.cgi?id=176647
https://bugs.webkit.org/show_bug.cgi?id=178592
Bug Depends on: 175144    
Bug Blocks:    
Attachments:
Description Flags
dump from test run.
none
dump from test run.
none
WIP
none
WIP
none
WIP
none
WIP
none
WIP
none
WIP
buildbot: commit-queue-
Archive of layout-test-results from ews101 for mac-elcapitan
none
Archive of layout-test-results from ews105 for mac-elcapitan-wk2
none
Archive of layout-test-results from ews114 for mac-elcapitan
none
Archive of layout-test-results from ews124 for ios-simulator-wk2
none
WIP none

Description Ryan Haddad 2017-09-11 09:47:08 PDT
test262/test/language/statements/try/tco-catch.js is failing

test262.yaml/test262/test/language/statements/try/tco-catch.js.default-strict: Exception: RangeError: Maximum call stack size exceeded.
test262.yaml/test262/test/language/statements/try/tco-catch.js.default-strict: global code@tco-catch.js:23:2
Running test262.yaml/test262/test/language/statements/variable/12.2.1-20-s.js.default
Running test262.yaml/test262/test/language/statements/variable/12.2.1-20-s.js.default-strict
test262.yaml/test262/test/language/statements/try/tco-catch.js.default-strict: ERROR: Unexpected exit code: 3
FAIL: test262.yaml/test262/test/language/statements/try/tco-catch.js.default-strict

https://build.webkit.org/builders/Apple%20El%20Capitan%20Release%20Test262%20%28Tests%29/builds/3980
Comment 1 Ryan Haddad 2017-09-11 10:10:02 PDT
This started with https://trac.webkit.org/changeset/221822/webkit
Comment 2 Mark Lam 2017-09-11 10:35:53 PDT
(In reply to Ryan Haddad from comment #1)
> This started with https://trac.webkit.org/changeset/221822/webkit

This seems highly unlikely, but I'll take a look.
Comment 3 Alexey Proskuryakov 2017-09-11 15:45:37 PDT
test262 was solidly passing up to and including r221816, and this test started to fail every time starting with r221822. There aren't any substantial changes in this range other than r221822.

I think that this change should be rolled back.
Comment 4 Mark Lam 2017-09-11 15:47:15 PDT
(In reply to Alexey Proskuryakov from comment #3)
> test262 was solidly passing up to and including r221816, and this test
> started to fail every time starting with r221822. There aren't any
> substantial changes in this range other than r221822.
> 
> I think that this change should be rolled back.

No, do not roll back.  I just proved that this test was failing even on a build of r221821.  The test harness was wrongly reporting the test as passing before.  I'm going to change the expected test results.
Comment 5 Mark Lam 2017-09-11 16:07:53 PDT
(In reply to Mark Lam from comment #4)
> (In reply to Alexey Proskuryakov from comment #3)
> > test262 was solidly passing up to and including r221816, and this test
> > started to fail every time starting with r221822. There aren't any
> > substantial changes in this range other than r221822.
> > 
> > I think that this change should be rolled back.
> 
> No, do not roll back.  I just proved that this test was failing even on a
> build of r221821.  The test harness was wrongly reporting the test as
> passing before.  I'm going to change the expected test results.

Changed test expectation in http://trac.webkit.org/r221889.  I'm going to try to find the real revision that regressed this (if is a regression and not a test harness issue).
Comment 6 Mark Lam 2017-09-11 16:23:40 PDT
According to https://build.webkit.org/builders/Apple%20El%20Capitan%20Release%20Test262%20(Tests)?numbuilds=50, this test supposedly passed on r221816.

However, I did a local release build of r221816, and the test fails on it.  This is how I ran the test:
$ ./Tools/Scripts/run-jsc-stress-tests --release JSTests/test262.yaml --filter test262.yaml/test262/test/language/statements/try/tco-catch.js

This means that we cannot trust the bot's test result.
Comment 7 Mark Lam 2017-09-11 16:50:31 PDT
How to run the test locally:

$ cd OpenSource/JSTests/test262/test/language/statements/try
$ VM=/Volumes/Data/ws3/OpenSource/WebKitBuild/Release/ && JSC_validateOptions=1 JSC_dumpOptions=0 JSC_dumpGeneratedBytecodes=1 JSC_maximumInliningDepth=1 JSC_useConcurrentJIT=0 JSC_dumpGraphAtEachPhase=1 JSC_dumpDFGDisassembly=1 JSC_useFTLJIT=0 DYLD_FRAMEWORK_PATH=$VM $VM/jsc --useFTLJIT=false --useFunctionDotArguments=true --validateExceptionChecks=true --maxPerThreadStackUsage=1572864 ../../../../harness/assert.js ../../../../harness/sta.js ../../../../harness/tco-helper.js --strict-file=tco-catch.js

I'll attach the dump that results from this shortly.
Comment 8 Mark Lam 2017-09-11 16:52:01 PDT
Created attachment 320505 [details]
dump from test run.
Comment 9 Mark Lam 2017-09-11 16:55:26 PDT
Created attachment 320506 [details]
dump from test run.
Comment 10 Mark Lam 2017-09-11 17:19:03 PDT
Running the test locally on spade builds, we find that the regression started with r221196.  Assigning to Saam.
Comment 11 Saam Barati 2017-09-11 18:12:15 PDT
This looks like a preexisting issue where if we have:
foo tail calls bar
and bar is inlined into foo
and bar OSR exits.

When computing the stack for such a thing, we don't erase foo. We'll still use stack space for it. I believe this is the issue we're running into here.
Comment 12 Alexey Proskuryakov 2017-09-11 18:55:39 PDT
Mark, can you explain what the harness issue is, and file a bug about it? It sounds like a big problem if the JS test harness cannot tell fail from pass.
Comment 13 Mark Lam 2017-09-11 19:34:15 PDT
(In reply to Alexey Proskuryakov from comment #12)
> Mark, can you explain what the harness issue is, and file a bug about it? It
> sounds like a big problem if the JS test harness cannot tell fail from pass.

Saam figured it out.  The test is being run with the concurrent JIT on.  As a result, they may or may not reach DFG code.  The test only fails if it reaches DFG code.  With conditions on the bot being variable, this is what makes the test flaky.

We will probably change the test configuration to always run with the concurrent JIT off for consistency.  We'll look at that tomorrow.
Comment 14 Radar WebKit Bug Importer 2017-09-12 14:42:08 PDT
<rdar://problem/34396942>
Comment 15 Saam Barati 2017-09-12 18:24:51 PDT
Created attachment 320594 [details]
WIP

still need to try compiling it
Comment 16 Saam Barati 2017-09-12 18:37:32 PDT
Created attachment 320595 [details]
WIP

it builds and crashes
Comment 17 Saam Barati 2017-09-12 19:03:42 PDT
Created attachment 320598 [details]
WIP

The test262 test now passes. However, I need to sit down and think of all the tests I need to write, this code is pretty subtle.
Comment 18 Saam Barati 2017-09-12 19:04:42 PDT
Created attachment 320599 [details]
WIP
Comment 19 Saam Barati 2017-09-12 19:05:41 PDT
Created attachment 320600 [details]
WIP
Comment 20 Saam Barati 2017-09-12 19:06:57 PDT
Created attachment 320601 [details]
WIP

I want to run this on EWS with my logging removed.
Comment 21 Build Bot 2017-09-12 19:09:25 PDT
Attachment 320601 [details] did not pass style-queue:


ERROR: Source/JavaScriptCore/dfg/DFGSpeculativeJIT64.cpp:54:  Alphabetical sorting problem.  [build/include_order] [4]
ERROR: Source/JavaScriptCore/dfg/DFGSpeculativeJIT64.cpp:3901:  Extra space before )  [whitespace/parens] [2]
ERROR: Source/JavaScriptCore/dfg/DFGSpeculativeJIT64.cpp:3902:  Should have a space between // and comment  [whitespace/comments] [4]
ERROR: Source/JavaScriptCore/dfg/DFGSpeculativeJIT64.cpp:6056:  Should have a space between // and comment  [whitespace/comments] [4]
ERROR: Source/JavaScriptCore/dfg/DFGOSRExit.cpp:330:  Should have a space between // and comment  [whitespace/comments] [4]
ERROR: Source/JavaScriptCore/dfg/DFGOSRExit.cpp:331:  Should have a space between // and comment  [whitespace/comments] [4]
ERROR: Source/JavaScriptCore/dfg/DFGOSRExit.cpp:334:  Should have a space between // and comment  [whitespace/comments] [4]
ERROR: Source/JavaScriptCore/dfg/DFGOSRExit.cpp:336:  Should have a space between // and comment  [whitespace/comments] [4]
ERROR: Source/JavaScriptCore/dfg/DFGOSRExit.cpp:351:  Should have a space between // and comment  [whitespace/comments] [4]
ERROR: Source/JavaScriptCore/dfg/DFGOSRExit.cpp:352:  Should have a space between // and comment  [whitespace/comments] [4]
ERROR: Source/JavaScriptCore/dfg/DFGOSRExit.cpp:739:  Should have a space between // and comment  [whitespace/comments] [4]
ERROR: Source/JavaScriptCore/dfg/DFGOSRExit.cpp:753:  Should have a space between // and comment  [whitespace/comments] [4]
ERROR: Source/JavaScriptCore/dfg/DFGOSRExit.cpp:758:  Should have a space between // and comment  [whitespace/comments] [4]
ERROR: Source/JavaScriptCore/dfg/DFGOSRExit.cpp:760:  Should have a space between // and comment  [whitespace/comments] [4]
ERROR: Source/JavaScriptCore/dfg/DFGOSRExit.cpp:773:  Should have a space between // and comment  [whitespace/comments] [4]
ERROR: Source/JavaScriptCore/jit/JITOpcodes.cpp:50:  Alphabetical sorting problem.  [build/include_order] [4]
ERROR: Source/JavaScriptCore/jit/JITOpcodes.cpp:545:  Should have a space between // and comment  [whitespace/comments] [4]
ERROR: Source/JavaScriptCore/jit/JITOpcodes.cpp:547:  Should have a space between // and comment  [whitespace/comments] [4]
Total errors found: 18 in 3 files


If any of these errors are false positives, please file a bug against check-webkit-style.
Comment 22 Build Bot 2017-09-12 19:49:24 PDT
Comment on attachment 320601 [details]
WIP

Attachment 320601 [details] did not pass jsc-ews (mac):
Output: http://webkit-queues.webkit.org/results/4529708

New failing tests:
modules.yaml/modules/cyclic-may-produce-tdz.js.dfg-eager-modules
stress/modify-map-during-iteration.js.no-ftl
modules.yaml/modules/caching-should-not-make-ambiguous.js.dfg-eager-no-cjit-validate-modules
stress/map-constructor.js.dfg-eager
modules.yaml/modules/namespace-object-try-get.js.ftl-eager-no-cjit-modules
modules.yaml/modules/namespace-object-get-property.js.ftl-eager-no-cjit-modules
jsc-layout-tests.yaml/js/script-tests/regress-150336.js.layout
modules.yaml/modules/execution-order-cyclic.js.ftl-eager-no-cjit-modules
modules.yaml/modules/fallback-ambiguous.js.dfg-eager-modules
microbenchmarks/super-get-by-val-with-this-polymorphic.js.dfg-eager
modules.yaml/modules/execution-order-tree.js.ftl-eager-modules
microbenchmarks/super-get-by-id-with-this-polymorphic.js.ftl-no-cjit-no-put-stack-validate
microbenchmarks/super-get-by-val-with-this-polymorphic.js.dfg-maximal-flush-validate-no-cjit
stress/async-iteration-yield-promise.js.ftl-eager-no-cjit-b3o1
stress/import-from-eval.js.dfg-eager
stress/dont-unwind-past-vm-entry-frame.js.ftl-no-cjit-no-put-stack-validate
modules.yaml/modules/namespace-empty.js.ftl-eager-modules
stress/const-loop-semantics.js.no-llint
stress/rest-parameter-many-arguments.js.dfg-eager
modules.yaml/modules/cyclic-may-produce-tdz.js.dfg-eager-no-cjit-validate-modules
microbenchmarks/super-get-by-id-with-this-polymorphic.js.default
stress/async-iteration-async-from-sync.js.ftl-eager-no-cjit-b3o1
stress/weak-map-constructor-adder.js.ftl-eager-no-cjit-b3o1
stress/dont-unwind-past-vm-entry-frame.js.dfg-eager
microbenchmarks/super-get-by-id-with-this-polymorphic.js.dfg-maximal-flush-validate-no-cjit
modules.yaml/modules/import-error.js.ftl-eager-modules
modules.yaml/modules/namespace.js.dfg-eager-no-cjit-validate-modules
stress/async-arrow-functions-lexical-binding-in-class.js.dfg-eager
modules.yaml/modules/namespace-empty.js.dfg-eager-no-cjit-validate-modules
modules.yaml/modules/import-call.js.dfg-eager-modules
stress/spread-optimized-properly.js.dfg-eager-no-cjit-validate
modules.yaml/modules/async-function-export.js.ftl-eager-no-cjit-modules
modules.yaml/modules/exported-function-may-be-called-before-module-is-executed.js.ftl-eager-modules
microbenchmarks/rest-parameter-allocation-elimination.js.ftl-eager-no-cjit
modules.yaml/modules/module-assert-access-binding.js.dfg-eager-no-cjit-validate-modules
stress/dont-unwind-past-vm-entry-frame.js.no-ftl
stress/map-clone.js.ftl-no-cjit-no-put-stack-validate
stress/import-basic.js.ftl-eager
modules.yaml/modules/namespace-object-try-get.js.dfg-eager-no-cjit-validate-modules
stress/rest-parameter-is-destructuring.js.dfg-eager
stress/async-iteration-yield-star.js.ftl-eager
stress/async-iteration-basic.js.ftl-eager-no-cjit-b3o1
stress/async-iteration-for-await-of.js.ftl-eager
jsc-layout-tests.yaml/js/script-tests/regress-150745.js.layout-no-llint
stress/array-reverse-proxy.js.dfg-eager-no-cjit-validate
microbenchmarks/super-get-by-val-with-this-polymorphic.js.ftl-no-cjit-no-put-stack-validate
stress/async-iteration-yield-star-interface.js.ftl-eager-no-cjit
microbenchmarks/super-get-by-id-with-this-polymorphic.js.no-cjit-validate-phases
modules.yaml/modules/namespace-object-typed-array-fast-path.js.dfg-eager-no-cjit-validate-modules
modules.yaml/modules/export-default-function-name-in-class-declaration.js.dfg-eager-no-cjit-validate-modules
modules.yaml/modules/indirect-export-error.js.dfg-eager-no-cjit-validate-modules
stress/async-iteration-for-await-of.js.ftl-eager-no-cjit-b3o1
modules.yaml/modules/namespace-object-typed-array-fast-path.js.ftl-eager-no-cjit-modules
stress/dont-unwind-past-vm-entry-frame.js.dfg-maximal-flush-validate-no-cjit
microbenchmarks/super-get-by-id-with-this-monomorphic.js.ftl-no-cjit-b3o1
microbenchmarks/super-get-by-val-with-this-polymorphic.js.no-llint
modules.yaml/modules/namespace-prototype-assignment.js.dfg-eager-no-cjit-validate-modules
stress/rest-parameter-many-arguments.js.ftl-eager-no-cjit
stress/weak-set-constructor-adder.js.ftl-eager-no-cjit
modules.yaml/modules/module-assert-access-binding.js.ftl-eager-no-cjit-modules
stress/set-constructor.js.dfg-eager
modules.yaml/modules/execution-order-depth.js.dfg-eager-modules
modules.yaml/modules/execution-order-tree.js.ftl-eager-no-cjit-modules
stress/async-iteration-yield-star-interface.js.ftl-eager
modules.yaml/modules/module-is-strict-code.js.ftl-eager-modules
stress/map-constructor.js.dfg-eager-no-cjit-validate
modules.yaml/modules/fallback-ambiguous.js.dfg-eager-no-cjit-validate-modules
modules.yaml/modules/fallback-ambiguous.js.ftl-eager-modules
modules.yaml/modules/aliasing.js.dfg-eager-no-cjit-validate-modules
modules.yaml/modules/namespace-re-export.js.ftl-eager-modules
modules.yaml/modules/import-error.js.ftl-eager-no-cjit-modules
stress/async-await-throw-loop.js.no-cjit
stress/rest-parameter-is-destructuring.js.ftl-eager-no-cjit-b3o1
modules.yaml/modules/indirect-export-error.js.dfg-eager-modules
stress/async-iteration-basic.js.dfg-eager-no-cjit-validate
modules.yaml/modules/module-assert-access-namespace.js.dfg-eager-modules
stress/set-constructor.js.dfg-eager-no-cjit-validate
stress/rest-parameter-is-destructuring.js.dfg-eager-no-cjit-validate
microbenchmarks/super-get-by-id-with-this-monomorphic.js.ftl-no-cjit-no-put-stack-validate
microbenchmarks/super-get-by-id-with-this-monomorphic.js.ftl-no-cjit-small-pool
modules.yaml/modules/imported-bindings-are-immutable.js.dfg-eager-modules
stress/import-from-eval.js.dfg-eager-no-cjit-validate
modules.yaml/modules/namespace-object-has-property.js.ftl-eager-no-cjit-modules
microbenchmarks/super-get-by-val-with-this-polymorphic.js.ftl-no-cjit-b3o1
stress/module-namespace-access-transitive-exports.js.dfg-eager-no-cjit-validate
stress/async-iteration-for-await-of.js.dfg-eager-no-cjit-validate
modules.yaml/modules/defaults.js.ftl-eager-no-cjit-modules
modules.yaml/modules/different-view.js.ftl-eager-no-cjit-modules
modules.yaml/modules/aliased-names.js.dfg-eager-no-cjit-validate-modules
microbenchmarks/super-get-by-id-with-this-monomorphic.js.dfg-eager
modules.yaml/modules/execution-order-sibling.js.dfg-eager-no-cjit-validate-modules
modules.yaml/modules/exported-function-may-be-called-before-module-is-executed.js.dfg-eager-no-cjit-validate-modules
modules.yaml/modules/string-prototype-module-scope.js.dfg-eager-no-cjit-validate-modules
modules.yaml/modules/export-default-function-name-in-generator-declaration.js.dfg-eager-no-cjit-validate-modules
stress/dont-unwind-past-vm-entry-frame.js.no-cjit-validate-phases
modules.yaml/modules/namespace-object-inline-caching.js.ftl-eager-no-cjit-modules
microbenchmarks/super-get-by-id-with-this-polymorphic.js.no-llint
stress/set-constructor-adder.js.dfg-eager
stress/map-clone.js.dfg-eager
modules.yaml/modules/module-is-strict-code.js.dfg-eager-modules
modules.yaml/modules/module-assert-access-binding.js.dfg-eager-modules
stress/dont-unwind-past-vm-entry-frame.js.dfg-eager-no-cjit-validate
microbenchmarks/super-get-by-val-with-this-polymorphic.js.no-cjit-validate-phases
wasm.yaml/wasm/function-tests/memory-alignment.js.wasm-no-tls-context
stress/map-constructor-adder.js.ftl-eager-no-cjit-b3o1
stress/import-basic.js.ftl-eager-no-cjit-b3o1
stress/dont-unwind-past-vm-entry-frame.js.no-llint
modules.yaml/modules/module-jit-reachability.js.ftl-eager-no-cjit-modules
stress/map-clone.js.ftl-eager-no-cjit
stress/SharedArrayBuffer-opt.js.no-cjit-collect-continuously
modules.yaml/modules/execution-order-depth.js.dfg-eager-no-cjit-validate-modules
stress/weak-set-constructor-adder.js.ftl-eager-no-cjit-b3o1
stress/map-inherit-set.js.no-cjit-validate-phases
microbenchmarks/super-get-by-id-with-this-monomorphic.js.no-ftl
stress/async-iteration-yield-star.js.dfg-eager
microbenchmarks/super-get-by-id-with-this-polymorphic.js.ftl-no-cjit-validate-sampling-profiler
stress/async-iteration-async-from-sync.js.dfg-eager-no-cjit-validate
modules.yaml/modules/namespace-error.js.ftl-eager-modules
stress/async-iteration-async-from-sync.js.ftl-eager-no-cjit
microbenchmarks/super-get-by-id-with-this-polymorphic.js.no-cjit-collect-continuously
stress/map-inherit-set.js.ftl-no-cjit-b3o1
microbenchmarks/super-get-by-val-with-this-polymorphic.js.ftl-no-cjit-small-pool
stress/map-inherit-set.js.dfg-eager
slowMicrobenchmarks.yaml/slowMicrobenchmarks/large-map-iteration-with-additions.js.no-cjit
stress/modify-map-during-iteration.js.no-cjit-validate-phases
modules.yaml/modules/module-eval.js.dfg-eager-no-cjit-validate-modules
stress/rest-parameter-many-arguments.js.ftl-eager
stress/map-clone.js.ftl-no-cjit-b3o1
modules.yaml/modules/export-from.js.dfg-eager-no-cjit-validate-modules
microbenchmarks/rest-parameter-allocation-elimination.js.ftl-eager-no-cjit-b3o1
modules.yaml/modules/different-view.js.dfg-eager-modules
microbenchmarks/super-get-by-val-with-this-polymorphic.js.ftl-no-cjit-validate-sampling-profiler
modules.yaml/modules/destructuring-export.js.ftl-eager-no-cjit-modules
stress/re-execute-error-module.js.ftl-eager-no-cjit-b3o1
stress/import-syntax.js.ftl-eager-no-cjit
microbenchmarks/super-get-by-val-with-this-monomorphic.js.ftl-no-cjit-b3o1
stress/rest-parameter-is-destructuring.js.dfg-maximal-flush-validate-no-cjit
modules.yaml/modules/self-star-link.js.ftl-eager-no-cjit-modules
stress/map-iteration.js.ftl-eager-no-cjit-b3o1
stress/modify-map-during-iteration.js.ftl-no-cjit-small-pool
wasm.yaml/wasm/function-tests/memory-alignment.js.default-wasm
microbenchmarks/super-get-by-val-with-this-polymorphic.js.dfg-eager-no-cjit-validate
stress/spread-optimized-properly.js.ftl-eager
stress/map-inherit-set.js.ftl-eager
stress/import-basic.js.ftl-eager-no-cjit
modules.yaml/modules/namespace-re-export.js.ftl-eager-no-cjit-modules
stress/import-syntax.js.ftl-eager-no-cjit-b3o1
microbenchmarks/super-get-by-val-with-this-monomorphic.js.ftl-no-cjit-validate-sampling-profiler
stress/map-clone.js.ftl-no-cjit-small-pool
modules.yaml/modules/execution-order-dag.js.dfg-eager-no-cjit-validate-modules
microbenchmarks/super-get-by-id-with-this-polymorphic.js.ftl-no-cjit-small-pool
stress/map-inherit-set.js.ftl-no-cjit-validate-sampling-profiler
stress/async-iteration-basic.js.dfg-eager
modules.yaml/modules/module-eval.js.ftl-eager-no-cjit-modules
modules.yaml/modules/caching-should-not-make-ambiguous.js.ftl-eager-no-cjit-modules
wasm.yaml/wasm/function-tests/many-args-tail-call-sp-restored.js.wasm-no-cjit-yes-tls-context
modules.yaml/modules/namespace-re-export.js.dfg-eager-modules
jsc-layout-tests.yaml/js/script-tests/array-from.js.layout-dfg-eager-no-cjit
stress/modify-map-during-iteration.js.dfg-maximal-flush-validate-no-cjit
stress/async-await-basic.js.dfg-eager-no-cjit-validate
modules.yaml/modules/export-with-declarations-list.js.dfg-eager-no-cjit-validate-modules
microbenchmarks/super-get-by-val-with-this-monomorphic.js.dfg-eager
microbenchmarks/super-get-by-id-with-this-monomorphic.js.dfg-eager-no-cjit-validate
microbenchmarks/super-get-by-val-with-this-monomorphic.js.dfg-maximal-flush-validate-no-cjit
stress/rest-parameter-many-arguments.js.dfg-eager-no-cjit-validate
stress/import-from-eval.js.ftl-eager-no-cjit-b3o1
modules.yaml/modules/html-comments.js.ftl-eager-no-cjit-modules
stress/spread-optimized-properly.js.ftl-eager-no-cjit
stress/set-constructor.js.ftl-eager
jsc-layout-tests.yaml/js/script-tests/regress-151279.js.layout-dfg-eager-no-cjit
stress/lexical-let-loop-semantics.js.ftl-eager-no-cjit-b3o1
modules.yaml/modules/import-call.js.ftl-eager-modules
stress/modify-map-during-iteration.js.no-llint
stress/map-inherit-set.js.ftl-no-cjit-small-pool
stress/async-arrow-functions-lexical-new.target-binding.js.ftl-eager-no-cjit-b3o1
stress/async-iteration-yield-promise.js.ftl-eager-no-cjit
basic-tests.yaml/stress-test.js.ftl-no-cjit
stress/map-clone.js.ftl-no-cjit-validate-sampling-profiler
microbenchmarks/super-get-by-id-with-this-monomorphic.js.ftl-no-cjit-validate-sampling-profiler
microbenchmarks/super-get-by-val-with-this-monomorphic.js.no-llint
modules.yaml/modules/destructuring-export.js.dfg-eager-modules
stress/v8-richards-strict.js.ftl-eager-no-cjit-b3o1
modules.yaml/modules/execution-order-self.js.ftl-eager-no-cjit-modules
modules.yaml/modules/defaults.js.dfg-eager-no-cjit-validate-modules
microbenchmarks/rest-parameter-allocation-elimination.js.dfg-eager-no-cjit-validate
modules.yaml/modules/scopes.js.dfg-eager-no-cjit-validate-modules
microbenchmarks/super-get-by-id-with-this-monomorphic.js.no-llint
stress/weak-set-constructor.js.dfg-eager-no-cjit-validate
stress/import-syntax.js.ftl-eager
stress/weak-set-constructor.js.dfg-eager
modules.yaml/modules/module-is-strict-code.js.ftl-eager-no-cjit-modules
stress/map-iteration.js.ftl-eager
modules.yaml/modules/namespace-tdz.js.dfg-eager-modules
microbenchmarks/super-get-by-val-with-this-monomorphic.js.no-cjit-validate-phases
modules.yaml/modules/module-assert-access-namespace.js.ftl-eager-no-cjit-modules
modules.yaml/modules/indirect-export-error.js.ftl-eager-modules
stress/weak-map-constructor.js.dfg-eager-no-cjit-validate
stress/dont-unwind-past-vm-entry-frame.js.ftl-no-cjit-validate-sampling-profiler
modules.yaml/modules/namespace-set-prototype-of.js.dfg-eager-no-cjit-validate-modules
stress/map-constructor-adder.js.ftl-eager-no-cjit
modules.yaml/modules/default-value-case-should-be-copied.js.ftl-eager-modules
stress/import-syntax.js.dfg-eager-no-cjit-validate
stress/async-arrow-functions-lexical-binding-in-class.js.ftl-eager
stress/map-clone.js.ftl-eager
modules.yaml/modules/destructuring-export.js.dfg-eager-no-cjit-validate-modules
modules.yaml/modules/module-namespace-is-sealed.js.dfg-eager-no-cjit-validate-modules
modules.yaml/modules/module-is-strict-code.js.dfg-eager-no-cjit-validate-modules
stress/weak-set-constructor-adder.js.dfg-eager-no-cjit-validate
microbenchmarks/large-map-iteration.js.no-llint
modules.yaml/modules/module-eval.js.dfg-eager-modules
modules.yaml/modules/execution-order-depth.js.ftl-eager-no-cjit-modules
modules.yaml/modules/fallback-ambiguous.js.ftl-eager-no-cjit-modules
modules.yaml/modules/exported-function-may-be-called-before-module-is-executed.js.dfg-eager-modules
modules.yaml/modules/execution-order-dag.js.ftl-eager-modules
stress/async-await-basic.js.ftl-eager-no-cjit-b3o1
modules.yaml/modules/export-conflict-ok.js.dfg-eager-no-cjit-validate-modules
microbenchmarks/super-get-by-id-with-this-polymorphic.js.no-ftl
modules.yaml/modules/namespace-object-has-property.js.dfg-eager-no-cjit-validate-modules
modules.yaml/modules/this-should-be-undefined.js.dfg-eager-no-cjit-validate-modules
stress/map-inherit-set.js.ftl-eager-no-cjit
modules.yaml/modules/execution-order-depth.js.ftl-eager-modules
modules.yaml/modules/different-view.js.ftl-eager-modules
stress/v8-richards-strict.js.dfg-eager-no-cjit-validate
modules.yaml/modules/execution-order-cyclic.js.ftl-eager-modules
stress/import-basic.js.dfg-eager-no-cjit-validate
stress/dont-unwind-past-vm-entry-frame.js.no-cjit-collect-continuously
microbenchmarks/super-get-by-id-with-this-polymorphic.js.dfg-eager
stress/async-iteration-yield-promise.js.dfg-eager-no-cjit-validate
modules.yaml/modules/namespace-object-inline-caching.js.dfg-eager-no-cjit-validate-modules
modules.yaml/modules/exported-function-may-be-called-before-module-is-executed.js.ftl-eager-no-cjit-modules
modules.yaml/modules/indirect-export-error.js.ftl-eager-no-cjit-modules
stress/map-clone.js.ftl-eager-no-cjit-b3o1
stress/weak-map-constructor.js.ftl-eager
microbenchmarks/super-get-by-val-with-this-monomorphic.js.no-ftl
modules.yaml/modules/namespace-tdz.js.dfg-eager-no-cjit-validate-modules
microbenchmarks/super-get-by-val-with-this-monomorphic.js.no-cjit-collect-continuously
modules.yaml/modules/module-assert-access-namespace.js.dfg-eager-no-cjit-validate-modules
stress/import-syntax.js.dfg-eager
stress/set-constructor-adder.js.ftl-eager-no-cjit-b3o1
microbenchmarks/super-get-by-val-with-this-monomorphic.js.dfg-eager-no-cjit-validate
modules.yaml/modules/imported-bindings-can-be-changed-in-original-module.js.dfg-eager-no-cjit-validate-modules
modules.yaml/modules/namespace-object-typed-array-fast-path.js.dfg-eager-modules
jsc-layout-tests.yaml/js/script-tests/regress-150336.js.layout-dfg-eager-no-cjit
stress/map-constructor-adder.js.ftl-eager
stress/async-arrow-functions-lexical-binding-in-class.js.ftl-eager-no-cjit
wasm.yaml/wasm/function-tests/memory-alignment.js.wasm-no-call-ic
jsc-layout-tests.yaml/js/script-tests/regress-150745.js.layout-no-ftl
stress/dont-unwind-past-vm-entry-frame.js.ftl-no-cjit-b3o1
modules.yaml/modules/execution-order-tree.js.dfg-eager-no-cjit-validate-modules
modules.yaml/modules/namespace-object-symbol-iterator-name.js.dfg-eager-no-cjit-validate-modules
modules.yaml/modules/namespace-object-symbol-iterator-name.js.ftl-eager-no-cjit-modules
modules.yaml/modules/execution-order-sibling.js.ftl-eager-no-cjit-modules
modules.yaml/modules/string-prototype-module-scope.js.ftl-eager-no-cjit-modules
modules.yaml/modules/module-namespace-is-frozen.js.dfg-eager-no-cjit-validate-modules
modules.yaml/modules/caching-should-not-make-ambiguous.js.dfg-eager-modules
jsc-layout-tests.yaml/js/script-tests/regress-150336.js.layout-no-llint
stress/promise-finally.js.dfg-eager-no-cjit-validate
modules.yaml/modules/async-function-export.js.dfg-eager-no-cjit-validate-modules
modules.yaml/modules/export-default-function-name-in-assignment-expression.js.dfg-eager-no-cjit-validate-modules
stress/async-await-mozilla.js.ftl-eager-no-cjit
stress/promise-finally.js.ftl-eager
stress/async-await-mozilla.js.ftl-eager-no-cjit-b3o1
stress/modify-map-during-iteration.js.default
stress/map-inherit-set.js.ftl-no-cjit-no-put-stack-validate
microbenchmarks/super-get-by-id-with-this-monomorphic.js.no-cjit-collect-continuously
stress/destructuring-rest-element.js.dfg-maximal-flush-validate-no-cjit
modules.yaml/modules/execution-order-cyclic.js.dfg-eager-no-cjit-validate-modules
stress/weak-map-constructor.js.dfg-eager
modules.yaml/modules/namespace-error.js.ftl-eager-no-cjit-modules
stress/map-clone.js.no-cjit-collect-continuously
stress/trailing-comma-in-patterns.js.dfg-eager
modules.yaml/modules/uncacheable-when-see-star.js.dfg-eager-no-cjit-validate-modules
stress/async-iteration-yield-star-interface.js.dfg-eager-no-cjit-validate
stress/async-iteration-yield-star-interface.js.ftl-eager-no-cjit-b3o1
modules.yaml/modules/namespace-prototype-assignment.js.ftl-eager-no-cjit-modules
stress/array-reverse-proxy.js.ftl-eager-no-cjit-b3o1
stress/map-constructor-adder.js.dfg-eager-no-cjit-validate
jsc-layout-tests.yaml/js/script-tests/array-from.js.layout-ftl-eager-no-cjit
microbenchmarks/super-get-by-id-with-this-polymorphic.js.ftl-no-cjit-b3o1
modules.yaml/modules/namespace-tdz.js.ftl-eager-no-cjit-modules
stress/map-iteration.js.ftl-eager-no-cjit
stress/module-namespace-access-transitive-exports.js.ftl-eager-no-cjit-b3o1
modules.yaml/modules/uncacheable-when-see-star.js.ftl-eager-modules
modules.yaml/modules/import-call.js.dfg-eager-no-cjit-validate-modules
modules.yaml/modules/cyclic-may-produce-tdz.js.ftl-eager-modules
modules.yaml/modules/module-eval.js.ftl-eager-modules
stress/modify-map-during-iteration.js.dfg-eager
modules.yaml/modules/namespace-object-get-property.js.dfg-eager-no-cjit-validate-modules
stress/async-iteration-for-await-of.js.ftl-eager-no-cjit
modules.yaml/modules/export-default-function-hoisting.js.dfg-eager-no-cjit-validate-modules
stress/async-iteration-yield-star.js.ftl-eager-no-cjit
stress/map-iteration.js.dfg-eager-no-cjit-validate
stress/async-arrow-functions-lexical-super-binding.js.ftl-eager-no-cjit-b3o1
stress/weak-set-constructor.js.ftl-eager
modules.yaml/modules/this-should-be-undefined.js.ftl-eager-no-cjit-modules
stress/weak-map-constructor-adder.js.dfg-eager-no-cjit-validate
modules.yaml/modules/module-jit-reachability.js.dfg-eager-no-cjit-validate-modules
modules.yaml/modules/uncacheable-when-see-star.js.dfg-eager-modules
microbenchmarks/super-get-by-val-with-this-polymorphic.js.no-cjit-collect-continuously
stress/promise-finally.js.ftl-eager-no-cjit
microbenchmarks/super-get-by-val-with-this-monomorphic.js.default
modules.yaml/modules/namespace-error.js.dfg-eager-no-cjit-validate-modules
stress/async-await-mozilla.js.dfg-eager-no-cjit-validate
jsc-layout-tests.yaml/js/script-tests/array-length-shortening.js.layout-dfg-eager-no-cjit
stress/async-iteration-yield-star-interface.js.dfg-eager
stress/set-constructor-adder.js.ftl-eager-no-cjit
modules.yaml/modules/namespace-ambiguous.js.dfg-eager-no-cjit-validate-modules
modules.yaml/modules/import-error.js.dfg-eager-no-cjit-validate-modules
modules.yaml/modules/namespace-tdz.js.ftl-eager-modules
stress/weak-map-constructor-adder.js.ftl-eager-no-cjit
stress/dont-unwind-past-vm-entry-frame.js.ftl-no-cjit-small-pool
microbenchmarks/super-get-by-val-with-this-monomorphic.js.ftl-no-cjit-no-put-stack-validate
stress/map-clone.js.dfg-eager-no-cjit-validate
modules.yaml/modules/execution-order-tree.js.dfg-eager-modules
modules.yaml/modules/export-default-function-name-in-function-declaration.js.dfg-eager-no-cjit-validate-modules
modules.yaml/modules/self-star-link.js.dfg-eager-modules
stress/async-iteration-async-from-sync.js.ftl-eager
modules.yaml/modules/namespace-prototype-assignment.js.ftl-eager-modules
stress/import-basic.js.dfg-eager
stress/promise-finally.js.dfg-eager
jsc-layout-tests.yaml/js/script-tests/regress-150336.js.layout-no-ftl
microbenchmarks/super-get-by-id-with-this-monomorphic.js.default
modules.yaml/modules/html-comments.js.dfg-eager-no-cjit-validate-modules
jsc-layout-tests.yaml/js/script-tests/regress-150336.js.layout-no-cjit
stress/async-iteration-yield-star.js.dfg-eager-no-cjit-validate
stress/map-inherit-set.js.no-cjit-collect-continuously
modules.yaml/modules/namespace-prototype-assignment.js.dfg-eager-modules
stress/async-iteration-for-await-of.js.dfg-eager
stress/rest-parameter-many-arguments.js.ftl-eager-no-cjit-b3o1
stress/map-constructor.js.ftl-eager
modules.yaml/modules/module-namespace-is-sealed.js.ftl-eager-modules
modules.yaml/modules/execution-order-self.js.dfg-eager-no-cjit-validate-modules
microbenchmarks/super-get-by-val-with-this-polymorphic.js.no-ftl
modules.yaml/modules/import-call.js.ftl-eager-no-cjit-modules
microbenchmarks/super-get-by-id-with-this-monomorphic.js.no-cjit-validate-phases
modules.yaml/modules/namespace-ambiguous.js.dfg-eager-modules
stress/async-iteration-basic.js.ftl-eager-no-cjit
stress/map-clone.js.no-cjit-validate-phases
stress/lexical-let-loop-semantics.js.ftl-eager
stress/async-await-basic.js.ftl-eager
stress/async-iteration-yield-star.js.ftl-eager-no-cjit-b3o1
modules.yaml/modules/imported-bindings-are-immutable.js.dfg-eager-no-cjit-validate-modules
microbenchmarks/super-get-by-id-with-this-polymorphic.js.dfg-eager-no-cjit-validate
microbenchmarks/super-get-by-val-with-this-monomorphic.js.ftl-no-cjit-small-pool
modules.yaml/modules/namespace-re-export.js.dfg-eager-no-cjit-validate-modules
stress/set-constructor-adder.js.dfg-eager-no-cjit-validate
stress/array-reverse-proxy.js.ftl-eager-no-cjit
stress/map-inherit-set.js.dfg-eager-no-cjit-validate
stress/map-inherit-set.js.ftl-eager-no-cjit-b3o1
microbenchmarks/super-get-by-val-with-this-polymorphic.js.default
stress/async-iteration-yield-promise.js.ftl-eager
modules.yaml/modules/namespace.js.ftl-eager-modules
modules.yaml/modules/imported-bindings-can-be-changed-in-original-module.js.ftl-eager-modules
modules.yaml/modules/namespace.js.dfg-eager-modules
modules.yaml/modules/default-value-case-should-be-copied.js.dfg-eager-no-cjit-validate-modules
stress/async-iteration-async-from-sync.js.dfg-eager
modules.yaml/modules/execution-order-cyclic.js.dfg-eager-modules
microbenchmarks/super-get-by-id-with-this-monomorphic.js.dfg-maximal-flush-validate-no-cjit
stress/dont-unwind-past-vm-entry-frame.js.default
modules.yaml/modules/caching-should-not-make-ambiguous.js.ftl-eager-modules
modules.yaml/modules/self-star-link.js.dfg-eager-no-cjit-validate-modules
modules.yaml/modules/different-view.js.dfg-eager-no-cjit-validate-modules
wasm.yaml/wasm/js-api/wasm-to-wasm-bad-signature.js.wasm-no-cjit-yes-tls-context
Comment 23 Build Bot 2017-09-12 20:03:54 PDT
Comment on attachment 320601 [details]
WIP

Attachment 320601 [details] did not pass mac-ews (mac):
Output: http://webkit-queues.webkit.org/results/4529868

Number of test failures exceeded the failure limit.
Comment 24 Build Bot 2017-09-12 20:03:55 PDT
Created attachment 320609 [details]
Archive of layout-test-results from ews101 for mac-elcapitan

The attached test failures were seen while running run-webkit-tests on the mac-ews.
Bot: ews101  Port: mac-elcapitan  Platform: Mac OS X 10.11.6
Comment 25 Build Bot 2017-09-12 20:11:53 PDT
Comment on attachment 320601 [details]
WIP

Attachment 320601 [details] did not pass mac-wk2-ews (mac-wk2):
Output: http://webkit-queues.webkit.org/results/4529877

Number of test failures exceeded the failure limit.
Comment 26 Build Bot 2017-09-12 20:11:54 PDT
Created attachment 320610 [details]
Archive of layout-test-results from ews105 for mac-elcapitan-wk2

The attached test failures were seen while running run-webkit-tests on the mac-wk2-ews.
Bot: ews105  Port: mac-elcapitan-wk2  Platform: Mac OS X 10.11.6
Comment 27 Build Bot 2017-09-12 20:12:58 PDT
Comment on attachment 320601 [details]
WIP

Attachment 320601 [details] did not pass mac-debug-ews (mac):
Output: http://webkit-queues.webkit.org/results/4529864

Number of test failures exceeded the failure limit.
Comment 28 Build Bot 2017-09-12 20:13:00 PDT
Created attachment 320611 [details]
Archive of layout-test-results from ews114 for mac-elcapitan

The attached test failures were seen while running run-webkit-tests on the mac-debug-ews.
Bot: ews114  Port: mac-elcapitan  Platform: Mac OS X 10.11.6
Comment 29 Build Bot 2017-09-12 20:37:55 PDT
Comment on attachment 320601 [details]
WIP

Attachment 320601 [details] did not pass ios-sim-ews (ios-simulator-wk2):
Output: http://webkit-queues.webkit.org/results/4529906

Number of test failures exceeded the failure limit.
Comment 30 Build Bot 2017-09-12 20:37:57 PDT
Created attachment 320613 [details]
Archive of layout-test-results from ews124 for ios-simulator-wk2

The attached test failures were seen while running run-webkit-tests on the ios-sim-ews.
Bot: ews124  Port: ios-simulator-wk2  Platform: Mac OS X 10.12.5
Comment 31 Saam Barati 2017-09-13 17:54:31 PDT
Created attachment 320717 [details]
WIP

This passes the jsc stress tests locally. Testing on EWS