Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: 71c68f4b3b35d98548525c85b7d740a8c83613db
      
https://github.com/WebKit/WebKit/commit/71c68f4b3b35d98548525c85b7d740a8c83613db
  Author: Vassili Bykov <[email protected]>
  Date:   2026-08-07 (Fri, 07 Aug 2026)

  Changed paths:
    M Source/JavaScriptCore/parser/Lexer.h
    M Source/JavaScriptCore/parser/Parser.cpp
    M Source/JavaScriptCore/parser/Parser.h

  Log Message:
  -----------
  [JSC] Retire Lexer::lexExpectIdentifier()
https://bugs.webkit.org/show_bug.cgi?id=321188
rdar://184247644

Reviewed by Yusuke Suzuki.

Lexer::lexExpectIdentifier() is intended as the fast path for quickly parsing an
identifier. It was introduced a long time ago. In the meantime, the baseline
Lexer::parseIdentifier() has been vectorized and now performs better than
lexExpectIdentifier() with its character-by-character scanning and 4 
conditionals.
Removing lexExpectIdentifier() simplifies and shrinks hot code and improves 
performance.

Covered by existing tests.

* Source/JavaScriptCore/parser/Lexer.h:
(JSC::Lexer<T>::lexExpectIdentifier): Deleted.
* Source/JavaScriptCore/parser/Parser.cpp:
(JSC::Parser<LexerType>::parseProperty):
(JSC::Parser<LexerType>::parseMemberExpression):
* Source/JavaScriptCore/parser/Parser.h:

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



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

Reply via email to