NAME
wasm-interp – decode and run a WebAssembly binary file
SYNOPSIS
wasm-interp [options] filename [arg]...
DESCRIPTION
wasm-interp read a file in the wasm binary format, and run in it a stack-based interpreter.
The options are as follows:
- --help
-
Print this help message
- --version
-
Print version information
- -v, --verbose
-
Use multiple times for more info
- --disable-exceptions
-
Disable Experimental exception handling
- --disable-mutable-globals
-
Disable Import/export mutable globals
- --disable-saturating-float-to-int
-
Disable Saturating float-to-int operators
- --disable-sign-extension
-
Disable Sign-extension operators
- --disable-simd
-
Disable SIMD support
- --enable-threads
-
Enable Threading support
- --enable-function-references
-
Enable Typed function references
- --disable-multi-value
-
Disable Multi-value
- --disable-tail-call
-
Disable Tail-call support
- --disable-bulk-memory
-
Disable Bulk-memory operations
- --disable-reference-types
-
Disable Reference types (externref)
- --disable-annotations
-
Disable Custom annotation syntax
- --enable-code-metadata
-
Enable Code metadata
- --enable-gc
-
Enable Garbage collection
- --disable-memory64
-
Disable 64-bit memory
- --disable-multi-memory
-
Disable Multi-memory
- --disable-extended-const
-
Disable Extended constant expressions
- --disable-relaxed-simd
-
Disable Relaxed SIMD
- --enable-custom-page-sizes
-
Enable Custom page sizes
- --enable-compact-imports
-
Enable Compact import section
- --enable-wide-arithmetic
-
Enable Wide arithmetic
- --enable-all
-
Enable all features
- -V, --value-stack-size=SIZE
-
Size in elements of the value stack
- -C, --call-stack-size=SIZE
-
Size in elements of the call stack
- -t, --trace
-
Trace execution
- -r, --run-export=FUNCTION
-
Run exported function by name
- -a, --argument=ARGUMENT
-
Add argument to an exported function execution
- --wasi
-
Assume input module is WASI compliant (Export WASI API the the module and invoke _start function)
- -e, --env=ENV
-
Pass the given environment string in the WASI runtime
- -d, --dir=DIR
-
Pass the given directory the the WASI runtime
- --run-all-exports
-
Run all the exported functions, in order. Useful for testing
- --host-print
-
Include an importable function named "host.print" for printing to stdout
EXAMPLES
parse binary file test.wasm, and type-check it
$ wasm-interp test.wasm
parse test.wasm and run all its exported functions
$ wasm-interp test.wasm --run-all-exports
parse test.wasm, run the exported functions and trace the output
$ wasm-interp test.wasm --run-all-exports --trace
parse test.wasm and run all its exported functions, setting the value stack size to 100 elements
$ wasm-interp test.wasm -V 100 --run-all-exports
parse test.wasm, run specific exported function by name with argument
$ wasm-interp test.wasm -r func_sum -a i32:8 -a i32:5
SEE ALSO
wasm-objdump(1), wasm-stats(1), wasm-strip(1), wasm-validate(1), wasm2c(1), wasm2wat(1), wast2json(1), wat-desugar(1), wat2wasm(1), spectest-interp(1)
BUGS
If you find a bug, please report it at
https://github.com/WebAssembly/wabt/issues.