Commit Graph

2268 Commits

Author SHA1 Message Date
Brandon Fish
2d10306c87 Add copyright notice 2019-05-18 16:32:22 -05:00
Brandon Fish
74a758d39e Add progress on next_event 2019-05-18 16:31:08 -05:00
Brandon Fish
ac3fafae9a
Merge branch 'master' into feature/clif-cgapi 2019-05-14 23:01:28 -05:00
bors[bot]
03671ab5ac Merge #442
442: Fix/misc wasi fs issues r=MarkMcCaskey a=MarkMcCaskey

resolves #434 

Co-authored-by: Mark McCaskey <mark@wasmer.io>
Co-authored-by: Mark McCaskey <markmccaskey@users.noreply.github.com>
2019-05-15 00:40:50 +00:00
Mark McCaskey
216d09b7c7 Merge branch 'fix/misc-wasi-fs-issues' of github.com:wasmerio/wasmer into fix/misc-wasi-fs-issues 2019-05-14 17:40:09 -07:00
Mark McCaskey
c402c0350c return EIO if internal data structures are corrupt 2019-05-14 17:39:19 -07:00
bors[bot]
0815a75561 Merge #443
443: Return impl Compiler from default_compiler to fix compilation features r=bjfish a=bjfish

runtime compilation was failing (llvm/singlepass features) for the new compiler implementations for the `default_compiler` function due to changing types and state being added to the compilers.

This PR:
- adds runtime library tests for these features to catch the regression earlier
- refactors `default_compiler` to return `impl Compiler` and no longer a singleton to fix the compilation issue

Co-authored-by: Brandon Fish <brandon.j.fish@gmail.com>
Co-authored-by: Brandon Fish <bjfish@users.noreply.github.com>
2019-05-14 23:53:06 +00:00
Mark McCaskey
593255021d
Merge branch 'master' into fix/misc-wasi-fs-issues 2019-05-14 16:42:42 -07:00
Mark McCaskey
8a99e5ce6a update changelog 2019-05-14 16:34:41 -07:00
Mark McCaskey
87d9940a23 implement readdir! 2019-05-14 16:33:54 -07:00
Brandon Fish
89f3998b49
Merge branch 'master' into feature/fix-default_compiler-compilation 2019-05-14 18:22:44 -05:00
Brandon Fish
bef9f1244a Return impl Compiler from default_compiler to fix compilation with features 2019-05-14 18:19:58 -05:00
Mark McCaskey
3bf550055f rm from entry in fd_renumber -- thanks Brandon! 2019-05-14 15:10:01 -07:00
Mark McCaskey
84ea25241a fix opening directories in path_open 2019-05-14 15:08:45 -07:00
bors[bot]
912072362f Merge #441
441: fix borrowing warning on nightly r=MarkMcCaskey a=MarkMcCaskey

resolves #433 

Co-authored-by: Mark McCaskey <mark@wasmer.io>
2019-05-14 21:51:15 +00:00
Mark McCaskey
5114d42237 fix borrowing warning on nightly 2019-05-14 14:05:41 -07:00
bors[bot]
702a3fd86a Merge #440
440: fix(runtime-c-api) `wasmer_instance_call` types must matche `wasmer_export_func_*_arity` r=Hywan a=Hywan

The `wasmer_export_func_params_arity` and
`wasmer_export_func_returns_arity` functions store the arity in a
`uint32_t`. The `wasmer_instance_call` expects `c_int`. There is a
type mismatch here. It's not annoying in C or C++, but in some other
languages that have bindings to C/C++, it can imply useless casting.

This patch changes `wasmer_instance_call` to expect `uint32_t` for
`params_len` and `results_len` to match the
`wasmer_export_func_*_arity` functions.

Other patches do the same for `wasmer_export_func_params` and
`wasmer_export_func_returns`.

