[webkit-changes] [WebKit/WebKit] c83cc0: [JSC] Bump maxArguments size

Yusuke Suzuki noreply at github.com
Wed Jan 15 15:39:22 PST 2025


  Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: c83cc001a60df7623d9b5f123e704013d8e2fd97
      https://github.com/WebKit/WebKit/commit/c83cc001a60df7623d9b5f123e704013d8e2fd97
  Author: Yusuke Suzuki <ysuzuki at apple.com>
  Date:   2025-01-15 (Wed, 15 Jan 2025)

  Changed paths:
    A JSTests/stress/large-arguments.js
    M LayoutTests/js/function-apply-expected.txt
    M LayoutTests/js/function-apply-many-args-expected.txt
    M LayoutTests/js/script-tests/function-apply-many-args.js
    M LayoutTests/js/script-tests/function-apply.js
    M Source/JavaScriptCore/ftl/FTLLowerDFGToB3.cpp
    M Source/JavaScriptCore/interpreter/Interpreter.h
    M Source/JavaScriptCore/jsc.cpp

  Log Message:
  -----------
  [JSC] Bump maxArguments size
https://bugs.webkit.org/show_bug.cgi?id=285986
rdar://87108704

Reviewed by Justin Michaud.

The previous maxArguments size is too restricted (0x10000). This patch
bumps it to 0x100000. This is good size since it matches against the
size of the main thread's max stack height, thus larger than this value
does not have effect since we do remaining stack height check anyway.

We also found missing stack height check in FTL for forwarding case.
This was fine before since our maxArguments size is within
softReservedZoneSize so we never hit real stack overflow. But now
maxArguments gets larger and we need to check appropriately.

* JSTests/stress/large-arguments.js: Added.
(nop):
(test):
* LayoutTests/js/function-apply-expected.txt:
* LayoutTests/js/function-apply-many-args-expected.txt:
* LayoutTests/js/script-tests/function-apply-many-args.js:
* LayoutTests/js/script-tests/function-apply.js:
* Source/JavaScriptCore/ftl/FTLLowerDFGToB3.cpp:
(JSC::FTL::DFG::LowerDFGToB3::compileCompareStrictEq):
* Source/JavaScriptCore/interpreter/Interpreter.h:
* Source/JavaScriptCore/jsc.cpp:
(JSC_DEFINE_HOST_FUNCTION):

Canonical link: https://commits.webkit.org/288971@main



To unsubscribe from these emails, change your notification settings at https://github.com/WebKit/WebKit/settings/notifications


More information about the webkit-changes mailing list