• Toon Verwaest's avatar
    [ast] Always visit all AST nodes, even dead nodes · 9439a1d2
    Toon Verwaest authored
    We'll let the bytecode compiler and optimizing compilers deal with dead code,
    rather than the ast visitors. The problem is that the visitors previously
    disagreed upon what was dead. That's bad if necessary visitors omit parts of
    the code that the bytecode generator will actually visit.
    
    I did consider removing the AST nodes immediately in the parser, but that
    adds overhead and actually broke code coverage. Since dead code shouldn't be
    shipped to the browser anyway (and we can still omit it later in the bytecode
    generator), I opted for keeping the nodes instead.
    
    Change-Id: Ib02fa9031b17556d2e1d46af6648356486f8433d
    Reviewed-on: https://chromium-review.googlesource.com/c/1470108
    Commit-Queue: Toon Verwaest <verwaest@chromium.org>
    Reviewed-by: 's avatarLeszek Swirski <leszeks@chromium.org>
    Cr-Commit-Position: refs/heads/master@{#59569}
    9439a1d2
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...