Skip to content

single-pass regalloc: Corruption (?) with throw.wast #11545

@alexcrichton

Description

@alexcrichton

This currently fails on main:

$ cargo run wast /home/alex/code/wasmtime/tests/spec_testsuite/proposals/wasm-3.0/throw.wast --target x86_64-unknown-linux-gnu -Oregalloc-algorithm=single-pass -Osignals-based-traps=n -Wexceptions=y
...
Error: failed to run script file '/home/alex/code/wasmtime/tests/spec_testsuite/proposals/wasm-3.0/throw.wast'

Caused by:
    0: failed directive on /home/alex/code/wasmtime/tests/spec_testsuite/proposals/wasm-3.0/throw.wast:49
    1: error while executing at wasm backtrace:
           0:    0x120 - <unknown>!<wasm function 7>
    2: wasm trap: wasm `unreachable` instruction executed

Removing -Osignals-based-traps=n yields a panic:

$ cargo run wast /home/alex/code/wasmtime/tests/spec_testsuite/proposals/wasm-3.0/throw.wast --target x86_64-unknown-linux-gnu -Oregalloc-algorithm=single-pass -Wexceptions=y
...

thread 'main' panicked at /home/alex/code/wasmtime/crates/unwinder/src/exception_table.rs:168:25:
Wasmtime exception unwind info only supports dynamic contexts on the stack
note: run with `RUST_BACKTRACE=1` environment variable to display a backtrace

Metadata

Metadata

Assignees

No one assigned

    Labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions