Branch: refs/heads/main
Home: https://github.com/WebKit/WebKit
Commit: 724f7173e04a9d448964e3094b0929d6ae29d551
https://github.com/WebKit/WebKit/commit/724f7173e04a9d448964e3094b0929d6ae29d551
Author: Mark Lam <[email protected]>
Date: 2024-04-01 (Mon, 01 Apr 2024)
Changed paths:
M JSTests/stress/ensure-crash.js
M
JSTests/stress/incorrect-put-could-generate-invalid-ic-but-still-not-causing-bad-behavior-bad-transition-debug.js
M
JSTests/stress/incorrect-put-could-generate-invalid-ic-but-still-not-causing-bad-behavior-bad-transition.js
M
JSTests/stress/incorrect-put-could-generate-invalid-ic-but-still-not-causing-bad-behavior.js
M
JSTests/stress/incorrect-put-could-generate-invalid-ic-involving-dictionary-flatten-debug.js
M Source/JavaScriptCore/Scripts/process-entitlements.sh
M Source/JavaScriptCore/jsc.cpp
M Source/WTF/wtf/Assertions.cpp
M Tools/Scripts/run-jsc-stress-tests
M Tools/Scripts/webkitruby/jsc-stress-test-writer-default.rb
Log Message:
-----------
Make run-jsc-stress-tests handle expected crashes correctly.
https://bugs.webkit.org/show_bug.cgi?id=271954
rdar://124471961
Reviewed by Yusuke Suzuki.
It does not make sense to have a crashOK! test attribute, which imply that the
test will be
flaky. A test should be deterministic. We should either expect a crash or no
crash. To enable
this, we'll make the following changes:
1. Change the jsc shell "crash detector" signal handler to exit with exitCode
137 (to indicate
a fatal crash).
2. Fix the JSC stress test harness to actually be able to handle crashes
(terminations with
exitCode > 130).
3. Rename the "crashOK!" test attribute to "mustCrash!". It now makes it clear
that a test is
expected to crash, instead of flakily crashing sometimes.
4. Add filter conditions to tests that "mustCrash!" so that they are only run
with
configurations where they are expected to crash. Skip the rest.
5. Make WTFCrash() crash with WTFBreakpointTrap() on Darwin ARM64 platforms to
be consistent
with all other crashes.
6. Opportunistic quality of life improvement: make jsc shell timeouts crash
below
crashDueToJSCShellTimeout() to distinguish it from other crashes.
* JSTests/stress/ensure-crash.js:
*
JSTests/stress/incorrect-put-could-generate-invalid-ic-but-still-not-causing-bad-behavior-bad-transition-debug.js:
*
JSTests/stress/incorrect-put-could-generate-invalid-ic-but-still-not-causing-bad-behavior-bad-transition.js:
*
JSTests/stress/incorrect-put-could-generate-invalid-ic-but-still-not-causing-bad-behavior.js:
*
JSTests/stress/incorrect-put-could-generate-invalid-ic-involving-dictionary-flatten-debug.js:
* Source/JavaScriptCore/Scripts/process-entitlements.sh:
* Source/JavaScriptCore/jsc.cpp:
(crashDueToJSCShellTimeout):
(timeoutCheckCallback):
(CommandLine::parseArguments):
* Source/WTF/wtf/Assertions.cpp:
* Tools/Scripts/run-jsc-stress-tests:
* Tools/Scripts/webkitruby/jsc-stress-test-writer-default.rb:
Canonical link: https://commits.webkit.org/276881@main
To unsubscribe from these emails, change your notification settings at
https://github.com/WebKit/WebKit/settings/notifications
_______________________________________________
webkit-changes mailing list
[email protected]
https://lists.webkit.org/mailman/listinfo/webkit-changes