Syrus
fd5554c3bd
Refactored memory usage to use impl-abstract mmap
2018-12-14 17:32:35 -08:00
Syrus
a2bcdb658f
Refactored libcalls
2018-12-13 12:49:30 -08:00
Syrus
9a028abfe5
Refactored emscripten usage to allow future ABIs
2018-12-10 21:19:39 -08:00
Syrus
6f179ed4d2
Fixed merge
2018-12-10 19:31:08 -08:00
Syrus
028d86a300
Provide instance options when instantiating. Make tests monothreaded
2018-12-10 19:19:46 -08:00
Syrus
44a745e4f5
Added start_instance function
2018-12-10 16:23:14 -08:00
Syrus
707f30757c
Added probestack to LibCall
2018-12-10 16:22:56 -08:00
Brandon Fish
e7c4e25e77
Fix clippy warnings returning the result of a let binding from a block
2018-12-09 01:13:47 -06:00
Brandon Fish
a9d95b42c5
Fix unneeded return statement
2018-12-08 00:27:36 -06:00
Brandon Fish
704556e45e
Fix redundant_field_names
2018-12-08 00:16:16 -06:00
Lachlan Sneff
0e024aa722
Fix crashing cli args
2018-12-06 22:42:16 -05:00
Lachlan Sneff
28a668f38c
Stack allocate arguments
2018-12-06 15:21:58 -05:00
Steve Akinyemi
5b8e4ed4a6
Fix argv allocation
2018-12-06 16:20:02 +01:00
Steve Akinyemi
2b3c87e80c
Add support for argc/argv
2018-12-06 12:51:09 +01:00
Syrus Akbary
fbc2fc9c50
Make mock func calls non printed in releases
2018-12-05 23:53:41 -08:00
Syrus Akbary
27b4015373
Make progressbar optional
2018-12-05 23:29:27 -08:00
Syrus Akbary
36f70005c9
Improved progress bar style
2018-12-05 23:23:06 -08:00
Lachlan Sneff
bb34f4718e
Add initial progress bar
2018-12-05 20:39:06 -05:00
Syrus Akbary
b5e93ecae8
Improved docs on emscripten memory instantiation
2018-11-29 22:46:52 -08:00
Syrus Akbary
948f519a04
Make tests happy again
2018-11-29 20:49:34 -08:00
Lachlan Sneff
c881f95eb6
Almost working
2018-11-29 15:49:04 -05:00
Lachlan Sneff
1db0306b8b
implmented mmap2
2018-11-29 00:11:36 -05:00
Syrus Akbary
80ddc759a1
Formatted files
2018-11-28 13:25:56 -08:00
Syrus Akbary
02477b6e5e
Added support for conditional emscripten
2018-11-28 13:25:17 -08:00
Syrus Akbary
4fb01c87ec
Improved import functions casting readability
2018-11-26 21:23:23 -08:00
Syrus Akbary
c2ede37a72
Improved formatting
2018-11-26 20:29:26 -08:00
Syrus Akbary
50f6ea3bd4
Fixed all Rust warnings
2018-11-26 20:28:13 -08:00
Syrus Akbary
cb7c7fd475
Added _gettimeofday to emscripten
2018-11-26 12:02:29 -08:00
Lachlan Sneff
76c9107e48
Added a few more syscalls
2018-11-26 01:17:56 -05:00
Steve Akinyemi
ecc8199855
Remove failing impl
2018-11-26 00:05:36 -05:00
Steve Akinyemi
399f72df94
Add some syscalls
2018-11-26 00:05:36 -05:00
Lachlan Sneff
75ef87824e
Segfault-based memory bounds-checking. ( #29 )
...
* Mostly working
* Improve CircleCI releases
* Recover safely from WebAssembly-generated traps
* Add notes about async signal safety
* Improved trap catching with call_protected macro
* Improved test assert_trap code using call_protected macro
* Mostly working
2018-11-26 00:02:59 -05:00
Syrus Akbary
a44a3b0456
Improved trap catching with call_protected macro
2018-11-26 00:01:30 -05:00
losfair
227a3ee6d6
Recover safely from WebAssembly-generated traps
2018-11-26 00:01:30 -05:00
Lachlan Sneff
4015fb6193
Hack together enough emscripten stack stuff to make it happy
2018-11-25 23:56:21 -05:00
Steve Akinyemi
88235eab37
Remove failing impl
2018-11-24 18:38:51 +01:00
Steve Akinyemi
c639bf850e
Add some syscalls
2018-11-24 18:07:45 +01:00
Syrus Akbary
e59b95d95e
Removed unused code
2018-11-21 21:07:01 -08:00
Syrus Akbary
38f045da3c
run cargo fmt
2018-11-21 20:59:23 -08:00
Syrus Akbary
ccdabd26b5
pypyjs.wasm is finally working 🎉
2018-11-21 20:58:32 -08:00
Syrus Akbary
fca2eb3884
Merge branch 'master' into feature/add-emscripten-compatible-apis
...
# Conflicts:
# Cargo.lock
# cranelift
# src/webassembly/instance.rs
2018-11-20 19:07:51 -08:00
Syrus Akbary
f3833dc237
Merge branch 'master' into parallel-compilation
...
# Conflicts:
# src/webassembly/instance.rs
2018-11-20 16:30:25 -08:00
Steve Akinyemi
771dae7feb
Refactor api code and doc
2018-11-21 00:45:57 +01:00
Syrus Akbary
3b878620cc
Added support for mocking globals and tables by default
2018-11-19 13:09:16 -08:00
Syrus Akbary
12dc70d497
Added support for global references
2018-11-19 10:27:55 -08:00
Syrus Akbary
f2d2c9b9f8
Use rayon for easy parallel compilation
2018-11-18 23:51:56 -08:00
Syrus Akbary
9680d586c3
Use iterator map for compilation
2018-11-18 22:12:22 -08:00
Syrus Akbary
39e1f59311
Merge branch 'master' into features/global-value-offset
2018-11-18 21:05:55 -08:00
Syrus Akbary
a7e1775255
Added mocking back into instance
2018-11-18 21:05:26 -08:00
Syrus Akbary
60b1520808
Improved naming of Exportable to ImportableExportable
2018-11-18 20:23:01 -08:00
Syrus Akbary
9f561db90b
Added support for global value offsets
...
This commit depends on this PR landing on cranelift:
https://github.com/CraneStation/cranelift/pull/612
2018-11-18 20:22:18 -08:00
Syrus Akbary
998d7294f0
Fix table element size
2018-11-18 15:41:31 -08:00
Syrus Akbary
f3cbfc0e09
Fixed return_mode
2018-11-18 15:23:38 -08:00
Syrus Akbary
91875fef06
Merge branch 'master' into cranelift-upgrade
...
# Conflicts:
# src/webassembly/module.rs
2018-11-18 13:09:34 -08:00
Steve Akinyemi
e7923d3b32
Add memory_grow.wast
test file.
2018-11-17 22:13:59 +01:00
Steve Akinyemi
ba6bc71019
Fix LinearMemory.current update bug
2018-11-17 19:56:15 +01:00
Syrus Akbary
7977d09fc7
Merge branch 'master' into fix/table-import-memory-repr-rebased
...
# Conflicts:
# .circleci/config.yml
# install.sh
# src/build_spectests.rs
# src/linkers/emscripten/abort.rs
# src/linkers/emscripten/mod.rs
# src/linkers/mod.rs
# src/main.rs
# src/webassembly/instance.rs
# src/webassembly/memory.rs
# src/webassembly/mod.rs
# src/webassembly/module.rs
2018-11-17 01:01:47 -08:00
Syrus Akbary
84b9847456
Improved offsets in module using pointer size rather than fixed numbers
...
# Conflicts:
# src/webassembly/module.rs
2018-11-17 00:46:27 -08:00
Syrus Akbary
e4ed4cc532
Improved instance & module data pointers location
...
# Conflicts:
# src/webassembly/instance.rs
# src/webassembly/module.rs
2018-11-17 00:42:31 -08:00
Syrus Akbary
ac2d605472
Added Instance options, automatically mock missing imports
...
# Conflicts:
# src/webassembly/instance.rs
# src/webassembly/mod.rs
2018-11-17 00:37:45 -08:00
Syrus Akbary
c452ff1c04
Improved error messaging
2018-11-17 00:07:18 -08:00
Syrus Akbary
a96c106b17
Improved debug statements
...
Same commit as aba907cbc4
but without using the log debug macro (as causes fail)
2018-11-17 00:05:41 -08:00
Steve Akinyemi
df482667aa
Fix table and memory import and improve memory storage
2018-11-16 16:55:49 +01:00
Syrus Akbary
a9e46a02d3
Merge branch 'master' into cranelift-upgrade
...
# Conflicts:
# Cargo.lock
# Cargo.toml
# src/webassembly/mod.rs
# src/webassembly/module.rs
2018-11-15 19:40:45 -08:00
Syrus Akbary
5c0e404d96
Refactored math intrinsics into its own module
2018-11-15 15:06:12 -08:00
Syrus Akbary
1faaad7f72
Autoformat files with cargo fmt
2018-11-15 13:31:37 -08:00
Syrus Akbary
2dcd25bebd
Make wasmer work with stable Rust
2018-11-15 13:30:32 -08:00
Syrus Akbary
cdbd27275c
Improved errors formatting
2018-11-15 00:51:18 -08:00
Syrus Akbary
ef09889df9
Improved offsets in module using pointer size rather than fixed numbers
2018-11-14 23:56:02 -08:00
Syrus Akbary
adf6d298b6
Trying to upgrade Cranelift to 0.23
2018-11-14 23:10:35 -08:00
Syrus Akbary
6bfd7d9081
Improved instance & module data pointers location
2018-11-14 11:05:57 -08:00
Syrus Akbary
278dff0fa6
Added Instance options, automatically mock missing imports
2018-11-13 19:44:24 -08:00
Syrus Akbary
219bd68256
Improved error messaging
2018-11-13 18:41:51 -08:00
Syrus Akbary
aba907cbc4
Improved debug statements
2018-11-13 17:21:03 -08:00
Syrus Akbary
58c6822359
Fixed warnings
2018-11-07 14:44:17 +01:00
Steve Akinyemi
2fe528aa57
Add utility print function
2018-11-07 13:52:31 +01:00
Steve Akinyemi
df0feb9b7f
Update spectests
2018-11-07 11:57:28 +01:00
Steve Akinyemi
ffe383e611
Add updated upstream tests
2018-11-07 11:56:37 +01:00
Steve Akinyemi
3a65bdbac5
Fix memory grow issues
2018-11-07 11:55:48 +01:00
Syrus Akbary
702ea931b4
Fixed grow_memory call
2018-11-06 16:54:43 +01:00
Syrus Akbary
e7b4d06ec0
Fixed all Rust code warnings
2018-11-06 15:51:01 +01:00
Syrus Akbary
f44466d1a3
Improved Instance docs
2018-11-02 11:37:45 +01:00
Syrus Akbary
0aa26455b7
Automatically start modules first. Documented SKIP_MUTABLE_GLOBALS case
2018-10-29 23:40:20 +01:00
Syrus Akbary
33b8757e90
Get env printf basic example working
2018-10-29 12:29:44 +01:00
Syrus Akbary
c97312345e
Test 'tee_local' and 'set_global' in more operators
...
Based on this commit from the WebAssembly spec tests: c90bc9686f
2018-10-29 09:53:48 +01:00
Syrus Akbary
d772cacc98
Fixed globals to a correct func pointer. Added globals spectest
...
Also fixed f32, f64 to i64 conversion (from mem::transmute to byte type casting)
2018-10-28 21:50:57 +01:00
Syrus Akbary
b94049f949
Fixed heap reference to memory. Added address spectest
2018-10-27 13:33:08 +02:00
Syrus Akbary
0e1dc88d9c
Improved call_indirect tests and instance error message on mutable memories
2018-10-26 15:14:51 +02:00
Syrus Akbary
79506c4983
Make align partially pass
2018-10-26 14:53:33 +02:00
Syrus Akbary
d32422c2be
Improved memory access to use the vm_context
2018-10-26 12:49:02 +02:00
Syrus Akbary
ca6050e18b
Fixed instantiate_streaming references
2018-10-24 12:36:43 +02:00
Syrus Akbary
dfa50ddc53
Remove unused code
2018-10-24 12:35:54 +02:00
Syrus Akbary
d4a21c0343
Added unimplemented instantiateStreaming function
2018-10-24 11:56:42 +02:00
Syrus Akbary
6db2d9f696
Documented the import module
2018-10-24 11:54:06 +02:00
Syrus Akbary
fe9fb9fe42
Improved memory documentation
2018-10-24 11:47:12 +02:00
Syrus Akbary
bcad000cc2
Improved utility functions docs
2018-10-24 11:44:33 +02:00
Syrus Akbary
1c6f677a78
Cleanup “module” module
2018-10-24 11:43:18 +02:00
Syrus Akbary
67b0d156a3
Refactored relocation code
2018-10-24 11:39:00 +02:00
Syrus Akbary
76850eed96
Fixed grow_memory function
2018-10-24 02:32:06 +02:00
Syrus Akbary
d797808d4b
Improved Instance docs and removed unused code
2018-10-24 02:17:05 +02:00