Commit Graph

1084 Commits

Author SHA1 Message Date
Mackenzie Clark
bbf663aceb
Merge branch 'master' into feature/wasi 2019-04-03 17:16:09 -07:00
Mackenzie Clark
26863222e8 Merge remote-tracking branch 'origin/feature/wasi' into feature/wasi 2019-04-03 17:13:57 -07:00
Mackenzie Clark
207bd01400 rename to destructor 2019-04-03 17:13:50 -07:00
Mark McCaskey
c1c99dbff1 rename fs and fix (probable) bug in renumber syscall 2019-04-03 17:01:02 -07:00
Mackenzie Clark
3b34ea6211 Merge remote-tracking branch 'origin/feature/wasi' into feature/wasi 2019-04-03 16:50:27 -07:00
Mackenzie Clark
e9e7a33317 fix warnings and let it build on windows 2019-04-03 16:50:15 -07:00
Mark McCaskey
10696c4849 clean up platform-specific syscall code 2019-04-03 16:21:26 -07:00
Mark McCaskey
d04d1bf2a9 improve debug statements for arg syscalls 2019-04-03 14:59:24 -07:00
Mark McCaskey
7d728fc4cc implement path_filestat_get 2019-04-03 12:48:27 -07:00
Mark McCaskey
b80dd072a1 implement happy path of fd_open 2019-04-03 11:56:45 -07:00
Brandon Fish
212e2dbfa6
Merge branch 'master' into feature/update-to-cranelift-0-3-0 2019-04-03 13:35:50 -05:00
Syrus Akbary
7ff51c3b9e
Update lib/clif-backend/src/module.rs
Remove unnecessary `<'a>` from Converter