Co-authored-by: Ivan Enderlin <ivan.enderlin@hoa-project.net>
2019-05-14 15:17:43 +00:00
Ivan Enderlin
8bd9bbb508 chore(runtime-c-api) Update C/C++ header files. 2019-05-14 16:19:32 +02:00
Ivan Enderlin
f04e77323b fix(runtime-c-api) Update wasmer_export_func_params_arity signature.
The `returns_len` argument type of `wasmer_export_func_returns_params`
must be `uint32_t` to match the `wasmer_export_func_returns_arity` results,
so that casts are not required.
2019-05-14 16:18:41 +02:00
Ivan Enderlin
53661385ed chore(runtime-c-api) Update C/C++ header files. 2019-05-14 16:17:13 +02:00
Ivan Enderlin
91006bab53 fix(runtime-c-api) Update wasmer_export_func_params_arity signature.
The `params_len` argument type of `wasmer_export_func_params_arity`
must be `uint32_t` to match the `wasmer_export_func_*_arity` results,
so that casts are not required.
2019-05-14 16:15:36 +02:00
Ivan Enderlin
07499329dd chore(changelog) Add #440. 2019-05-14 11:54:13 +02:00
Ivan Enderlin
2b250c30f3 chore(runtime-c-api) Regenerate C/C++ header files. 2019-05-14 11:50:10 +02:00
Ivan Enderlin
f68379a6df test(runtime-c-api) Use *_arity variables when calling wasmer_export_func_call. 2019-05-14 11:49:40 +02:00
Ivan Enderlin
d3c75a38fa fix(runtime-c-api) wasmer_instance_call types matches wasmer_export_func_*_arity.
The `wasmer_export_func_params_arity` and
`wasmer_export_func_returns_arity` functions store the arity in a
`uint32_t`. The `wasmer_instance_call` expects `c_int`. There is a
type mismatch here. It's not annoying in C or C++, but in some other
languages that have bindings to C/C++, it can imply useless casting.

This patch changes `wasmer_instance_call` to expect `uint32_t` for
`params_len` and `results_len` to match the
`wasmer_export_func_*_arity` functions.
2019-05-14 11:46:43 +02:00
bors[bot]
7e00bef6d3 Merge #439
439: doc(runtime-c-api) Add short module descriptions - cont r=syrusakbary a=syrusakbary

This PR supersedes #313 

Co-authored-by: Ivan Enderlin <ivan.enderlin@hoa-project.net>
Co-authored-by: Syrus <me@syrusakbary.com>
2019-05-13 23:27:32 +00:00
Syrus
19eba19603 Merge branch 'master' into doc-runtime-c-api
# Conflicts:
#	lib/runtime-c-api/src/lib.rs
2019-05-13 15:55:20 -07:00
bors[bot]
41ae84b0bb Merge #269
269: docs(runtime) Add some better runtime docs r=syrusakbary a=lachlansneff



Co-authored-by: Lachlan Sneff <lachlan.sneff@gmail.com>
Co-authored-by: Syrus <me@syrusakbary.com>
2019-05-13 19:32:13 +00:00
Syrus
02d4affd6d Updated changelog 2019-05-13 11:44:44 -07:00
Syrus
8218e550fc Improved docs and fixed few typos 2019-05-13 11:18:57 -07:00
Syrus
5a6cb96714 Merge branch 'master' into docs/better-runtime-docs
# Conflicts:
#	lib/runtime-core/src/vm.rs
2019-05-13 11:08:00 -07:00
bors[bot]
9aac20e215 Merge #432
432: feat(runtime-c-api) Check buffer size before creating the slice, and fix `wasmer_last_error_message` returned value r=Hywan a=Hywan

It's safer to check the buffer size is large enough to hold the error
message before creating the slice from raw parts.

Also, this patch remove the need for `last_error`, simplifying the
code a little bit. The `length` variable is casted to `usize` once.

This patch also updates the returned value of `wasmer_last_error_message` by adding 1, so that it mimics the `wasmer_last_error_length` function that counts the trailing null byte.

