• Manos Koukoutos's avatar
    [turbofan] Optimize traps after Merge/IfTrue/IfFalse · 29afe1e5
    Manos Koukoutos authored
    We implement two optimizations for trap conditionals for patterns that
    come up in wasm-gc.
    In case of a Merge followed by a trap, where the path conditions of all
    branches of the Merge contain the trap condition, we lift the trap into
    the branches of the Merge.
    In case of a Branch whose IfTrue branch is followed by a TrapIf with the
    same condition, we replace it with the trap followed by the IfFalse
    branch. Symmetrically for IfFalse and TrapUnless.
    
    Bug: v8:7748
    Change-Id: I43040aebe60eab7b2230fc3130e3b8250e8b2f45
    Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3190109Reviewed-by: 's avatarNico Hartmann <nicohartmann@chromium.org>
    Commit-Queue: Manos Koukoutos <manoskouk@chromium.org>
    Cr-Commit-Position: refs/heads/main@{#77181}
    29afe1e5
Name
Last commit
Last update
..
api Loading commit data...
asmjs Loading commit data...
assembler Loading commit data...
base Loading commit data...
codegen Loading commit data...
compiler Loading commit data...
compiler-dispatcher Loading commit data...
date Loading commit data...
debug Loading commit data...
diagnostics Loading commit data...
execution Loading commit data...
heap Loading commit data...
interpreter Loading commit data...
libplatform Loading commit data...
logging Loading commit data...
numbers Loading commit data...
objects Loading commit data...
parser Loading commit data...
profiler Loading commit data...
regexp Loading commit data...
regress Loading commit data...
runtime Loading commit data...
strings Loading commit data...
tasks Loading commit data...
torque Loading commit data...
utils Loading commit data...
wasm Loading commit data...
zone Loading commit data...
BUILD.gn Loading commit data...
DEPS Loading commit data...
run-all-unittests.cc Loading commit data...
test-helpers.cc Loading commit data...
test-helpers.h Loading commit data...
test-utils.cc Loading commit data...
test-utils.h Loading commit data...
testcfg.py Loading commit data...
unittests.status Loading commit data...