• Mike Stanton's avatar
    [Torque] Add source positions for Torque files · 0a24e67a
    Mike Stanton authored
    To improve the Torque debugging experience, we can add source positions
    for each line. This information is carried through the generated
    CSA code (in <output directory>/gen/torque-generated/*.cc) and
    embedded as SourcePositions in the Code object.
    
    At snapshot time, these SourcePositions are stripped from the Code
    object and turned into platform-appropriate line number debug
    information.
    
    At this time on Linux, you'll need to build with "is_clang=false"
    in order to use GCC, because crucial steps are missing in Clang's
    ability to convey the information into the binary successfully.
    
    This CL also introduces a flag to control the existing source
    information in CSA code. --enable-source-at-csa-bind is now set
    to false by default because it's a bit confusing to "hop" between
    source lines in .TQ files and in .CC files. I expect to continue
    making adjustments there, as I want to provide helpful
    debugging aids at the CSA level as well as the Torque level.
    The current configuration prioritizes Torque.
    
    A detailed guide on usage to follow (also on v8.dev).
    
    Bug: v8:8418
    Change-Id: Ib4226877ce4cae451bb4d0c546927e89f4e66b58
    Reviewed-on: https://chromium-review.googlesource.com/c/1475473Reviewed-by: 's avatarTobias Tebbi <tebbi@chromium.org>
    Commit-Queue: Michael Stanton <mvstanton@chromium.org>
    Cr-Commit-Position: refs/heads/master@{#59636}
    0a24e67a
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...