Co-Authored-By: bjfish <bjfish@users.noreply.github.com>
2019-04-03 13:35:36 -05:00
losfair
4c39cb482f Cleanup calling & implement I64ExtendSI32. 2019-04-03 22:49:26 +08:00
Brandon Fish
5627f80548 Update to Cranelift 0.3.0 2019-04-03 00:13:40 -05:00
Brandon Fish
1ff6ed6d1b Add Export and GlobalDescriptor to Runtime API 2019-04-02 22:10:49 -05:00
Mark McCaskey
f70b75e552 kind of implement fd_pwrite 2019-04-02 16:35:05 -07:00
Mark McCaskey
ce4676d469 implement fd_renumber 2019-04-02 16:26:54 -07:00
Mark McCaskey
dd7cfac505 implement fd_tell 2019-04-02 16:23:33 -07:00
Mark McCaskey
7d07b6f0b4 impl fd_seek 2019-04-02 16:16:06 -07:00
Mark McCaskey
37371eba6e implement most of fd_filestat_set_times 2019-04-02 16:01:39 -07:00
Mark McCaskey
697bdc7d46 add rights checking fn for future-proofing reasons 2019-04-02 15:51:49 -07:00
Mark McCaskey
fe4195fff6 impl set_flags on fd 2019-04-02 15:45:12 -07:00
Mark McCaskey
e180fd1d1a add set_rights syscall 2019-04-02 15:40:46 -07:00
Mark McCaskey
2de5a5da2b implement datasync 2019-04-02 15:29:32 -07:00
Mark McCaskey
e61c03a176 impl fd_read (untested) 2019-04-02 15:14:19 -07:00
Mark McCaskey
0b9fc5ab45 add null termination to args for wasi 2019-04-02 14:13:03 -07:00
Mark McCaskey
a4547e36e2 update cursor in file when writing to it 2019-04-02 12:11:05 -07:00
Mark McCaskey
04a80739e1 Merge branch 'feature/wasi' of github.com:wasmerio/wasmer into feature/wasi 2019-04-02 12:06:51 -07:00
Mark McCaskey
6278ced7fc implement fd_write for files 2019-04-02 12:06:35 -07:00
Lachlan Sneff
3a6e2c9c37 Change tagged and untagged methods 2019-04-02 11:49:05 -07:00
Mark McCaskey
242f9f679d add hacked together impl of write for stdout and stderr 2019-04-02 11:43:04 -07:00
Mark McCaskey
d421e91407 implement some of fd_prestat_get 2019-04-02 10:58:22 -07:00
Mark McCaskey
435629300b get debug statements working; add some extra info 2019-04-02 10:22:45 -07:00
Mark McCaskey
6cec356a74 add debug lines to all wasi syscalls 2019-04-02 09:47:45 -07:00
losfair
b74d8bc521 Optimize locals. 2019-04-02 20:50:56 +08:00
losfair
4d6bbed905 Optimize call. 2019-04-02 11:11:45 +08:00
Lachlan Sneff
287c81d7a5 Misc fixes 2019-04-01 17:50:53 -07:00
Lachlan Sneff
8bab9f1bea init zbox first 2019-04-01 17:25:45 -07:00
Mark McCaskey
d164c7a93b update wasi Cargo.toml 2019-04-01 17:21:48 -07:00
Mark McCaskey
84dc20af94 Merge branch 'feature/wasi' of github.com:wasmerio/wasmer into feature/wasi 2019-04-01 16:36:56 -07:00
Mark McCaskey
2dd7ec8b72 fix it up 2019-04-01 16:36:41 -07:00
Lachlan Sneff
92ec71974b Add wasi_try macro 2019-04-01 16:34:18 -07:00
Lachlan Sneff
23b1d1dd6a Merge branch 'feature/wasi' of github.com:wasmerio/wasmer into feature/wasi 2019-04-01 15:52:41 -07:00
Lachlan Sneff
ce35e5794f Change ValueType trait and add basic fs 2019-04-01 15:52:35 -07:00
Mark McCaskey
61dd2e1df9 add more doc comments 2019-04-01 15:22:30 -07:00
Lachlan Sneff
c12c7d558c Merge branch 'feature/wasi-fs' into feature/wasi 2019-04-01 15:17:13 -07:00
Lachlan Sneff
68f1123ad6 Add start of wasi fs 2019-04-01 15:15:20 -07:00
Mark McCaskey
5b6856df6b add lots of doc comments 2019-04-01 14:04:58 -07:00
Mark McCaskey
7addd920df add more stubs for fs calls 2019-04-01 12:11:11 -07:00
Mark McCaskey
4108c8ff58
Merge pull request #307 from wasmerio/feature/wasi-cross-platform-skeleton
Feature/wasi cross platform skeleton
2019-04-01 10:45:26 -07:00
losfair
84e5a0c8eb Call 2019-04-02 01:16:37 +08:00
losfair
1179b8a20f Fix Operator::Br. 2019-04-02 00:17:52 +08:00
losfair
13c5446c55 Loop & bug fixes 2019-04-02 00:11:01 +08:00
losfair
d2e12084a0 64-bit operators & bug fixes. 2019-04-01 23:49:46 +08:00
losfair
cf680e2a13 Relax 64-bit immediates. 2019-04-01 20:56:32 +08:00
losfair
6762c2d586 More opcodes for codegen v2. 2019-04-01 20:33:33 +08:00
bors[bot]
593720dfc5 Merge #310
310: fix(llvm-lint) Clean up various warnings r=Hywan a=Hywan

These patches remove various warnings raised by `rustc`.
Only 2 warnings remain.

