• 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
..
ast.h Loading commit data...
cfg.cc Loading commit data...
cfg.h Loading commit data...
contextual.h Loading commit data...
csa-generator.cc Loading commit data...
csa-generator.h Loading commit data...
declarable.cc Loading commit data...
declarable.h Loading commit data...
declaration-visitor.cc Loading commit data...
declaration-visitor.h Loading commit data...
declarations.cc Loading commit data...
declarations.h Loading commit data...
earley-parser.cc Loading commit data...
earley-parser.h Loading commit data...
file-visitor.cc Loading commit data...
file-visitor.h Loading commit data...
global-context.h Loading commit data...
implementation-visitor.cc Loading commit data...
implementation-visitor.h Loading commit data...
instructions.cc Loading commit data...
instructions.h Loading commit data...
parameter-difference.h Loading commit data...
source-positions.cc Loading commit data...
source-positions.h Loading commit data...
torque-parser.cc Loading commit data...
torque-parser.h Loading commit data...
torque.cc Loading commit data...
type-oracle.cc Loading commit data...
type-oracle.h Loading commit data...
types.cc Loading commit data...
types.h Loading commit data...
utils.cc Loading commit data...
utils.h Loading commit data...