summaryrefslogtreecommitdiff
path: root/docs/doc/wasm-interp.1.html
blob: 041031780ba28131ba1764a609515df2b7011ba3 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
<!DOCTYPE html>
<html>
<head>
  <meta charset="utf-8"/>
  <style>
    table.head, table.foot { width: 100%; }
    td.head-rtitle, td.foot-os { text-align: right; }
    td.head-vol { text-align: center; }
    div.Pp { margin: 1ex 0ex; }
  </style>
  <title>WABT(1)</title>
</head>
<body>
<table class="head">
  <tr>
    <td class="head-ltitle">WABT(1)</td>
    <td class="head-vol">General Commands Manual</td>
    <td class="head-rtitle">WABT(1)</td>
  </tr>
</table>
<div class="manual-text">
<h1 class="Sh" title="Sh" id="NAME"><a class="selflink" href="#NAME">NAME</a></h1>
<b class="Nm" title="Nm">wasm-interp</b> &#x2014;
  <span class="Nd" title="Nd">decode and run a WebAssembly binary file</span>
<h1 class="Sh" title="Sh" id="SYNOPSIS"><a class="selflink" href="#SYNOPSIS">SYNOPSIS</a></h1>
<table class="Nm">
  <tr>
    <td><b class="Nm" title="Nm">wasm-interp</b></td>
    <td>[<span class="Op">options</span>]
      <var class="Ar" title="Ar">file</var></td>
  </tr>
</table>
<h1 class="Sh" title="Sh" id="DESCRIPTION"><a class="selflink" href="#DESCRIPTION">DESCRIPTION</a></h1>
<b class="Nm" title="Nm">wasm-interp</b> decodes and runs a WebAssembly binary
  file using a stack-based interpreter.
<div class="Pp"></div>
The options are as follows:
<dl class="Bl-tag">
  <dt class="It-tag"><a class="selflink" href="#v"><b class="Fl" title="Fl" id="v">-v</b></a>,
    <b class="Fl" title="Fl">-</b><b class="Fl" title="Fl">-verbose</b></dt>
  <dd class="It-tag">Use multiple times for more info</dd>
  <dt class="It-tag"><b class="Fl" title="Fl">-</b><b class="Fl" title="Fl">-help</b></dt>
  <dd class="It-tag">Print a help message</dd>
  <dt class="It-tag"><b class="Fl" title="Fl">-</b><b class="Fl" title="Fl">-enable-exceptions</b></dt>
  <dd class="It-tag">Experimental exception handling</dd>
  <dt class="It-tag"><b class="Fl" title="Fl">-</b><b class="Fl" title="Fl">-disable-mutable-globals</b></dt>
  <dd class="It-tag">Import/export mutable globals</dd>
  <dt class="It-tag"><b class="Fl" title="Fl">-</b><b class="Fl" title="Fl">-enable-saturating-float-to-int</b></dt>
  <dd class="It-tag">Saturating float-to-int operators</dd>
  <dt class="It-tag"><b class="Fl" title="Fl">-</b><b class="Fl" title="Fl">-enable-sign-extension</b></dt>
  <dd class="It-tag">Sign-extension operators</dd>
  <dt class="It-tag"><b class="Fl" title="Fl">-</b><b class="Fl" title="Fl">-enable-simd</b></dt>
  <dd class="It-tag">SIMD support</dd>
  <dt class="It-tag"><b class="Fl" title="Fl">-</b><b class="Fl" title="Fl">-enable-threads</b></dt>
  <dd class="It-tag">Threading support</dd>
  <dt class="It-tag"><a class="selflink" href="#V"><b class="Fl" title="Fl" id="V">-V</b></a>,
    <b class="Fl" title="Fl">-</b><b class="Fl" title="Fl">-value-stack-size=SIZE</b></dt>
  <dd class="It-tag">Size in elements of the value stack</dd>
  <dt class="It-tag"><a class="selflink" href="#C"><b class="Fl" title="Fl" id="C">-C</b></a>,
    <b class="Fl" title="Fl">-</b><b class="Fl" title="Fl">-call-stack-size=SIZE</b></dt>
  <dd class="It-tag">Size in elements of the call stack</dd>
  <dt class="It-tag"><a class="selflink" href="#t"><b class="Fl" title="Fl" id="t">-t</b></a>,
    <b class="Fl" title="Fl">-</b><b class="Fl" title="Fl">-trace</b></dt>
  <dd class="It-tag">Trace execution</dd>
  <dt class="It-tag"><b class="Fl" title="Fl">-</b><b class="Fl" title="Fl">-run-all-exports</b></dt>
  <dd class="It-tag">Run all the exported functions, in order. Useful for
      testing</dd>
  <dt class="It-tag"><b class="Fl" title="Fl">-</b><b class="Fl" title="Fl">-host-print</b></dt>
  <dd class="It-tag">Include an importable function named &quot;host.print&quot;
      for printing to stdout</dd>
</dl>
<h1 class="Sh" title="Sh" id="EXAMPLES"><a class="selflink" href="#EXAMPLES">EXAMPLES</a></h1>
Parse binary file test.wasm, and type-check it
<div class="Pp"></div>
<div class="D1"><code class="Li">$ wasm-interp test.wasm</code></div>
<div class="Pp"></div>
Parse test.wasm and run all its exported functions
<div class="Pp"></div>
<div class="D1"><code class="Li">$ wasm-interp test.wasm
  --run-all-exports</code></div>
<div class="Pp"></div>
Parse test.wasm, run the exported functions and trace the output
<div class="Pp"></div>
<div class="D1"><code class="Li">$ wasm-interp test.wasm --run-all-exports
  --trace</code></div>
<div class="Pp"></div>
Parse test.wasm and run all its exported functions, setting the value stack size
  to 100 elements
<div class="Pp"></div>
<div class="D1"><code class="Li">$ wasm-interp test.wasm -V 100
  --run-all-exports</code></div>
<h1 class="Sh" title="Sh" id="SEE_ALSO"><a class="selflink" href="#SEE_ALSO">SEE
  ALSO</a></h1>
<a class="Xr" title="Xr" href="wasm-objdump.1.html">wasm-objdump(1)</a>,
  <a class="Xr" title="Xr" href="wasm-opcodecnt.1.html">wasm-opcodecnt(1)</a>,
  <a class="Xr" title="Xr" href="wasm-strip.1.html">wasm-strip(1)</a>,
  <a class="Xr" title="Xr" href="wasm-validate.1.html">wasm-validate(1)</a>,
  <a class="Xr" title="Xr" href="wasm2c.1.html">wasm2c(1)</a>,
  <a class="Xr" title="Xr" href="wasm2wat.1.html">wasm2wat(1)</a>,
  <a class="Xr" title="Xr" href="wast2json.1.html">wast2json(1)</a>,
  <a class="Xr" title="Xr" href="wat-desugar.1.html">wat-desugar(1)</a>,
  <a class="Xr" title="Xr" href="wat2wasm.1.html">wat2wasm(1)</a>,
  <a class="Xr" title="Xr" href="spectest-interp.1.html">spectest-interp(1)</a>
<h1 class="Sh" title="Sh" id="BUGS"><a class="selflink" href="#BUGS">BUGS</a></h1>
If you find a bug, please report it at
<div>&#x00A0;</div>
<a class="Lk" title="Lk" href="https://github.com/WebAssembly/wabt/issues">https://github.com/WebAssembly/wabt/issues</a>.</div>
<table class="foot">
  <tr>
    <td class="foot-date">December 17, 2018</td>
    <td class="foot-os">Debian</td>
  </tr>
</table>
</body>
</html>