• Thibaud Michaud's avatar
    [wasm][interpreter][eh] Implement catch with immediate · 44054826
    Thibaud Michaud authored
    In the latest spec, catch can take an exception index immediate, and
    control-flow jumps to the appropriate catch handler depending on the
    thrown exception.
    
    Do this by allowing multiple jump targets for the same pc in labels and
    in the control transfer map. At runtime, the unwinder will choose the
    appropriate control transfer entry based on the exception tag, unpack
    the exception and jump to the handler.
    
    Enable the exception cctests that were currently disabled for the
    interpreter, fix some issues and add tests for the new behaviors.
    
    R=clemensb@chromium.org
    
    Bug: v8:8091
    Change-Id: I30cb8f9459647a7c6f7bfd9785b238a9c9e9fc10
    Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2690587Reviewed-by: 's avatarClemens Backes <clemensb@chromium.org>
    Commit-Queue: Thibaud Michaud <thibaudm@chromium.org>
    Cr-Commit-Position: refs/heads/master@{#72661}
    44054826
control-transfer-unittest.cc 13.1 KB