• Jakob Gruber's avatar
    [builtins] Reduce the generated embedded.S file size on windows · 4ca93a64
    Jakob Gruber authored
    Windows MASM becomes extremely slow when given very large data streams.
    Runtime behavior is super-linear, with compile times of
    
      5s for 50 KLOC in embedded.S
     15s for 100KLOC
     40s for 150KLOC
    
    Compilation of the 320KLOC file produced for debug builds took more than
    5 minutes.
    
    This CL reduces compile time by emitting QWORD directives instead,
    which reduces the emitted debug embedded.S to around 120KLOC and
    compile times to around 40s.
    
    Bug: v8:8475,v8:6666
    Change-Id: I19903cdf7d1b70a65c00ca67f40129847b17f386
    Reviewed-on: https://chromium-review.googlesource.com/c/1341951Reviewed-by: 's avatarDan Elphick <delphick@chromium.org>
    Commit-Queue: Jakob Gruber <jgruber@chromium.org>
    Cr-Commit-Position: refs/heads/master@{#57609}
    4ca93a64
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...