;;; RUN: %(wasm-interp)s
;;; ARGS: --help
(;; STDOUT ;;;
usage: wasm-interp [options] filename [arg]...

  read a file in the wasm binary format, and run in it a stack-based
  interpreter.

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"

options:
      --help                                   Print this help message
      --version                                Print version information
  -v, --verbose                                Use multiple times for more info
      --enable-exceptions                      Enable 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
      --enable-tail-call                       Enable Tail-call support
      --disable-bulk-memory                    Disable Bulk-memory operations
      --disable-reference-types                Disable Reference types (externref)
      --enable-annotations                     Enable Custom annotation syntax
      --enable-code-metadata                   Enable Code metadata
      --enable-gc                              Enable Garbage collection
      --enable-memory64                        Enable 64-bit memory
      --enable-multi-memory                    Enable Multi-memory
      --enable-extended-const                  Enable Extended constant expressions
      --enable-relaxed-simd                    Enable 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
      --dummy-import-func                      Provide a dummy implementation of all imported functions. The function will log the call and return an appropriate zero value.
;;; STDOUT ;;)
