• Karl Schimpf's avatar
    Add capability of throwing values in WASM · 49106e48
    Karl Schimpf authored
    This is a second attempt at landing CL 644866 which was reverted by
    CL 667019.
    
    Extends the current implementation of WASM exceptions to be able to
    throw exceptions with values (not just tags).
    
    A JS typed (uint_16) array is used to hold the thrown values. This
    allows all WASM types to be stored (i32, i64, f32, and f64) as well as
    be inspected in JS.
    
    The previous CL was reverted because the WASM compiler made calls to
    run time functions with tagged objects, which must not be done. To fix
    this, all run time calls use the thread-level isolate to hold the
    exception being processed.
    
    Bug: v8:6577
    Change-Id: I4b1ef7e2847b71a2fab8e9934a0531057db9de63
    Reviewed-on: https://chromium-review.googlesource.com/677056
    Commit-Queue: Karl Schimpf <kschimpf@chromium.org>
    Reviewed-by: 's avatarClemens Hammacher <clemensh@chromium.org>
    Reviewed-by: 's avatarEric Holk <eholk@chromium.org>
    Cr-Commit-Position: refs/heads/master@{#48148}
    49106e48
Name
Last commit
Last update
..
api Loading commit data...
asmjs Loading commit data...
base Loading commit data...
compiler Loading commit data...
compiler-dispatcher Loading commit data...
heap Loading commit data...
interpreter Loading commit data...
libplatform Loading commit data...
parser Loading commit data...
wasm Loading commit data...
zone Loading commit data...
BUILD.gn Loading commit data...
DEPS Loading commit data...
cancelable-tasks-unittest.cc Loading commit data...
char-predicates-unittest.cc Loading commit data...
code-stub-assembler-unittest.cc Loading commit data...
code-stub-assembler-unittest.h Loading commit data...
counters-unittest.cc Loading commit data...
eh-frame-iterator-unittest.cc Loading commit data...
eh-frame-writer-unittest.cc Loading commit data...
locked-queue-unittest.cc Loading commit data...
object-unittest.cc Loading commit data...
register-configuration-unittest.cc Loading commit data...
run-all-unittests.cc Loading commit data...
source-position-table-unittest.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...
unicode-unittest.cc Loading commit data...
unittests.gyp Loading commit data...
unittests.isolate Loading commit data...
unittests.status Loading commit data...
value-serializer-unittest.cc Loading commit data...