[webkit-changes] [WebKit/WebKit] e3f0b0: Enable single-pass BBQ baseline JIT by default

EWS noreply at github.com
Fri Mar 3 10:49:16 PST 2023


  Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: e3f0b033dcf4ed2f7b03c7c359acf4ab11a4c08c
      https://github.com/WebKit/WebKit/commit/e3f0b033dcf4ed2f7b03c7c359acf4ab11a4c08c
  Author: David Degazio <d_degazio at apple.com>
  Date:   2023-03-03 (Fri, 03 Mar 2023)

  Changed paths:
    M Source/JavaScriptCore/runtime/Options.cpp
    M Source/JavaScriptCore/runtime/OptionsList.h
    M Tools/Scripts/run-jsc-stress-tests

  Log Message:
  -----------
  Enable single-pass BBQ baseline JIT by default
https://bugs.webkit.org/show_bug.cgi?id=252209
rdar://100332177

Reviewed by Mark Lam and Yusuke Suzuki.

The new BBQ baseline JIT is largely complete, passes all of our stress tests,
and doesn't introduce a performance regression. This patch moves to enable it
as our default implementation for the BBQ tier, supplanting the Air backend.

One notable hole in the new JIT's support is in some of the recent WASM extensions:
typed function references, tail calls, and GC. Since these are still incomplete
currently, and disabled by default, single-pass BBQ doesn't yet support them.
When these features are manually enabled, single-pass BBQ JIT will be disabled
currently, and defer back to Air. Air and B3 can also be selected by passing
`--useSinglePassBBQJIT=0` in the command line options.

* Source/JavaScriptCore/runtime/Options.cpp:
(JSC::Options::notifyOptionsChanged):
* Source/JavaScriptCore/runtime/OptionsList.h:
* Tools/Scripts/run-jsc-stress-tests:

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




More information about the webkit-changes mailing list