Co-authored-by: Ivan Enderlin <ivan.enderlin@hoa-project.net>
Co-authored-by: Mackenzie Clark <mackenzie.a.z.c@gmail.com>
2019-04-01 10:18:56 +00:00
Mackenzie Clark
124563a556
Merge branch 'master' into fix-llvm-lints 2019-03-30 18:11:40 -07:00
Mackenzie Clark
ca41c6dd6b
Merge branch 'master' into fix-llvm-example 2019-03-30 18:10:20 -07:00
losfair
6ac81a3c84 Implement more instructions. 2019-03-31 00:44:02 +08:00
Mark McCaskey
e156ea2509 comment out write logic in linux fd_pread until design discussion 2019-03-29 17:02:58 -07:00
Mark McCaskey
5cee576b7b add some syscall skeletons; context switching 2019-03-29 17:00:58 -07:00
Mark McCaskey
42e8523c0b impl ValueType for fdstat_t 2019-03-29 15:49:42 -07:00
Mark McCaskey
147d71a32c implement ValueType for prestat_t 2019-03-29 15:39:36 -07:00
Mark McCaskey
e7a5c01ef8 fix backward enumerate 2019-03-29 15:21:54 -07:00
Mark McCaskey
5dcb95dd7a fix basic errors in linux impl 2019-03-29 15:17:42 -07:00
Mark McCaskey
35fbf573c9 add pread on linux 2019-03-29 15:10:46 -07:00
Mark McCaskey
accbe52dd6 add more stubs for pthreading, exceptions, and some invokes 2019-03-29 13:42:13 -07:00
Mark McCaskey
88212d356f implement random_get() 2019-03-29 13:06:06 -07:00
Mark McCaskey
28d9d1fe87 move linux impl to unix (it works on osx too!) 2019-03-29 12:39:48 -07:00
Mark McCaskey
1f8b90b57e probably actually fix linux for real though 2019-03-29 12:33:32 -07:00
Mark McCaskey
de241a03f9 fix linux impl bugs 2019-03-29 11:43:32 -07:00
Mark McCaskey
48d34d9522 improve calling of platform-specific code and impl linux clock calls 2019-03-29 11:38:48 -07:00
Lachlan Sneff
48b5918895 Merge branch 'master' into feature/wasi-fs 2019-03-29 11:09:04 -07:00
Mark McCaskey
23c09ac042 add imports 2019-03-29 11:04:38 -07:00
Lachlan Sneff
b1030d3181 Add prestat_t 2019-03-29 11:03:21 -07:00
Mark McCaskey
d10d0285ac
Merge branch 'feature/wasi' into feature/wasi-cross-platform-skeleton 2019-03-29 10:43:30 -07:00
Mark McCaskey
ea27effdb3 keeep top level wasi calls that call out to platform-specific impls 2019-03-29 10:20:08 -07:00
bors[bot]
c6a597f3a2 Merge #311
311: doc(lib) Add basic `README.md` r=Hywan a=Hywan

This patch adds very basic `README.md`. They must obviously be completed, but it's better than nothing!