Co-authored-by: Ivan Enderlin <ivan.enderlin@hoa-project.net>
2019-05-13 09:00:07 +00:00
Ivan Enderlin
b050144898 Merge branch 'master' into fix-runtime-c-api-error-length 2019-05-13 10:59:11 +02:00
Ivan Enderlin
216e0005b1 chore(changelog) Add #432. 2019-05-13 10:57:32 +02:00
Ivan Enderlin
8c8586faaa test(runtime-c-api) Assert returned value from wasmer_last_error_message. 2019-05-13 10:52:55 +02:00
Ivan Enderlin
bedd305b06 doc(runtime-c-api) Fix inline comment. 2019-05-13 10:52:43 +02:00
Brandon Fish
7315cd1100 Add some basic partial implementation of Cranelift codegen 2019-05-12 19:16:01 -05:00
bors[bot]
b2227314a7 Merge #436
436: Add deny for unreachable patterns and unused unsafe r=syrusakbary a=bjfish



Co-authored-by: Brandon Fish <brandon.j.fish@gmail.com>
2019-05-12 22:16:44 +00:00
bors[bot]
8130eb1e14 Merge #435
435: Fix f32/f64 conversion, add tests, and rename conversion method r=syrusakbary a=bjfish

Fixes #415

I believe removing this conversion here caused the regression: https://github.com/wasmerio/wasmer/pull/379/files#diff-5e7e23717d05d1d18be5b2e3b75f454dL158

I've added conversion tests and also renamed `NativeWasmType::{to_bits, from_bits}` to `to_binary/from_binary` because it seemed akward to overload the existing `f32::to_bits` method.

Co-authored-by: Brandon Fish <brandon.j.fish@gmail.com>
2019-05-12 19:29:40 +00:00
Brandon Fish
d9cd4fc3e0 Add scaffold to use new code generator API for Cranelift 2019-05-12 11:05:26 -05:00
Brandon Fish
2aefa731a6 Add deny for unreachable patterns and unused unsafe 2019-05-12 00:33:02 -05:00
Brandon Fish
a96d5cb975 Fix f32/f64 conversion, add tests, and rename conversion method 2019-05-11 19:26:17 -05:00
bors[bot]
8d2a08a1be Merge #430
430: Add some initial deny for unused_imports and unused_variables r=bjfish a=bjfish



Co-authored-by: Brandon Fish <brandon.j.fish@gmail.com>
2019-05-11 15:34:02 +00:00
Brandon Fish
85158ac22a Add some initial deny for unused_imports and unused_variables
Additional unused variable fix on unix

Remove unused import on unix

Remove unused windows import
2019-05-11 09:23:25 -05:00
bors[bot]
fa5402580f Merge #429
429: implement some FS operations for rsign2 r=MarkMcCaskey a=MarkMcCaskey

Get https://github.com/jedisct1/rsign2 working with WASI on Wasmer (for end-to-end tests of wapm)

Current implementation is very hacky, but works!  It should have a couple passes of improvement before shipping

Co-authored-by: Mark McCaskey <mark@wasmer.io>
2019-05-10 17:59:01 +00:00
Mark McCaskey
02f3349cb1 clean up, update changelog 2019-05-10 10:58:06 -07:00
Mark McCaskey
a527154c62 major improvements to wasi fs calls; include explanation in unimpl!s 2019-05-10 10:54:36 -07:00
Ivan Enderlin
7d2721ef7a fix(runtime-c-api) wasmer_last_error_message returns the length + 1.
Returning the error message's length + 1 mimics the
`wasmer_last_error_length` function that counts the trailing null
byte.
2019-05-10 16:00:13 +02:00
Ivan Enderlin
1d555301f7 feat(runtime-c-api) Check buffer size before creating the slice.
It's safer to check the buffer size is large enough to hold the error
message before creating the slice from raw parts.

Also, this patch remove the need for `last_error`, simplifying the
code a little bit. The `length` variable is casted to `usize` once.
2019-05-10 15:55:02 +02:00
Mark McCaskey
1f99ef8377 implement some FS operations for rsign2 2019-05-09 16:01:36 -07:00