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
Syrus Akbary
e9a968b4b0
Improved formatting
2018-10-24 02:01:46 +02:00
Syrus Akbary
f6a5bfaeee
Added f64 spectest
2018-10-24 01:22:16 +02:00
Syrus Akbary
e8e7111e3f
Added f32 spectest
2018-10-24 01:15:20 +02:00
Syrus Akbary
bb3e5dcfbe
Allow LibCalls in the relocator
2018-10-24 01:14:59 +02:00
Syrus Akbary
d28b29ccc0
Fixed start function
2018-10-24 00:17:17 +02:00
Syrus Akbary
6653eeca4f
Improved testing times by 5-10x
...
This is done via grouping of module/instance creation calls. This way the assert return calls are grouped to be tested in the same thread (therefore only one module creation is required rather than n=one for each test)
2018-10-23 15:43:44 +02:00
Syrus Akbary
3f5091780d
Improved formatting
2018-10-23 11:43:43 +02:00
Syrus Akbary
46742c9aaf
Call indirect fully working
2018-10-23 11:40:17 +02:00
Syrus Akbary
a796056c5f
Improved module docs
2018-10-23 11:09:57 +02:00
Syrus Akbary
81ab8951c9
Working fully with the context pointer
2018-10-23 01:52:03 +02:00
Syrus Akbary
975b106731
Improved pointers
2018-10-23 01:44:19 +02:00
Syrus Akbary
2a118930c2
Table now working properly
2018-10-23 01:15:18 +02:00
Syrus Akbary
037f76e3b1
Improved context data
2018-10-22 21:03:43 +02:00
Syrus Akbary
4ab26226f9
Revert "Improved function pointers"
...
This reverts commit a625382158
.
2018-10-22 18:56:29 +02:00
Syrus Akbary
a625382158
Improved function pointers
2018-10-22 18:36:51 +02:00
Syrus Akbary
7444837d09
Moved memories, tables and globals to be Unchecked slices
2018-10-22 18:31:12 +02:00
Syrus Akbary
617b66aad7
Documented the relocation module
2018-10-19 11:31:10 +02:00
Syrus Akbary
5c5fbd309d
Fixed memory issues
2018-10-19 01:28:16 +02:00
Syrus Akbary
6fce21e4d5
Added first tests for the vmctx (memory usage)
2018-10-18 19:01:09 +02:00
Syrus Akbary
80f3bf161e
Removed unnecesary function
2018-10-18 12:05:00 +02:00
Syrus Akbary
96f2440960
Added working mock for memory (grow and size)
2018-10-18 00:09:04 +02:00
Syrus Akbary
6534939005
Make import object non optional
2018-10-17 17:14:35 +02:00
Syrus Akbary
ba050f35cc
Improved wasmer script
2018-10-17 16:45:24 +02:00
Syrus Akbary
e97b47e147
Added ImportObject structure. Added integration tests
2018-10-17 16:08:51 +02:00
Syrus Akbary
c834f6b33e
Function imports now fully working
2018-10-17 11:23:41 +02:00
Syrus Akbary
2cc93ddc38
Added basic identity function benchmark
2018-10-16 17:01:36 +02:00
Syrus Akbary
1879a14938
All function calls are now working
2018-10-16 03:24:36 +02:00
Syrus Akbary
7f7eff788d
Function relocations are now working
2018-10-16 00:04:05 +02:00
Syrus Akbary
fade076fa4
Better reuse of function pointers in Instance
2018-10-15 20:45:16 +02:00
Syrus Akbary
b2d0968e49
Improved invoke function
2018-10-15 18:33:26 +02:00
Syrus Akbary
dd0f1b1a2d
Improved instance functions
2018-10-15 15:58:06 +02:00
Syrus Akbary
1482648219
Added module.info.exports for O(1) retrieval
2018-10-15 13:45:44 +02:00
Syrus Akbary
4c1e450c7f
Added function pointer to the instance functions
2018-10-15 12:51:34 +02:00
Syrus Akbary
7685746655
Fixed Instance functions memory offsets
2018-10-15 12:44:24 +02:00
Syrus Akbary
714c27b502
Fixed used architecture
2018-10-15 12:44:07 +02:00
Syrus Akbary
ad31e295dd
Fixed issue when there are no WebAssembly functions to allocate in memory
2018-10-15 11:52:36 +02:00
Syrus Akbary
69efaaaddd
Fixed duplicated signature
2018-10-15 11:46:13 +02:00
Syrus Akbary
432ed4cdbf
Make instance code more readable.
2018-10-15 11:46:04 +02:00
Syrus Akbary
8d790d78f9
Improved formatting
2018-10-15 03:03:00 +02:00
Syrus Akbary
78cf7800e5
Added function compilation
2018-10-15 02:48:59 +02:00
Syrus Akbary
e7788645d7
Added Module.verify function
2018-10-15 00:25:11 +02:00
Syrus Akbary
a9a580acee
Formatted files
2018-10-14 23:48:59 +02:00
Syrus Akbary
48fbc850ea
Improved runnable options
2018-10-14 23:47:35 +02:00
Syrus Akbary
3aaba4861f
Improved errors module
2018-10-14 23:14:00 +02:00
Syrus Akbary
adbcf89470
Refactored instantiate function to return Module and Instance
2018-10-14 22:23:48 +02:00
Syrus Akbary
59e9c7fe29
Improved module structure. Removed unnecessary files
2018-10-14 22:10:53 +02:00
Syrus Akbary
e16dcfe232
Renamed from ModuleInstance to Module
2018-10-14 21:41:59 +02:00
Syrus Akbary
cc9caff8d5
Improved ModuleInstance automatic compilation
2018-10-14 21:13:19 +02:00
Syrus Akbary
8bd6657e84
environment fully working
2018-10-14 20:37:42 +02:00
Syrus Akbary
ac9edf39e6
Improved instance
2018-10-14 13:59:11 +02:00
Syrus Akbary
2febd4edde
Improved make_table fn
2018-10-14 01:49:50 +02:00
Syrus Akbary
47215837fa
Trying to port functions over
2018-10-13 19:22:57 +02:00
Syrus Akbary
39bf85e0ea
Improved tests
2018-10-13 15:31:56 +02:00
Syrus Akbary
c8d4efaada
Added ExecFunc
2018-10-12 12:39:33 +02:00
Syrus Akbary
b4a09a2e94
Improved tests
2018-10-12 02:45:09 +02:00
Syrus Akbary
9bca6940b3
First working version of the interpreter
2018-10-11 21:29:36 +02:00