Commit Graph

121 Commits

Author SHA1 Message Date
Mackenzie Clark
0666a5375b add missing hashbrown dependency for dynasm 2019-03-24 17:30:10 -07:00
Mackenzie Clark
0091264b65 get it building with zbox fork 2019-03-24 16:38:45 -07:00
Mackenzie Clark
e5951ce56d Merge branch 'master'
Conflicts:
	Cargo.lock
	Cargo.toml
	lib/emscripten/Cargo.toml
	lib/emscripten/src/syscalls/unix.rs
	lib/runtime-core/Cargo.toml
2019-03-23 00:27:55 -07:00
Mackenzie Clark
9ed593d7b6 wip enchanced vfs 2019-03-21 08:55:57 -07:00
Brandon Fish
e5d67c9705 Add dynasm feature to emscripten tests 2019-03-13 20:16:07 -05:00
Mackenzie Clark
c1e0d325e3 switch to zbox 2019-03-13 14:23:55 -07:00
Brandon Fish
68181acc74 Add dynasm to spectests 2019-03-12 21:14:50 -05:00
Brandon Fish
557be77338 Merge branch 'master' into feature/dynasm-backend 2019-03-12 20:58:22 -05:00
Mackenzie Clark
f014a05304 create runtime abi crate and vfs implementation 2019-03-12 10:40:52 -07:00
Syrus
e591cd0607 Use wasmerio fork of inkwell 2019-03-11 10:03:40 -07:00
Lachlan Sneff
17eada53f3
feat(runtime) Get ready for tiering (#257)
* Add local_function field to context

* Add local call indirection to llvm

* local call indirection

* Fix  vm test

* Fix cranelift local call indirection

* Fix unwinding on nightly
2019-03-08 15:15:16 -08:00
Syrus
3a4325c5a3 Only use llvm in non windows envs 2019-03-07 18:26:29 -08:00
Brandon Fish
1957ddef53 Run emscripten tests with both compilers 2019-03-06 21:36:46 -06:00
Lachlan Sneff
9f589de031 Reset Cargo.lock 2019-03-06 13:53:06 -08:00
Lachlan Sneff
e3e91c628b
Merge branch 'master' into feature/llvm-backend 2019-03-06 13:47:15 -08:00
Ivan Enderlin
365d00979b chore(runtime-c-api) Update the Cargo.lock file. 2019-03-06 11:03:38 +01:00
Lachlan Sneff
039ebdcf75 Fix merge errors and update llvm to use the new runtime error type. 2019-03-04 13:10:28 -08:00
Lachlan Sneff
4e198bca8b merge upstream/master into wasmer-private/feature/llvm-backend 2019-03-04 13:03:32 -08:00
Lachlan Sneff
caf2205936 Add a signal handler for macos and linux.
Implementation Notes:
- To avoid setjmp, longjmp, and the mess that those create, we instead set the interrupting
    context of the signal handler to return into the `throw_trap` routine. To my surprise,
    this actually works. The stack ends up getting unwound normally and the memory-oob error
    is caught by the trampoline.
2019-03-02 17:00:05 -08:00
Brandon Fish
b80252e165 Setup the spectests lib to use llvm-backend 2019-02-28 23:02:03 -06:00
Lachlan Sneff
6a20676fa9 Actually unmap the code after it's done being used 2019-02-28 17:20:18 -08:00
Lachlan Sneff
359ac5abec Connect part of the llvm backend to the runtime 2019-02-28 13:18:00 -08:00
Lachlan Sneff
d4ae5cdd40 Get function addresses from llvm-compiled code 2019-02-28 12:31:39 -08:00
Lachlan Sneff
5d77769381 Hopefully finish the memory manager implementation for llvm RuntimeDyLd 2019-02-27 17:21:20 -08:00
Syrus
60f8f15db3 Updated version to 0.2.1 2019-02-27 17:20:49 -08:00
Lachlan Sneff
4f833876e0 Start work on object loader using llvm's RuntimeDyld api. 2019-02-25 18:08:06 -08:00
Syrus
2d49d58665 Use blake2b (simd) version instead of blake2 2019-02-25 17:43:25 -08:00
Syrus
e7d08712b5 Use blake2 hashing algorithm 2019-02-25 17:37:33 -08:00
Syrus
53c8603464 Updated crates version to 0.2.0 2019-02-25 13:33:33 -08:00
Syrus Akbary
c5c967da00 Added parallel compilation (#209) 2019-02-25 12:03:48 -08:00
losfair
e9c0325784 Update dependencies 2019-02-24 00:51:47 +08:00
Mackenzie Clark
82eef13f41
Create a grow error and refactor grow impl to return result (#191) 2019-02-22 22:18:59 -08:00
Lachlan Sneff
2a913f5663 Implement table, partial call_indirect 2019-02-22 17:34:55 -08:00
Lachlan Sneff
df03d00e74 Merge upstream/master into feature/llvm-feature 2019-02-22 14:14:46 -08:00
Lachlan Sneff
4042cff914 Change hashing algorithm from sha1 to meowhash 2019-02-22 13:02:28 -08:00
Mackenzie Clark
70ba4ec466
Merge branch 'master' into feature/benchmarks 2019-02-22 12:14:11 -08:00
Lachlan Sneff
17901f992a Add benchmark runner and nginx compile vs. load bench 2019-02-22 12:07:07 -08:00
Mackenzie Clark
a6d72bdec9
more emscripten stubs and urandom hack (#199) 2019-02-22 10:42:38 -08:00
Lachlan Sneff
696fd8fce3 Update api again and change SerializedCache to Artifact 2019-02-21 17:07:04 -08:00
Lachlan Sneff
2234f357b7
Merge branch 'master' into feature/cache-rework 2019-02-21 11:54:57 -08:00
Lachlan Sneff
7fa818ea06 Finalize new cache api 2019-02-21 11:47:28 -08:00
Brandon Fish
2ed6e82354 Merge branch 'master' into feature/c-api 2019-02-17 17:20:47 -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
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
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
6a1fdb7f91
add windows exception handling in C (#175) 2019-02-14 09:58:33 -08:00
losfair
8d8db4aa09 Starting integration. 2019-02-14 00:53:36 +08:00