Clément Renault
21bd55c30d
Make the slice::from_raw_parts call safe
2019-04-21 12:58:48 +02:00
Lachlan Sneff
3b9e12b248
fix test
2019-04-19 14:02:21 -07:00
Lachlan Sneff
443663aa3f
Add caching support to llvm backend
2019-04-19 13:54:48 -07:00
Lachlan Sneff
6279dd8e82
Fix test again, whoops
2019-04-18 10:14:25 -07:00
Lachlan Sneff
f0e0255b3f
Fix vm test
2019-04-18 10:08:17 -07:00
Lachlan Sneff
4dd64ed72e
Remove UserTrapper trait
2019-04-18 10:00:15 -07:00
Lachlan Sneff
57e24c957c
Merge branch 'master' into feature/remove-call-protected
2019-04-12 12:44:59 -07:00
Mark McCaskey
d507253372
update crate version numbers to 0.3.0
2019-04-12 12:19:46 -07:00
Lachlan Sneff
051d435423
Warnings and unused code cleanup
2019-04-12 10:27:14 -07:00
Lachlan Sneff
d8c6f76846
Redesign the interface between the runtime and the backends.
...
This removes the ProtectedCaller and FuncResolver traits, simplifying call implementations and improving dynamic call throughput.
2019-04-11 18:01:54 -07:00
Lachlan Sneff
688b6cae26
Merge branch 'master' into feature/nightly-release
2019-04-11 14:36:18 -07:00
Syrus
d67bfdb2c5
Renamed dynasm backend to singlepass
2019-04-11 12:44:03 -07:00
Lachlan Sneff
c898439817
Add well placed unwind(allowed) attribute
2019-04-11 12:07:54 -07:00
bors[bot]
72b9939331
Merge #334
...
334: Added longjmp implementation r=syrusakbary a=syrusakbary
Added longjmp implementation
Co-authored-by: Syrus <me@syrusakbary.com>
Co-authored-by: Mark McCaskey <mark@wasmer.io>
Co-authored-by: Lachlan Sneff <lachlan.sneff@gmail.com>
2019-04-11 00:26:30 +00:00
bors[bot]
870faf9838
Merge #341
...
341: feat(runtime-core) `Instance.exports` takes `&self` instead of `&mut self` r=lachlansneff a=Hywan
There is no reason for `exports` to take a mutable reference. This patch rewrites the `Instance.export` signature a little bit.
Co-authored-by: Ivan Enderlin <ivan.enderlin@hoa-project.net>
2019-04-10 19:22:12 +00:00
Ivan Enderlin
20297d1751
feat(runtime-core) Instance.exports
takes &self
instead of &mut self
.
...
There is no reason for `exports` to take a mutable reference.
2019-04-10 12:17:16 -07:00
Syrus
6848e81a77
Merge branch 'master' into feature/longjmp
...
# Conflicts:
# lib/runtime-core/src/backend.rs
# lib/runtime-core/src/typed_func.rs
2019-04-10 10:57:45 -07:00
Lachlan Sneff
2d2a177e9c
Fix lint
2019-04-10 10:31:49 -07:00
Lachlan Sneff
cfd4758210
Add some documentation
2019-04-10 10:26:16 -07:00
Syrus
02ed9f0e5f
Reenabled longjmp 🎉
2019-04-09 18:33:53 -07:00
Lachlan Sneff
a320af4485
Fix runtime test missing method
2019-04-09 17:09:33 -07:00
Lachlan Sneff
cc656b26a9
Add implementations for typed func errors to cranelift and llvm
2019-04-09 17:09:33 -07:00
Lachlan Sneff
7d09a2ee7e
Initial typed func rewrite
2019-04-09 17:09:33 -07:00
Mark McCaskey
fec65a262e
implement emscripten resize_heap
2019-04-09 17:09:33 -07:00
Mark McCaskey
8ba5ea2a08
allow resize_heap to grow heap in emscripten
2019-04-09 17:09:33 -07:00
Mark McCaskey
18a00e8e8f
fix bug in stat, move lstat64 back to unix
2019-04-09 17:09:33 -07:00
Lachlan Sneff
41129e445d
Fix runtime test missing method
2019-04-09 16:15:50 -07:00
Lachlan Sneff
c212ba3619
Add implementations for typed func errors to cranelift and llvm
2019-04-09 15:53:01 -07:00
Lachlan Sneff
5e1a67d835
Initial typed func rewrite
2019-04-09 12:48:41 -07:00
Mark McCaskey
50a22bcae2
implement emscripten resize_heap
2019-04-08 16:17:34 -07:00
Mark McCaskey
6578838acd
allow resize_heap to grow heap in emscripten
2019-04-08 14:44:40 -07:00
bors[bot]
7f8b1ea521
Merge #332
...
332: fix lstat64; heap size; and stat r=MarkMcCaskey a=MarkMcCaskey
- Get https://github.com/nikic/PHP-Parser working 🎉
- fixes memory issue bug which looked like relative paths didn't work, but was really pointer aliasing corrupting data
Co-authored-by: Mark McCaskey <mark@wasmer.io>
2019-04-08 18:58:48 +00:00
Mark McCaskey
b3a765446a
fix bug in stat, move lstat64 back to unix
2019-04-08 11:26:25 -07:00
Syrus
3b11da91c5
Make DynFunc public
2019-04-06 14:31:39 -07:00
Syrus
1193d561e2
Improved debug! macro with timing
2019-04-05 23:47:59 -07:00
Mark McCaskey
03b529d3d1
Merge branch 'master' into add-validate
2019-04-03 21:35:23 -07:00
Mark McCaskey
bda5b19098
update wasm-parser dep; use it for validation
2019-04-03 17:21:57 -07:00
Mackenzie Clark
bbf663aceb
Merge branch 'master' into feature/wasi
2019-04-03 17:16:09 -07:00
Brandon Fish
1ff6ed6d1b
Add Export and GlobalDescriptor to Runtime API
2019-04-02 22:10:49 -05:00
Lachlan Sneff
287c81d7a5
Misc fixes
2019-04-01 17:50:53 -07:00
Lachlan Sneff
ce35e5794f
Change ValueType trait and add basic fs
2019-04-01 15:52:35 -07:00
Lachlan Sneff
48b5918895
Merge branch 'master' into feature/wasi-fs
2019-03-29 11:09:04 -07:00
Ivan Enderlin
316cbc54ab
doc(lib) Add basic README.md
.
2019-03-29 10:17:24 +01:00
Lachlan Sneff
c45de2207e
Add helper types and half-ish of the wasi signatures
2019-03-28 17:00:10 -07:00
Mark McCaskey
5c12fd0b49
fix test
2019-03-28 13:55:38 -07:00
Lachlan Sneff
7b0992e44f
Instance now pulls state from the ImportObject
2019-03-28 11:56:31 -07:00
Mackenzie Clark
c684ea46f0
lint
2019-03-28 11:42:59 -07:00
Mackenzie Clark
5294eb6b0d
merge and respond to feedback
2019-03-28 11:41:45 -07:00
Lachlan Sneff
0787d001e3
Add data support to import macro
2019-03-28 11:41:14 -07:00
bors[bot]
4bbf9903f3
Merge #294
...
294: add support for symbol maps r=MarkMcCaskey a=MarkMcCaskey
resolves #293
Co-authored-by: Mark McCaskey <mark@wasmer.io>
2019-03-28 17:09:44 +00:00
Mark McCaskey
764ec96ad1
fix compilation error
2019-03-28 09:20:54 -07:00
Mackenzie Clark
d8347a3d40
Merge branch 'master' into feature/vfs
2019-03-27 17:31:56 -07:00
Mark McCaskey
315d8286c4
clean up (second pass)
2019-03-27 14:08:17 -07:00
Mark McCaskey
09068c1a74
clean up implementation
2019-03-27 14:01:27 -07:00
Mackenzie Clark
d65a5dfe57
fix typo
2019-03-26 20:07:00 -07:00
Mackenzie Clark
8dd158d3fb
fix more warnings
2019-03-26 19:05:53 -07:00
Mackenzie Clark
0533a4eef6
dynamically import null funcs (all with the same signature)
2019-03-26 18:59:39 -07:00
Mark McCaskey
9c58bed344
add support for symbol maps
2019-03-26 16:41:40 -07:00
Mackenzie Clark
7c9e537443
refactor everything
2019-03-25 19:44:12 -07:00
Mackenzie Clark
8432ce9238
Merge branch 'master' into feature/vfs
2019-03-24 18:30:50 -07:00
bors[bot]
18a6c8a611
Merge #286
...
286: Add extend to imports r=MarkMcCaskey a=MarkMcCaskey
a rewrite of #283 with a focus on simplicity
resolves #258
Co-authored-by: Mark McCaskey <mark@wasmer.io>
2019-03-25 01:16:10 +00:00
Mark McCaskey
225b82ae78
change behavior of extend to overwrite on conflict
2019-03-24 17:16:05 -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
Mark McCaskey
d037c5fdbb
fmt
2019-03-22 17:29:09 -07:00
Mark McCaskey
5e39a7b3d9
rewrite extending imports
2019-03-22 17:11:30 -07:00
losfair
08ba696ab0
Fix vmctx offset tests.
2019-03-21 09:24:44 +08:00
losfair
26e4278657
Make the internal
field private from outside.
2019-03-21 08:57:50 +08:00
losfair
cb3846ff6a
Add InternalCtx
.
2019-03-21 08:39:06 +08:00
losfair
395161acdc
Merge remote-tracking branch 'origin/master' into feature/dynasm-backend
2019-03-20 19:54:29 +08:00
Mark McCaskey
b1ef4ef0fa
change output to go to OUT_DIR
2019-03-19 11:23:04 -07:00
Mark McCaskey
8e5f250ed0
generate the hash at compile time
2019-03-19 10:58:58 -07:00
losfair
14da8abc23
Run-time memory bound checking.
2019-03-19 21:27:49 +08:00
losfair
a006a368c5
Cleanup.
2019-03-19 20:01:38 +08:00
losfair
61abe70042
cargo fmt
2019-03-19 11:52:43 +08:00
losfair
ebaf2dc5a8
Make DynFunc::func_index private.
2019-03-19 11:52:27 +08:00
losfair
2ab2205d6b
Allow cross-module indirect calls.
2019-03-19 11:47:38 +08:00
Mark
a152b85729
Add versioning to cache
2019-03-18 17:27:23 -07:00
losfair
6c40ea1cb5
Cargo fmt more files.
2019-03-18 00:35:55 +08:00
losfair
08f4526b45
Merge remote-tracking branch 'origin/master' into feature/dynasm-backend
2019-03-17 21:14:01 +08:00
losfair
f8fe999015
Implemented protected call and floating point traps; passing all spectests!
2019-03-17 10:27:14 +08:00
Mackenzie Clark
edacb0a8a7
Merge branch 'master' into feature/vfs
2019-03-16 13:38:02 -07:00
Ivan Enderlin
61a203438a
feat(runtime-core) SharedMemory.desc
is not used… yet!
2019-03-15 09:09:24 +01:00
losfair
d80ea47ffc
FIx bugs found with spectests.
2019-03-14 10:30:24 +08:00
Lachlan Sneff
3eaf5525d1
Add some better docs
2019-03-13 14:58:44 -07:00
Brandon Fish
557be77338
Merge branch 'master' into feature/dynasm-backend
2019-03-12 20:58:22 -05:00
Mackenzie Clark
f2488ac410
remove feature flag on custom sections
2019-03-12 13:36:11 -07:00
Mackenzie Clark
4cee16220b
more edge cases
2019-03-12 13:04:14 -07:00
Mackenzie Clark
b9c3a49f3c
parse and store custom sections from wasm, guarded by vfs feature flag
2019-03-12 10:45:44 -07:00
Ivan Enderlin
6e62ea7cfb
fix(runtime-core) Remove unused imports.
...
This patch removes unused imports as reported by `rustc` as warnings.
2019-03-12 09:51:54 +01:00
losfair
683cb2090c
Fix call_indirect.
2019-03-12 11:31:55 +08: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
losfair
c5ef0a96e9
Update vm::Ctx.
2019-03-09 02:58:37 +08:00
Lachlan Sneff
f36aade2e5
Fix broken test
2019-03-05 14:57:37 -08:00
Lachlan Sneff
7ef2c0dece
Fix execute after free issue with llvm (and presumably cranelift?)
2019-03-04 14:41:56 -08:00
Lachlan Sneff
4e198bca8b
merge upstream/master into wasmer-private/feature/llvm-backend
2019-03-04 13:03:32 -08:00
Lachlan Sneff
65ec10961b
Change RuntimeError type ( #234 )
...
* Change RuntimeError type and fix codebase to use it
* Fix spectests to work with new runtime error type
* Fix windows signal handler in the clif-backend
* Add missing conversion
* final windows fix
2019-03-04 12:57:26 -08:00
Syrus Akbary
436c4bffcb
Merge pull request #228 from Hywan/fix-runtime-core-unused-import
...
fix(runtime-core) Remove an unused import
2019-03-04 07:13:21 -08:00
Ivan Enderlin
d9073c03c6
fix(runtime-core) hasher
does not need to be mutable.
...
This patch updates the `hasher` variable. It is declared as mutable,
but it's never mutated.
2019-03-04 13:53:41 +01:00
Ivan Enderlin
ec4e476cc6
fix(runtime-core) Remove an unused import.
...
This patch removes an unused import, namely `crate::sys::Memory`.
2019-03-04 13:51:13 +01:00
Lachlan Sneff
801979c40d
Add dynamic sigindices to the vm context.
2019-03-03 21:26:34 -08:00