Brandon Fish
7bb947aba7
Add func signature lookup functions
2019-02-17 14:12:05 -06:00
David McNeil
a9b1c6c85e
Fix emscripten environment ( #172 )
...
Dynamically determine abortOnCannotGrowMemory and add
_emscripten_get_heap_size and _emscripten_resize_heap
2019-02-16 15:01:01 -07:00
Brandon Fish
56079ad589
Add compile Module function
2019-02-15 19:47:00 -06:00
Brandon Fish
9ee86138b9
Impl Error for CallError
2019-02-15 19:16:19 -06:00
Brandon Fish
768a2fae18
Merge branch 'master' into feature/c-api
2019-02-15 19:12:30 -06:00
Lachlan Sneff
108973dabe
Start producing object files with llvm
2019-02-15 16:02:20 -08:00
Christopher Serr
cb29261ec7
Use repr(transparent) for single element structs ( #187 )
...
The ABI of aggregates such as single element structs is not required to
be the same as the single elements themselves. This is especially true
for f64 vs. #[repr(c)] struct F(f64); on Windows. Therefore the macro
has been tweaked so S1 uses repr(transparent) which is made for exactly
for this use case.
Closes #183
2019-02-15 15:11:06 -08:00
Mackenzie Clark
2d2d708500
Validate descriptor max on creating new table or memory ( #186 )
2019-02-15 13:14:42 -08:00
Mackenzie Clark
b68b109b7d
Implement error for remaining errors and the amalgamation error ( #184 )
2019-02-15 08:15:57 -08:00
Brandon Fish
3ebb80e50e
Update imports and add func_new
2019-02-15 09:40:28 -06:00
Mackenzie Clark
39ef47ebb1
Implement Error for CompilerError ( #181 )
2019-02-14 21:08:35 -08:00
Mackenzie Clark
09ba27390c
Implement Error for Creation Error ( #180 )
2019-02-14 19:22:19 -08:00
Mackenzie Clark
6e87676160
Impl error for link error ( #182 )
2019-02-14 18:40:52 -08:00
Mackenzie Clark
24d028e2a2
impl error trait for ResolveError ( #179 )
2019-02-14 18:19:18 -08:00
Lachlan Sneff
73b4f7d337
Implement memory and global operations
2019-02-14 18:08:20 -08:00
Lachlan Sneff
2d87f64f82
Merge master into feature/llvm-backend
2019-02-14 15:47:28 -08:00
Lachlan Sneff
8827830aba
implement load* and store* instructions
2019-02-14 15:13:58 -08:00
Mackenzie Clark
0c7532b1ba
remove unnecessary print statements ( #177 )
2019-02-14 11:11:35 -08:00
Mackenzie Clark
6a1fdb7f91
add windows exception handling in C ( #175 )
2019-02-14 09:58:33 -08:00
Brandon Fish
bfd5e21605
Add export_name and export_func
2019-02-14 00:00:39 -06:00
Brandon Fish
93979aeae2
Add get exports from instance
2019-02-13 20:02:11 -06:00
Lachlan Sneff
2572a0259b
Get control flow working (fingers crossed)
2019-02-12 18:02:00 -08:00
Syrus
b6416068a8
Use vec.push instead of .insert for vmctx arg
2019-02-12 11:17:09 -08:00
Syrus
b7c3cc09d1
Fixed typed func implementation
2019-02-12 11:14:20 -08:00
Syrus
44d1a0d1f9
Fixed debug function context position
2019-02-12 10:49:43 -08:00
Syrus
f52c4ce5cc
Merge branch 'master' into feature/ctx-first-arg
2019-02-12 10:28:25 -08:00
Syrus
c40195cf77
Fixed spectests
2019-02-12 10:04:11 -08:00
Brandon Fish
7f5ca34138
Merge branch 'master' into feature/c-api
2019-02-11 23:17:26 -06:00
Brandon Fish
27cbfc0b0b
Add documentation to API functions
2019-02-11 23:14:32 -06:00
Lachlan Sneff
5ee19e55a5
Add some branching instructions
2019-02-11 19:34:04 -08:00
Brandon Fish
34c45aee3d
Update last error for every error result
2019-02-11 20:08:54 -06:00
Brandon Fish
019ef9ea01
Consolidate result type to one enum
2019-02-11 19:07:28 -06:00
Brandon Fish
b70e319f5c
Add initial error messaging
2019-02-10 17:57:23 -06:00
Brandon Fish
66bf13c9dd
Add memory data function
2019-02-10 15:20:35 -06:00
Brandon Fish
a502da58e3
Fix import object destroy
2019-02-10 14:27:08 -06:00
Brandon Fish
7ef472dae2
Add instance context memory
2019-02-10 14:24:36 -06:00
Brandon Fish
0cfe864fe6
Add Memory data length
2019-02-10 14:14:42 -06:00
Syrus
4311a37def
Fixed simple spectests example compilation
2019-02-09 20:13:58 -08:00
Brandon Fish
2fa9cec0ed
Add include guard
2019-02-09 18:07:05 -06:00
Lachlan Sneff
327e3a4a1a
Implement many wasm instructions
2019-02-09 15:53:40 -08:00
Brandon Fish
a0288c87ac
Add Memory Grow C API
2019-02-09 17:53:03 -06:00
Brandon Fish
94c5acedbf
Add basic Global API
2019-02-09 17:39:15 -06:00
Syrus
227d5e24cf
Moved ctx to first argument in Cranelift backend
2019-02-09 14:18:53 -08:00
Syrus
6c7fd55b87
Moved ctx to be the first argument in emscripten
2019-02-09 13:58:18 -08:00
Syrus
393b7dbdf3
Moved ctx in func macro to be first arg
2019-02-09 13:33:22 -08:00
Mackenzie Clark
4ef7dc339c
optimize imports ( #170 )
2019-02-09 13:31:28 -08:00
Brandon Fish
8364c39b4c
Add Table grow function
2019-02-09 13:58:50 -06:00
Brandon Fish
4e5e525626
Add basic Table functions
2019-02-09 13:37:07 -06:00
Brandon Fish
c3707efa08
Update for merge from master
2019-02-09 13:09:54 -06:00
Brandon Fish
bda6451fb6
Merge branch 'master' into feature/c-api
2019-02-09 13:08:30 -06:00
Mackenzie Clark
e7c3b99ba9
add lua integration test ( #109 )
2019-02-08 17:47:51 -08:00
Lachlan Sneff
aa90a33501
Make module info store FuncSig, not Arc<FuncSig>
2019-02-08 14:19:58 -08:00
Mackenzie Clark
9a56680281
fix windows linking and appveyor build ( #166 )
2019-02-08 13:51:29 -08:00
Lachlan Sneff
1886b3d3c1
Naive short circuiting implementation for user panics and results. ( #167 )
...
* Add panic and result catching
* exit process on panic and user runtime error
* Complete initial implementation
2019-02-08 13:08:03 -08:00
Lachlan Sneff
4e1bc483a8
Fix emscripten setup, nginx works ( #165 )
...
* Fix emscripten setup, nginx works
* Remove commented-out code
* Re-enable nginx integration test
2019-02-08 10:55:32 -08:00
Mackenzie Clark
351b4feeeb
implement with_size_protect ( #163 )
...
* implement with_size_protect
* no more conditional compilation
2019-02-08 10:32:20 -08:00
Mackenzie Clark
46ac4e9e1a
reorganize signal module and leave stubs in windows ( #162 )
2019-02-07 17:08:42 -08:00
Mackenzie Clark
9719781eee
create platform mods for syscalls and stub for windows ( #161 )
...
* create platform mods for syscalls and stub for windows
* missing constants and duplicate use statements
2019-02-07 16:56:44 -08:00
Mackenzie Clark
f8e2b25137
consolidate shared functions and optimize use statements ( #159 )
2019-02-07 15:24:22 -08:00
Mackenzie Clark
25d438f346
create an alias for pid_t which does not exist on libc windows ( #160 )
2019-02-07 15:12:27 -08:00
Lachlan Sneff
8d2c1956d7
Fix runtime error catching ( #157 )
2019-02-07 14:44:28 -08:00
Mackenzie Clark
ea2bd80089
refactor getenv for windows ( #156 )
2019-02-07 14:23:13 -08:00
Brandon Fish
7574652bb1
Re-enable all passing emtests for CI
2019-02-07 14:55:06 -06:00
Syrus Akbary
1c1318623e
Merge pull request #155 from wasmerio/fix/signature-index-wrong-map
...
Fix signature index issue
2019-02-07 11:58:11 -08:00
Syrus
14806cb604
Fixed formatting and removed print debug statement
2019-02-07 11:37:15 -08:00
Mackenzie Clark
ce03e4464c
fill unsetenv for windows ( #150 )
...
* fill unsetenv
* update usage of read_string_from_wasm
* convert helper to return String
* correct usage of helper fn, cargo fmt, and check in lock file change
2019-02-07 10:51:19 -08:00
Lachlan Sneff
dbea7b3abe
Merge branch 'master' into fix/signature-index-wrong-map
2019-02-07 10:46:35 -08:00
Lachlan Sneff
e147983ece
fix
2019-02-07 10:45:48 -08:00
Mackenzie Clark
663de770bf
stub emscripten env calls for windows ( #151 )
2019-02-07 10:16:55 -08:00
Mackenzie Clark
4ab8bd69be
install errno on all platforms ( #152 )
2019-02-07 10:02:41 -08:00
Mackenzie Clark
bca702794c
assign to the protect enum ( #153 )
2019-02-07 09:04:57 -08:00
Mackenzie Clark
83df3ad35f
fix putenv and setenv for windows ( #140 )
2019-02-06 18:57:11 -08:00
Mackenzie Clark
ac286b708b
create the windows io mod and link printf ( #144 )
2019-02-06 17:56:01 -08:00
Mackenzie Clark
0a7b9b26b8
let the compiler deduce types in syscalls ( #145 )
2019-02-06 17:06:05 -08:00
Mackenzie Clark
f13a45a5bc
link time function and create alias for clockid_t ( #146 )
2019-02-06 16:40:02 -08:00
Lachlan Sneff
8fe9b7eac2
Add caching. ( #134 )
...
* Allow a module to have a different signature registry than the process-specific
* Add core ability to build compiled code caches
* Remove timing printouts
* Serialize/Deserialize memories to reduce copies
* Work more on api
* Relocate local functions relatively before external functions
* Fix incorrect definition in test
* merge errors caused by merge
* Fix emscripten compile
* Fix review comments
2019-02-06 16:26:45 -08:00
Lachlan Sneff
2f2f86a4de
Add feature flag to output debug information while running wasm ( #147 )
...
* Generate debug info during execution
* feature cfg debug output
2019-02-06 15:43:27 -08:00
Brandon Fish
2b55606d3c
Add at_init emscripten_environ_constructor
2019-02-06 00:11:31 -06:00
Brandon Fish
b86acab3e4
Fix debug statement
2019-02-05 23:48:05 -06:00
Brandon Fish
3cd81d4119
Fix lua emscripten imports
2019-02-05 23:39:12 -06:00
Brandon Fish
9d16faab9d
Make memalign optional if the wasm doesn't export it
2019-02-05 23:24:07 -06:00
Syrus Akbary
0f0e1d0aa5
Merge branch 'master' into feature/em-missing-imports
2019-02-05 17:30:38 -07:00
Mackenzie Clark
7bd609fd58
memory fixes for windows ( #138 )
2019-02-05 16:07:55 -08:00
Brandon Fish
c11f18b09c
Update signatures and add missing imports
2019-02-05 17:25:51 -06:00
Lachlan Sneff
c10383c382
Fix example
2019-02-05 12:01:31 -08:00
Lachlan Sneff
271e68d88b
Run fmt
2019-02-05 11:56:36 -08:00
Lachlan Sneff
308d9dde3f
Fix compilation
2019-02-05 11:54:30 -08:00
Lachlan Sneff
cee248ae89
Update emscripten memory macro
2019-02-05 10:35:15 -08:00
Lachlan Sneff
8a8290b155
Add touch-ups to new memory api
2019-02-05 10:20:04 -08:00
Lachlan Sneff
f75006c062
Merge branch 'fix/emscripten-translate' of github.com:wasmerio/wasmer into fix/emscripten-translate
2019-02-04 23:08:46 -08:00
Lachlan Sneff
00db5410c5
Change memory access api again
2019-02-04 23:07:58 -08:00
Brandon Fish
309246e0d6
Add validate function and test
2019-02-05 00:01:01 -06:00
Brandon Fish
8d8dea7ec8
Implement basic C API memory functions
2019-02-04 21:46:47 -06:00
Brandon Fish
2defd27fac
Also generate C++ bindings
2019-02-04 19:54:12 -06:00
Brandon Fish
6ed72a50ce
Add instance_destroy back to test
2019-02-04 19:49:28 -06:00
Brandon Fish
1322446f04
Fix compilation
2019-02-04 18:46:10 -06:00
Mackenzie Clark
cc3c9b6df3
make spectests compile in emscripten update PR ( #137 )
2019-02-04 16:26:32 -08:00
Mackenzie Clark
ad9dff5fd0
use the fully qualified name for Ctx
2019-02-04 15:33:57 -08:00
Mackenzie Clark
765357e35d
pass import object by reference in some spectests
2019-02-04 15:33:45 -08:00
Lachlan Sneff
563cda7ba2
Merge branch 'fix/emscripten-translate' of github.com:wasmerio/wasmer into fix/emscripten-translate
2019-02-04 15:08:10 -08:00