Commit graph

32 commits

Author SHA1 Message Date
Brian Carroll
83b5607022
wasm_interp: rename various variables stack->store 2022-12-18 01:09:20 +00:00
Brian Carroll
a3c6cfbc0e
wasm_interp: rename module value_stack -> value_store 2022-12-18 00:20:29 +00:00
Brian Carroll
d51beb073f
wasm_interp: create a block for each function and get tests working again 2022-12-17 20:52:19 +00:00
Brian Carroll
caedb9060b
wasm_interp: remove CallStack, create Frame, & share value storage for stack and locals
This allows us to do calls without moving arguments from one place to another
2022-12-17 20:52:19 +00:00
Brian Carroll
eaf0211808
cli: update run_wasm to use roc_wasm_interp 2022-12-16 14:52:11 +00:00
Brian Carroll
3ef171e620
wasm_interp: support fake files in WASI 2022-12-16 14:52:11 +00:00
Brian Carroll
ca0f159386
wasm_interp: allow WASI to take bytes rather than strings for argv 2022-12-16 14:52:10 +00:00
Brian Carroll
b7fef386ee
wasm_interp: implement WASI random_get & refactor default imports 2022-12-16 14:52:05 +00:00
Brian Carroll
612c258e35
wasm_interp: simplify CallStack for easier debugging 2022-12-10 00:52:23 +00:00
Brian Carroll
90449f45f3
test_gen: get some tests working with roc_wasm_interp 2022-12-10 00:52:23 +00:00
Brian Carroll
2abae1b5e1
wasm_interp: Don't panic while pushing a stack frame 2022-12-06 20:31:50 +00:00
Brian Carroll
9d912a6cc7
wasm_interp: don't panic when unwrapping Value 2022-12-06 20:19:25 +00:00
Brian Carroll
2dac57c2bb
wasm_interp: self-review fixes 2022-12-06 08:59:17 +00:00
Brian Carroll
0f5b7be945
wasm_interp: dump stack trace on unreachable instruction 2022-12-06 08:59:17 +00:00
Brian Carroll
6d43763ab7
wasm_interp: dump a stack trace on error 2022-12-06 08:59:08 +00:00
Brian Carroll
5bdd1b5628
wasm_interp: use Result instead of panic. Focus debug info on *Wasm app*, not interp. 2022-12-06 08:59:08 +00:00
Brian Carroll
284dc6fa51
wasm_interp: support WASI argc/argv, and writing to stdout/stderr 2022-12-05 22:16:27 +00:00
Brian Carroll
c6e446da8d
wasm_interp: don't expose internal types 2022-12-02 08:02:27 +00:00
Brian Carroll
4714b4599a
wasm_interp: move test_utils into tests/mod.rs 2022-12-02 08:02:23 +00:00
Brian Carroll
ffd35f5884
wasm_interp: move tests inside the crate 2022-12-02 07:54:13 +00:00
Brian Carroll
c866ce6b09
wasm_interp: Handle calls to imports 2022-12-01 20:41:38 +00:00
Brian Carroll
b10ac827f1
wasm_interp: simplified ImportDispatcher
We don't really need a trait for the 'import module' concept.
2022-12-01 08:47:32 +00:00
Brian Carroll
7ddff49691
wasm_interp: possible design for imports, using enum dispatch 2022-11-30 07:25:38 +00:00
Brian Carroll
c2bf7d68fc
wasm_interp: rename ExecutionState -> Instance to match standard Wasm terminology 2022-11-28 23:28:08 +00:00
Brian Carroll
eeca876421
wasm_interp: create a test_utils module 2022-11-27 22:10:12 +00:00
Brian Carroll
6523b38847
wasm_interp: implement calls with arguments 2022-11-24 16:43:31 +00:00
Brian Carroll
235c238e36
Move Value from wasm_interp to wasm_module & create GlobalSection::initial_values 2022-11-24 16:43:31 +00:00
Brian Carroll
3d7fb380a5
wasm_interp: Tests for ExecutionState 2022-11-21 19:54:48 +00:00
Brian Carroll
2ca74e5070
wasm_interp: create execute module 2022-11-21 19:54:48 +00:00
Brian Carroll
3b0a024a56
wasm_interp: tests for call_stack 2022-11-21 19:54:48 +00:00
Brian Carroll
08e9fb65a6
wasm_interp: create call_stack module 2022-11-21 19:54:48 +00:00
Brian Carroll
b0e89dd386
wasm_interp: new crate, with a value_stack module 2022-11-21 19:54:48 +00:00