Branch: refs/heads/main
Home: https://github.com/WebKit/WebKit
Commit: 64243d698a349da07c92d9ab7d5b322c23faf9a0
https://github.com/WebKit/WebKit/commit/64243d698a349da07c92d9ab7d5b322c23faf9a0
Author: Sosuke Suzuki <[email protected]>
Date: 2026-08-12 (Wed, 12 Aug 2026)
Changed paths:
M Source/JavaScriptCore/yarr/YarrJIT.cpp
Log Message:
-----------
[YARR] Collect Boyer-Moore info through parenthetical assertions
https://bugs.webkit.org/show_bug.cgi?id=321645
Reviewed by Yusuke Suzuki.
collectBoyerMooreInfoFromTerm() gave up on a lookahead or lookbehind, so a body
alternative starting with one, such as /(?<=\$)\d+/, got neither the Boyer-Moore
bitmap nor the SIMD search and tried the body at every position. An assertion
consumes no input, so it contributes nothing to the character sets and the
following terms are collected as usual, like ^ $ and \b already are.
Baseline Patched
regexp-lookbehind-fixed 45.47+-0.70 ^ 1.53+-0.04 ^
definitely 29.7674x faster
regexp-lookbehind-negative-alternation 48.59+-0.74 ^ 9.33+-0.24 ^
definitely 5.2072x faster
regexp-lookbehind-variable 34.46+-0.40 ? 34.85+-0.69
regexp-lookbehind-replace 60.50+-1.19 60.46+-1.63
* Source/JavaScriptCore/yarr/YarrJIT.cpp:
Canonical link: https://commits.webkit.org/319086@main
To unsubscribe from these emails, change your notification settings at
https://github.com/WebKit/WebKit/settings/notifications