• Jakob Gruber's avatar
    [regexp] Add dedicated flags for printing regexp code and bytecode · eebb18d3
    Jakob Gruber authored
    Printing regexp code used to behind the generic --print-code flag, but
    there was no way to distinguish between irregexp-generated code; and
    printing regexp bytecode was not supported at all (the
    --trace-regexp-bytecodes flag *did* exist, but prints the execution
    trace at runtime and not the generated bytecode sequence).
    
    This CL adds two new flags:
    
    --print-regexp-code
    --print-regexp-bytecode
    
    Regexp code is no longer printed as part of --print-code.
    
    Example output for --print-regexp-bytecode:
    
    generated bytecode for regexp pattern: .(?<!^.)
    0x1ddcc614cbd0     0  PUSH_BT, 02, 00, 00, 00, c0, 00, 00, 00 .......
    0x1ddcc614cbd8     8  LOAD_CURRENT_CHAR, 11, 00, 00, 00, b0, 00, 00, 00 .......
    0x1ddcc614cbe0    10  CHECK_CHAR, 18, 0a, 00, 00, b0, 00, 00, 00 .......
    0x1ddcc614cbe8    18  CHECK_CHAR, 18, 0d, 00, 00, b0, 00, 00, 00 .......
    0x1ddcc614cbf0    20  PUSH_CP, 01, 00, 00, 00 ...
    
    Bug: chromium:996391
    Change-Id: I731defbd7cf9ed29753a39bb1d7205dc136ca950
    Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1773249
    Commit-Queue: Jakob Gruber <jgruber@chromium.org>
    Auto-Submit: Jakob Gruber <jgruber@chromium.org>
    Reviewed-by: 's avatarPeter Marshall <petermarshall@chromium.org>
    Cr-Commit-Position: refs/heads/master@{#63442}
    eebb18d3
Name
Last commit
Last update
..
api Loading commit data...
asmjs Loading commit data...
ast Loading commit data...
base Loading commit data...
builtins Loading commit data...
codegen Loading commit data...
common Loading commit data...
compiler Loading commit data...
compiler-dispatcher Loading commit data...
d8 Loading commit data...
date Loading commit data...
debug Loading commit data...
deoptimizer Loading commit data...
diagnostics Loading commit data...
execution Loading commit data...
extensions Loading commit data...
flags Loading commit data...
handles Loading commit data...
heap Loading commit data...
ic Loading commit data...
init Loading commit data...
inspector Loading commit data...
interpreter Loading commit data...
json Loading commit data...
libplatform Loading commit data...
libsampler Loading commit data...
logging Loading commit data...
numbers Loading commit data...
objects Loading commit data...
parsing Loading commit data...
profiler Loading commit data...
protobuf Loading commit data...
regexp Loading commit data...
roots Loading commit data...
runtime Loading commit data...
sanitizer Loading commit data...
snapshot Loading commit data...
strings Loading commit data...
tasks Loading commit data...
third_party Loading commit data...
torque Loading commit data...
tracing Loading commit data...
trap-handler Loading commit data...
utils Loading commit data...
wasm Loading commit data...
zone Loading commit data...
DEPS Loading commit data...
OWNERS Loading commit data...