• Mike Stanton's avatar
    Reland "[Torque] Add source positions for Torque files" · b08c6947
    Mike Stanton authored
    Reason for revert/reland: UBSan complained of unaligned reads.
    
    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.
    
    TBR=tebbi@chromium.org
    
    Bug: v8:8418
    Change-Id: Idb80467d3679ec2361386fe9b67597b93d7f72cf
    Reviewed-on: https://chromium-review.googlesource.com/c/1475763Reviewed-by: 's avatarMichael Stanton <mvstanton@chromium.org>
    Reviewed-by: 's avatarJakob Gruber <jgruber@chromium.org>
    Commit-Queue: Michael Stanton <mvstanton@chromium.org>
    Cr-Commit-Position: refs/heads/master@{#59657}
    b08c6947
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...