https://github.com/lu-zero/testcase-wasi-alloc
Testcase for a strange allocation problem
https://github.com/lu-zero/testcase-wasi-alloc
Last synced: 3 months ago
JSON representation
Testcase for a strange allocation problem
- Host: GitHub
- URL: https://github.com/lu-zero/testcase-wasi-alloc
- Owner: lu-zero
- Created: 2020-02-06T10:02:00.000Z (over 5 years ago)
- Default Branch: master
- Last Pushed: 2020-02-06T10:30:20.000Z (over 5 years ago)
- Last Synced: 2025-01-17T13:17:00.770Z (5 months ago)
- Language: Rust
- Size: 1.95 KB
- Stars: 1
- Watchers: 3
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# Strange allocation/addressing failure
Any alignment above 3 (64bit) fails even if `v128` should require 128 bit alignment.
``` sh
$ rustup target add wasm32-wasi
$ cargo build --target wasm32-wasi
`````` sh
$ wasmtime target/wasm32-wasi/debug/testcase.wasm -- 5
...
index at 131070 len 307200
index at 131071 len 307200
index at 131072 len 307200
Segmentation fault
`````` sh
$ wasmtime target/wasm32-wasi/debug/testcase.wasm -- 4
...
index at 131070 len 307200
index at 131071 len 307200
index at 131072 len 307200
Error: failed to run main module `target/wasm32-wasi/debug/testcase.wasm`Caused by:
0: failed to invoke `_start`
1: wasm trap: out of bounds memory access, source location: @6999
wasm backtrace:
0: !testcase::PlaneData::new::hdfb5845c549bf326
`````` sh
$ wavm run --abi=wasi target/wasm32-wasi/debug/testcase.wasm ${align}
...
index at 131072 len 307200
Runtime exception: wavm.outOfBoundsMemoryAccess(+1703936)
Call stack:
wasm!target/wasm32-wasi/debug/testcase.wasm!_ZN8testcase9PlaneData3new17h2664eb193e5f086dE+379
wasm!target/wasm32-wasi/debug/testcase.wasm!_ZN8testcase4main17h4820968c490e6e56E+58
wasm!target/wasm32-wasi/debug/testcase.wasm!_ZN3std2rt10lang_start28_$u7b$$u7b$closure$u7d$$u7d$17h1b5cf38201ff41a0E+20
wasm!target/wasm32-wasi/debug/testcase.wasm!_ZN3std10sys_common9backtrace28__rust_begin_short_backtrace17h51b9f3fe0bfdc5cdE+3
wasm!target/wasm32-wasi/debug/testcase.wasm!_ZN3std9panicking3try7do_call17hcce8bad532002067E+7
wasm!target/wasm32-wasi/debug/testcase.wasm!__rust_maybe_catch_panic+2
wasm!target/wasm32-wasi/debug/testcase.wasm!_ZN3std2rt19lang_start_internal17h7161fc5134e0d17aE+93
wasm!target/wasm32-wasi/debug/testcase.wasm!_ZN3std2rt10lang_start17hd0cc83fd85c32f30E+47
wasm!target/wasm32-wasi/debug/testcase.wasm!__original_main+7
wasm!target/wasm32-wasi/debug/testcase.wasm!_start+1
thnk!C to WASM thunk!()->()+0
host!wavm+12617510
host!wavm+13695445
host!wavm+13799219
host!wavm+11656926
host!wavm+11646680
host!wavm+11637813
<2 redundant frames omitted>
host!wavm+11636211
host!wavm+11545749
host!/lib64/libc.so.6!__libc_start_main+237
host!wavm+11481128Aborted
```