Commit Graph

1844 Commits

Author SHA1 Message Date
losfair
179bbf9e41 Fix integer division. 2019-03-14 09:15:25 +08:00
Mackenzie Clark
93b602d8ea use "wasmer:fs" for custom section name and add unbundled test wasm 2019-03-13 15:24:48 -07:00
Mackenzie Clark
7363d07bb1 install sodium when we lint 2019-03-13 14:33:16 -07:00
Mackenzie Clark
d95b62a467 fix cargo toml and fmt 2019-03-13 14:27:00 -07:00
Mackenzie Clark
bd697487aa Merge branch 'master' into feature/vfs 2019-03-13 14:25:14 -07:00
Mackenzie Clark
c1e0d325e3 switch to zbox 2019-03-13 14:23:55 -07:00
bors[bot]
093757519e Merge #262
262: create an llvm flag r=lachlansneff a=xmclark

Some users may not care about building for the LLVM backend, so it may be useful to isolate it with a feature flag. Building should now only build the cranelift backend and does not require any LLVM setup. 

Co-authored-by: Mackenzie Clark <mackenzie.a.z.c@gmail.com>
Co-authored-by: Lachlan Sneff <lachlan.sneff@gmail.com>
2019-03-13 19:30:38 +00:00
Lachlan Sneff
cd767bc1a7
Merge branch 'master' into fix/llvm-feature-flag 2019-03-13 12:22:21 -07:00
losfair
d4ded2cf07 Fix bugs found when running spectests. 2019-03-13 18:23:50 +08:00
Brandon Fish
68181acc74 Add dynasm to spectests 2019-03-12 21:14:50 -05:00
Brandon Fish
a5bab8cdf6 Updates to compile dynasm after merge from master 2019-03-12 20:59:10 -05:00
Brandon Fish
557be77338 Merge branch 'master' into feature/dynasm-backend 2019-03-12 20:58:22 -05:00
Brandon Fish
1fc7b31309 Add missing trait items to DynasmCompiler so that cargo build --all works 2019-03-12 19:39:10 -05:00
Mackenzie Clark
650125f338 fix build errors 2019-03-12 14:04:53 -07:00
Mackenzie Clark
9ff55a93ee Merge branch 'master' into feature/vfs 2019-03-12 14:02:06 -07:00
Ivan Enderlin
20d1023abe fix(emscripten) Various warning fixes and cleanups (#266)
* fix(emscripten) Remove unused imports.

This patch removes unused imports reported by `rustc` as warnings.

* fix(emscripten) Allow unreachable patterns in `_clock_gettime`.

The compiler thinks `CLOCK_MONOTONIC_COARSE` is unreachable, which is
not always the case. Add an attribute to allow unreachable patterns to
remove the warning.

* fix(emscripten) Rename unused variables.

This patch renames various unused variables by appending an underscore
to them.

* fix(emscripten) Declare `table` as immutable.

The `table` variable in `EmscriptenGlobals::new` was declared as
mutable, but it's never mutated.

* fix(emscripten) Remove an unnecessary `unsafe` block.

* fix(emscripten) Remove duplicate definition of `SO_NOSIGPIPE`.

The `SO_NOSIGPIPE` constant is defined in `syscalls/mod.rs` and
`syscalls/unix.rs`. It's never used in the first case. We can safely
remove it in this file, and keep it in `unix.rs`.

* fix(emscripten) `read_string_from_wasm` is used only on Windows.

Mark `read_string_from_wasm` as possible deadcode, since it's used
only on Windows.

* fix(emscripten) Remove `DYNAMICTOP_PTR_DIFF`, `stacktop`, `stack_max`,
`dynamic_base` and `dynamic_ptr`.

Four functions and one constant are used together but never used
inside or outside this file. They are deadcode.

* fix(emscripten) Remove `infinity` and `nan` fields of `EmscriptenGlobalsData`.

Those fields are never used.

* fix(emscripten) Allow non snake case in `emscripten_target.rs`.

Many functions in this file don't follow the snake case style for Rust
function names. The reason is that we want the names to match the
emscripten symbol names; even if a mapping is done in `lib.rs`, it's
easier to get the same names.

* fix(emscripten) Rename `STATIC_TOP` to `static_top`.

This variable is not a constant.
2019-03-12 14:00:33 -07:00
Mackenzie Clark
0c7808b1d3 reset a cargo manifests 2019-03-12 13:58:33 -07:00
Mackenzie Clark
b4fce827f0 bring back clippy all 2019-03-12 13:36:46 -07: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
b4df668881 run vfs tests 2019-03-12 12:01:55 -07:00
Mackenzie Clark
b5697d854a fix typos in vfs tests 2019-03-12 12:01:45 -07:00
Mackenzie Clark
f7f4fbf08a add the feature flag for llvm backend 2019-03-12 11:59:50 -07:00
Mackenzie Clark
76531b4fcb add readme for runtime abi 2019-03-12 10:57:47 -07:00
Mackenzie Clark
cc3f04efd7 expose vfs in emscripten and impl read syscall, feature flag 2019-03-12 10:48:47 -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
Mackenzie Clark
f014a05304 create runtime abi crate and vfs implementation 2019-03-12 10:40:52 -07:00
Syrus
ef69f6151c Run test-and-build always on master 2019-03-12 10:07:23 -07:00
bors[bot]
d304bb4238 Merge #263 #265
263: fix(runtime-core) Remove unused imports r=Hywan a=Hywan

This patch removes unused imports as reported by `rustc` as warnings.

265: fix(clif-backend) Remove unused imports r=Hywan a=Hywan

This patch removes unused imports reported by `rustc` as warnings.

Co-authored-by: Ivan Enderlin <ivan.enderlin@hoa-project.net>
2019-03-12 13:09:26 +00:00
Ivan Enderlin
2c8fc5238d fix(clif-backend) Remove unused imports.
This patch removes unused imports reported by `rustc` as warnings.
2019-03-12 10:03:55 +01: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
bors[bot]
97187f6d21 Merge #261
261: feat(runtime-c-api) Add an API to update `vm::Ctx.data` r=Hywan a=Hywan

This patch adds 2 functions for the runtime C API, respectively
`wasmer_instance_context_data_set` and
`wasmer_instance_context_data_get`. The goal is to modify the
`vm::Ctx.data` field in the `runtime-core` library.

Since all imported functions receive this context, that's the
simplest way to pass dynamic data to them.

Co-authored-by: Ivan Enderlin <ivan.enderlin@hoa-project.net>
Co-authored-by: Syrus Akbary <me@syrusakbary.com>
2019-03-12 08:30:24 +00:00
Ivan Enderlin
5db05fd609
Merge branch 'master' into feat-runtime-c-api-instance-context-data 2019-03-12 09:02:05 +01:00
Ivan Enderlin
9bcd59a4c4 Merge branch 'feat-runtime-c-api-instance-context-data' of github.com:Hywan/wasmer into feat-runtime-c-api-instance-context-data 2019-03-12 09:00:54 +01:00
Ivan Enderlin
a390a28384 fix(runtime-c-api) Fix Clippy errors. 2019-03-12 08:58:22 +01:00
losfair
c3b0bd76a1 Validate return values in indirect call test. 2019-03-12 11:34:45 +08:00
losfair
683cb2090c Fix call_indirect. 2019-03-12 11:31:55 +08:00
bors[bot]
b27163d98f Merge #260
260: fix(runtime-c-api) Fix the `imports` length. r=Hywan a=Hywan

`imports` contains `func_import`, `global_import`, `memory_import` and
`table_import`, so 4 items. This patch updates the length of `imports`
when calling the `wasmer_instantiate` function.

Co-authored-by: Ivan Enderlin <ivan.enderlin@hoa-project.net>
Co-authored-by: Syrus Akbary <me@syrusakbary.com>
2019-03-12 00:01:47 +00:00
Mackenzie Clark
033a2e71bd fix compiler error on windows 2019-03-11 10:25:45 -07:00
Syrus Akbary
87fb082993
Merge branch 'master' into fix-runtime-c-api-test-imports 2019-03-11 10:09:15 -07:00
Syrus Akbary
7242149b46
Merge branch 'master' into feat-runtime-c-api-instance-context-data 2019-03-11 10:09:02 -07:00
Mackenzie Clark
9c2a141d6e
Merge branch 'master' into fix/llvm-feature-flag 2019-03-11 10:05:10 -07:00
Syrus
e591cd0607 Use wasmerio fork of inkwell 2019-03-11 10:03:40 -07:00
Mackenzie Clark
ee55cd5e64 create an llvm flag 2019-03-11 09:58:09 -07:00
Ivan Enderlin
675f6817ba test(runtime-c-api) Free allocations.
Don't forget to free `context_data` :-).
2019-03-11 17:41:17 +01:00
Ivan Enderlin
170de02dd3 test(runtime-c-api) Test the wasmer_instance_context_data_* functions. 2019-03-11 17:34:13 +01:00
Ivan Enderlin
a11d454130 feat(runtime-c-api) Add an API to update vm::Ctx.data.
This patch adds 2 functions for the runtime C API, respectively
`wasmer_instance_context_data_set` and
`wasmer_instance_context_data_get`. The goal is to modify the
`vm::Ctx.data` field in the `runtime-core` library.

This is required to pass dynamic data to imported functions for
instance.
2019-03-11 16:50:18 +01:00
Ivan Enderlin
3fea07dc8a fix(runtime-c-api) Fix the imports length.
`imports` contains `func_import`, `global_import`, `memory_import` and
`table_import`, so 4 items. This patch updates the length of `imports`
when calling the `wasmer_instantiate` function.
2019-03-11 14:35:51 +01:00
bors[bot]
a61fdf8b0b Merge #250
250: feat(bors) Set up Bors r=lachlansneff a=Hywan

I'm trying to setup Bors. I think we may update some settings on the Github repo. See https://bors.tech/documentation/getting-started/ for the documentation.

Co-authored-by: Ivan Enderlin <ivan.enderlin@hoa-project.net>
Co-authored-by: Lachlan Sneff <lachlan.sneff@gmail.com>
Co-authored-by: Mackenzie Clark <mackenzie.a.z.c@gmail.com>
2019-03-08 23:23:47 +00:00
Lachlan Sneff
ee8b573e11
Merge branch 'master' into bors 2019-03-08 15:15:35 -08:00