Co-authored-by: Ivan Enderlin <ivan.enderlin@hoa-project.net>
2019-03-29 15:56:14 +00:00
Ivan Enderlin
8ee0f16c8a fix(runtime-c-api) Remove last warnings. 2019-03-29 15:56:08 +01:00
Ivan Enderlin
849af62911 feat(runtime-c-api) Finish to extract last pieces of code. 2019-03-29 15:52:41 +01:00
Ivan Enderlin
361ff81db7 feat(runtime-c-api) Extract the import module. 2019-03-29 15:50:16 +01:00
Ivan Enderlin
9c4696eb5b feat(runtime-c-api) Extract the export module. 2019-03-29 15:38:12 +01:00
Ivan Enderlin
f46be814da feat(runtime-c-api) Extract the instance module. 2019-03-29 15:14:05 +01:00
Ivan Enderlin
d06d6b7ac8 feat(runtime-c-api) Extract the global module. 2019-03-29 15:05:17 +01:00
Ivan Enderlin
8bdb458ea7 feat(runtime-c-api) Extract the table module. 2019-03-29 15:02:50 +01:00
Ivan Enderlin
4239975240 feat(runtime-c-api) Move wasmer_validate into the module module. 2019-03-29 14:59:02 +01:00
Ivan Enderlin
55c010688c feat(runtime-c-api) Extract the memory module. 2019-03-29 14:57:08 +01:00
Ivan Enderlin
168aa8031f feat(runtime-c-api) Extract the module module. 2019-03-29 14:51:35 +01:00
Ivan Enderlin
96324977b5 feat(runtime-c-api) Extract the error module. 2019-03-29 14:41:39 +01:00
Ivan Enderlin
49c01f6093 feat(runtime-c-api) Extract the value module. 2019-03-29 14:40:26 +01:00
Ivan Enderlin
316cbc54ab doc(lib) Add basic README.md. 2019-03-29 10:17:24 +01:00
Ivan Enderlin
8179dd6f96 fix(llvm-backend) Remove sign_type from generate_trampoline. 2019-03-29 10:09:56 +01:00
Ivan Enderlin
34b4f2fb11 fix(llvm-backend) Mark some variables as unused. 2019-03-29 10:09:39 +01:00
Ivan Enderlin
5cd45cbc28 fix(llvm-backend) Mark a variable as unused. 2019-03-29 10:09:10 +01:00
Ivan Enderlin
b03980f8c9 fix(llvm-backend) Remove unused variables or functions. 2019-03-29 10:08:43 +01:00
Ivan Enderlin
76d26d97ac fix(llvm-backend) Remove Intrinsics.ctx_ty, CtxType.ctx_ty, and .ctx_ptr_ty`. 2019-03-29 10:07:38 +01:00
Ivan Enderlin
7645a812d9 fix(llvm-backend) Remove unused variables. 2019-03-29 10:07:08 +01:00
Ivan Enderlin
00e4b25111 fix(llvm-backend) No need to enumerate items in this iterator. 2019-03-29 10:06:31 +01:00
Ivan Enderlin
20378de0e7 fix(llvm-backend) llvm_sig variable is not used here. 2019-03-29 10:06:11 +01:00
Ivan Enderlin
e3f39fc127 fix(llvm-backend) parse_function doesn't need a Module. 2019-03-29 10:05:39 +01:00
Ivan Enderlin
dea4705dcb fix(llvm-backend) LLVMBackend::new doesn't use instrinsics yet. 2019-03-29 10:04:56 +01:00
Ivan Enderlin
91f40639b7 fix(llvm-back) Mark WasmTrapType as deadcode.
This enum is not used directly by Rust, but used externally.
2019-03-29 10:04:09 +01:00
Ivan Enderlin
a1ca7069af fix(llvm-backend) Remove unused imports. 2019-03-29 10:03:40 +01:00
Ivan Enderlin
ddf532ddb5 fix(llvm-backend) Remove an example.rs file. 2019-03-29 09:43:21 +01:00
Lachlan Sneff
d9b89b46ee Fix bug in deref of WasmPtr<T, Array> 2019-03-28 22:22:46 -07:00
Lachlan Sneff
90db12e59a Finish up signatures and converting function types 2019-03-28 22:10:11 -07:00
losfair
0f26ee40de Codegen v2. 2019-03-29 12:06:47 +08:00
losfair
a2f86c3c52 Improve machine state abstraction. 2019-03-29 12:06:28 +08:00
Mark McCaskey
bd09343fca add structure for cross-platform wasi syscall implementations 2019-03-28 17:09:39 -07:00
Lachlan Sneff
c45de2207e Add helper types and half-ish of the wasi signatures 2019-03-28 17:00:10 -07:00
Mark McCaskey
aed9d3b9b7 remove __wasi_ prefix 2019-03-28 15:17:52 -07:00
bors[bot]
79133e59e5 Merge #303
303: Add all wasi types r=lachlansneff a=lachlansneff

This adds all wasi types.

Co-authored-by: Lachlan Sneff <lachlan.sneff@gmail.com>
2019-03-28 21:59:28 +00:00
Lachlan Sneff
bde6bdfd3a Add all wasi types 2019-03-28 14:33:15 -07:00
Mark McCaskey
21304cb700
Merge branch 'feature/wasi' into feature/hook-up-wasi-to-wasmer 2019-03-28 14:19:17 -07:00
Mark McCaskey
5c12fd0b49 fix test 2019-03-28 13:55:38 -07:00
Mark McCaskey
a69fdfef38 implement wasi check 2019-03-28 13:46:30 -07:00
Lachlan Sneff
256253a1d5 Fix clippy lint 2019-03-28 13:10:22 -07:00
Mackenzie Clark
a203675469 lint 2019-03-28 13:01:02 -07:00
Lachlan Sneff
dbc4176964 Add env and args syscalls 2019-03-28 12:56:11 -07:00
Mackenzie Clark
d9c693a31c make file like implement the std::io traits instead and wrap zbox file 2019-03-28 12:50:37 -07:00
Mark McCaskey
bc863fcf0c hook up wasi to wasmer 2019-03-28 12:19:23 -07:00
Lachlan Sneff
94674e9d80 Add wasi state 2019-03-28 12:18:05 -07:00
Lachlan Sneff
c045da3de6 Merge branch 'feature/wasi' of github.com:wasmerio/wasmer into feature/wasi 2019-03-28 11:57:07 -07:00
Lachlan Sneff
7b0992e44f Instance now pulls state from the ImportObject 2019-03-28 11:56:31 -07:00
Mackenzie Clark
09642c92db revert changes to emscripten 2019-03-28 11:55:01 -07:00
Mark McCaskey
b7254ce1f5 add stubs and dispatch 2019-03-28 11:54:22 -07:00
Lachlan Sneff
e3a6b7c9d8 Add skeleton for wasi abi 2019-03-28 11:44: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
Lachlan Sneff
be08154670 Add wasi crate 2019-03-28 11:23:08 -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
a0e20667b5 add small fix 2019-03-28 10:08:41 -07:00
Mark McCaskey
764ec96ad1 fix compilation error 2019-03-28 09:20:54 -07:00
losfair
e21def188e Machine state. 2019-03-28 10:17:06 +08:00
losfair
eaa161fcb4 More operations. 2019-03-28 09:03:36 +08:00
Mackenzie Clark
d8347a3d40 Merge branch 'master' into feature/vfs 2019-03-27 17:31:56 -07:00
Mackenzie Clark
9619019baf fix compiler errors for debug build 2019-03-27 17:23:07 -07:00
Mackenzie Clark
423f154177 fix typo 2019-03-27 16:55:21 -07:00
Mackenzie Clark
c9613bdcea add compiler error instead 2019-03-27 16:55:12 -07:00
Mackenzie Clark
b6eb830bf4 Revert "impl From for EmscriptenVfsError"
This reverts commit 18eae44577.
2019-03-27 16:55:00 -07:00
Mackenzie Clark
18eae44577 impl From for EmscriptenVfsError 2019-03-27 16:14:29 -07:00
Mackenzie Clark
074013648e build on windows 2019-03-27 16:07:59 -07:00
bors[bot]
ba4b309d56 Merge #295
295: generate null funcs r=syrusakbary a=xmclark

This PR automates adding the `nullfunc` imports. A new macro is added to help working with namespaces. All functions in the env namespace that start with `nullFunc_` will be added to the import object. This is easy because *all* null funcs have the same expected signature. 

Co-authored-by: Mackenzie Clark <mackenzie.a.z.c@gmail.com>
2019-03-27 21:56:57 +00:00
Mark McCaskey
580a153821 fix lint errors 2019-03-27 14:30:57 -07:00
Mark McCaskey
c51d44578d simplify borrowing inference of compiler config in llvm backend 2019-03-27 14:25:29 -07:00
Mark McCaskey
51c2111d53 pass compiler_config along to other backends 2019-03-27 14:18:34 -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
931008b5bd
Merge branch 'master' into feature/vfs 2019-03-27 09:21:42 -07:00
Mackenzie Clark
cd119fc861 make string multi-line 2019-03-27 08:36:53 -07:00
Mackenzie Clark
8b861d01db rename null func 2019-03-27 08:36:41 -07:00
bors[bot]
f249d3af77 Merge #296
296: feat(runtime-c-api) Implement the `wasmer_export_to_memory` function r=Hywan a=Hywan

This new function returns a `wasmer_memory_t` from a `wasmer_export_t`. It allows to use the `wasmer_memory_*` API over the exported memories from a Wasm instance.

See `tests/assets/return_hello.rs` and `tests/test-exported-memory.c` for an end-to-end example.

This PR also moves all `tests/.wasm` files into `tests/assets/`. I've added the source of `return_hello.wasm` to be exhaustive and to serve as a documentation.

Co-authored-by: Ivan Enderlin <ivan.enderlin@hoa-project.net>
2019-03-27 15:09:17 +00:00
Ivan Enderlin
a59ce13810 chore(runtime-c-api) Build the C and C++ headers. 2019-03-27 10:50:40 +01:00
Ivan Enderlin
4d0312f0ed test(runtime-c-api) New test suite for wasmer_export_to_memory. 2019-03-27 10:49:28 +01:00
Ivan Enderlin
6fca475564 feat(runtime-c-api) Implement the wasmer_export_to_memory function.
This new function returns a `wasmer_memory_t` from a
`wasmer_export_t`.
2019-03-27 10:44:47 +01:00
Ivan Enderlin
5661540097 chore(runtime-c-api) Move .wasm files into the assets directory. 2019-03-27 09:42:56 +01: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
0435d6149a Merge branch 'master' into feature/generate-nullfuncs 2019-03-26 19:04:41 -07:00
Mackenzie Clark
3d3ce27cdb cargo fmt 2019-03-26 19:00:39 -07:00
Mackenzie Clark
ead5600abb fix warnings 2019-03-26 19:00:09 -07:00
Mackenzie Clark
e701bdb811 remove the nullfunc functions 2019-03-26 19:00:03 -07:00
Mackenzie Clark
0533a4eef6 dynamically import null funcs (all with the same signature) 2019-03-26 18:59:39 -07:00
Mark McCaskey
f9a29445ca fix instatiate calli n c-api 2019-03-26 17:00:51 -07:00
Mackenzie Clark
9c599f1226
Merge branch 'master' into feature/vfs 2019-03-26 17:00:40 -07:00
Mark McCaskey
a0809dedbf change formatting to match syscalls 2019-03-26 16:57:58 -07:00
Mark McCaskey
c7407ca7ab Merge branch 'master' into feature/add-support-for-symbol-maps 2019-03-26 16:42:56 -07:00
Mark McCaskey
9c58bed344 add support for symbol maps 2019-03-26 16:41:40 -07:00
Mark McCaskey
49db149224 fix arg passing to getcwd syscall 2019-03-26 14:37:47 -07:00
Mark McCaskey
d2818b1ffa fix alignment check on pointer 2019-03-26 09:56:23 -07:00
losfair
d9b2a2309d Emitter API. 2019-03-27 00:23:10 +08:00
Mackenzie Clark
5bb82379ba add windows functions that were missed 2019-03-25 20:42:48 -07:00
Mackenzie Clark
16c9bb2160 cargo fmt 2019-03-25 20:18:33 -07:00
Mackenzie Clark
60685d1d0a Merge branch 'master' into feature/vfs 2019-03-25 20:17:57 -07:00
Mackenzie Clark
7c9e537443 refactor everything 2019-03-25 19:44:12 -07:00
Mark McCaskey
43a8a00d79 change getpwuid to just return 0 2019-03-25 16:59:23 -07:00
Mark McCaskey
abafbbdbb2 fix pointer casting lint 2019-03-25 16:25:39 -07:00
Mark McCaskey
93432bdb12 Make reading database files work too! 2019-03-25 16:13:41 -07:00
Mark McCaskey
3500d5a7c7 add more functions for sqlite compiled from config src 2019-03-25 13:09:23 -07:00
Mark McCaskey
2969989ecd sort imports 2019-03-25 12:39:57 -07:00
Mark McCaskey
4f98da710d add more; get it working 2019-03-25 11:58:44 -07:00
Mark McCaskey
f66b024390 Merge branch 'master' into feature/add-syscalls-for-sqlite3 2019-03-25 11:14:01 -07:00
Mark McCaskey
1ce29e788f add syscalls for sqlite3 2019-03-25 11:12:34 -07:00
Mark McCaskey
d825746245 Merge branch 'feature/add-syscalls-for-php' of github.com:wasmerio/wasmer into feature/add-syscalls-for-php 2019-03-25 10:45:19 -07:00
Mark McCaskey
de0dedc78d relocate io stubs and add windows syscall stubs 2019-03-25 10:45:02 -07:00
Mark McCaskey
4210bcd822
Merge branch 'master' into feature/add-syscalls-for-php 2019-03-25 10:17:18 -07:00
Mark McCaskey
e56dfe70c7 rm REVIEW comments 2019-03-25 10:16:43 -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
Mackenzie Clark
12b53a48ad fix tests 2019-03-24 17:54:52 -07:00
Mackenzie Clark
e59e57d8a5 lint 2019-03-24 17:35:37 -07:00
Mackenzie Clark
0666a5375b add missing hashbrown dependency for dynasm 2019-03-24 17:30:10 -07:00
Mark McCaskey
225b82ae78 change behavior of extend to overwrite on conflict 2019-03-24 17:16:05 -07:00
Mackenzie Clark
0091264b65 get it building with zbox fork 2019-03-24 16:38:45 -07:00
Mackenzie Clark
e986ec13fa shrink select 2019-03-23 16:19:36 -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
Mackenzie Clark
e75a23602a wip 2019-03-22 16:57:29 -07:00
Mackenzie Clark
b7c5f27b37 this commit makes the whole thing work 2019-03-22 15:35:38 -07:00
Mackenzie Clark
eedb6b9d72 writev 2019-03-22 11:19:06 -07:00
Mark McCaskey
c522c6d1e3 fix bugs; add checks and lint exceptions for alignment casting 2019-03-22 10:30:35 -07:00
Mackenzie Clark
0c004c9290 move select into separate file 2019-03-22 10:18:03 -07:00
Syrus Akbary
bf3af660fd
Added dynasm-backend to the libraries README 2019-03-21 21:12:01 -07:00
Mackenzie Clark
33942d2fc9 partially works 2019-03-21 18:05:03 -07:00
Mark McCaskey
99f76925a8 fmt 2019-03-21 17:20:13 -07:00
Mark McCaskey
b9e7449f64 add functions for php cli 2019-03-21 17:18:25 -07:00
Mackenzie Clark
7c4b0d3b23 wip 2019-03-21 16:18:11 -07:00
Mackenzie Clark
3e728acdc0 reads working 2019-03-21 14:28:12 -07:00
Mackenzie Clark
65c4c12942 optimize mroe 2019-03-21 12:22:18 -07:00
Mackenzie Clark
92e1fce83a more organizing 2019-03-21 12:12:58 -07:00
Mackenzie Clark
825926f40a more optimizing imports 2019-03-21 11:54:55 -07:00
Mackenzie Clark
59ed6a91d8 imports 2019-03-21 11:05:29 -07:00
Mackenzie Clark
d5f62b20aa refactor some imports in host fs 2019-03-21 11:00:49 -07:00
Mackenzie Clark
4eb9d3344b debug statements, move another fn into platform mod 2019-03-21 10:42:58 -07:00
Mackenzie Clark
630d4bde13 re-organize modules for syscalls, windows is in bad shape 2019-03-21 10:20:59 -07:00
Mackenzie Clark
9ed593d7b6 wip enchanced vfs 2019-03-21 08:55:57 -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
a4ee873eae Merge remote-tracking branch 'origin/master' into feature/dynasm-backend 2019-03-21 08:42:34 +08:00
losfair
cb3846ff6a Add InternalCtx. 2019-03-21 08:39:06 +08:00
Mark McCaskey
c58a7e0c37 stub out/add the rest 2019-03-20 16:46:42 -07:00
Mark McCaskey
d13e4aa71f clean up a bit 2019-03-20 15:24:05 -07:00
Mark McCaskey
42b122d639 add many emscripten functions for PHP 2019-03-20 15:13:00 -07:00
Mark McCaskey
76b4cc79e8 fix make debug-release 2019-03-20 10:27:07 -07:00
losfair
395161acdc Merge remote-tracking branch 'origin/master' into feature/dynasm-backend 2019-03-20 19:54:29 +08:00
Lachlan Sneff
5657be1df0
Merge branch 'master' into add-versioning-to-cache 2019-03-19 16:22:55 -07:00
Mark McCaskey
cd9ef3c49a fix bugs and clean up path logic 2019-03-19 11:31:45 -07: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
01f18b2f43 Merge remote-tracking branch 'origin/master' into feature/dynasm-backend 2019-03-20 01:57:40 +08:00
losfair
295efbf3a9 Fix clippy errors. 2019-03-20 01:52:00 +08:00
Ivan Enderlin
c0f4b6a87c
Merge branch 'master' into feat-runtime-c-api-cache 2019-03-19 16:35:32 +01:00
Ivan Enderlin
57a82fa5cf fix(runtime-c-api) wasmer_serialized_module_from_bytes accepts bytes + length instead of wasmer_byte_array. 2019-03-19 16:24:59 +01:00
losfair
7ee364a58b Cargo fmt. 2019-03-19 21:31:23 +08:00
losfair
4256ccba92 Cleanup & fix need_check condition. 2019-03-19 21:30:26 +08: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
Ivan Enderlin
44373aae94 feat(runtime-c-api) Mirrors the debug and llvm features.
`wasmer-runtime` has a `debug` and a `llvm` features. Let's mirror
them in `wasmer-runtime-c-api` so that the user can, for instance,
compile with the LLVM backend.
2019-03-19 11:12:19 +01:00
Ivan Enderlin
46edd20725 feat(runtime-c-api) Add the wasmer_serialized_module_from_bytes function.
This function is required to transform a `wasmer_byte_array` into a
`wasmer_serialized_module_t`. This is the complementary function of
`wasmer_serialized_module_bytes`.
2019-03-19 10:51:43 +01:00
Ivan Enderlin
5e31a1b6d1 feat(runtime-c-api) Introduce the wasmer_serialized_module_t struct type.
The `wasmer_module_serialize` function now computes a
`wasmer_serialized_module_t` value. The `wasmer_module_deserialize`
function takes this value as an input. Same for
`wasmer_serialized_module_destroy`.

The new function `wasmer_serialized_module_bytes` allows to read the
bytes inside the `wasmer_serialized_mdule_t` structure.
2019-03-19 10:04:31 +01: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
874b613f56 fmt it 2019-03-18 17:46:06 -07:00
Mark
2580871f63 update the binary too 2019-03-18 17:40:36 -07:00
Mark
a152b85729 Add versioning to cache 2019-03-18 17:27:23 -07:00
Ivan Enderlin
f049e9b0b3 fix(runtime-c-api) Remove explicity drop.
When the value goes out-of-scope, `drop` is called utomatically.
2019-03-18 16:09:02 +01:00