We currently backtrack character classes that may contain non-BMP characters by rematching one less than the prior count. For large strings that need to backtrack a large number of characters, this is quit wasteful. Now that we have methods that can read non-BMP characters either forward or bacckward, we can use these to back up just one character. The same applies to lookaheads.
<rdar://111051833>
Pull request: https://github.com/WebKit/WebKit/pull/15304
Committed 265593@main (8e5b3f5761f0): <https://commits.webkit.org/265593@main> Reviewed commits have been landed. Closing PR #15304 and removing active labels.