• Toon Verwaest's avatar
    [preparser] Split GetSymbol into GetSymbol and GetIdentifier · acfe5921
    Toon Verwaest authored
    GetSymbol previously always internalized the underlying string, even if the
    preparser does not need it. The most common case where this isn't needed is
    property name parsing. This seems to speed up preparsing quite a bit.
    
    For future reference: Property names in object literals still are needed due to
    various checks (e.g., get 'constructor', duplicate __proto__, ...); as well as
    cover grammar parsing (property names can turn into variable references). If we
    turn all strings that the preparser needs to identify back into contextual
    keywords we may be able to avoid the former.
    
    Change-Id: I549e4600053de3136ca08d4915cc04db36d66a89
    Reviewed-on: https://chromium-review.googlesource.com/c/1488764Reviewed-by: 's avatarLeszek Swirski <leszeks@chromium.org>
    Commit-Queue: Toon Verwaest <verwaest@chromium.org>
    Cr-Commit-Position: refs/heads/master@{#59866}
    acfe5921
Name
Last commit
Last update
benchmarks Loading commit data...
build_overrides Loading commit data...
custom_deps Loading commit data...
docs Loading commit data...
gni Loading commit data...
include Loading commit data...
infra Loading commit data...
samples Loading commit data...
src Loading commit data...
test Loading commit data...
testing Loading commit data...
third_party Loading commit data...
tools Loading commit data...
.clang-format Loading commit data...
.clang-tidy Loading commit data...
.editorconfig Loading commit data...
.git-blame-ignore-revs Loading commit data...
.gitattributes Loading commit data...
.gitignore Loading commit data...
.gn Loading commit data...
.vpython Loading commit data...
.ycm_extra_conf.py Loading commit data...
AUTHORS Loading commit data...
BUILD.gn Loading commit data...
CODE_OF_CONDUCT.md Loading commit data...
ChangeLog Loading commit data...
DEPS Loading commit data...
LICENSE Loading commit data...
LICENSE.fdlibm Loading commit data...
LICENSE.strongtalk Loading commit data...
LICENSE.v8 Loading commit data...
LICENSE.valgrind Loading commit data...
OWNERS Loading commit data...
PRESUBMIT.py Loading commit data...
README.md Loading commit data...
WATCHLISTS Loading commit data...
codereview.settings Loading commit data...
snapshot_toolchain.gni Loading commit data...