2508 Commits

Author SHA1 Message Date
Ivan Enderlin
cd16a7d1a7 chore(runtime-c-api) Update C/C++ headers. 2020-01-15 08:42:17 +01:00
Ivan Enderlin
bcbde69694 doc(runtime-core) Fix a typo. 2020-01-15 08:41:37 +01:00
Ivan Enderlin
4cdf868a0b doc(runtime-c-api) Explain why code is unreachable in wasmer_trap. 2020-01-15 08:40:36 +01:00
Ivan Enderlin
c0b439e66a feat(runtime-c-api) Rename wasmer_import_trap to wasmer_trap. 2020-01-15 08:37:20 +01:00
Ivan Enderlin
176152e7d5 test(runtime-c-api) Remove a hardcoded value. 2020-01-13 07:46:48 +01:00
Ivan Enderlin
6e7d5baccc chore(runtime-c-api) Update C/C++ headers. 2020-01-13 07:39:04 +01:00
Ivan Enderlin
b494bd860d doc(runtime-c-api) Improve wasmer_import_func_new's documentation. 2020-01-13 07:35:57 +01:00
Ivan Enderlin
a506411eb5 doc(runtime-c-api) Improve documentation of wasmer_import_trap. 2020-01-13 07:35:37 +01:00
Ivan Enderlin
b45ead289f test(runtime-c-api) Test wasmer_import_trap. 2020-01-13 07:22:03 +01:00
Ivan Enderlin
8790f6dbc9 feat(runtime-c-api) Check pointers aren't null in wasmer_import_trap. 2020-01-13 07:20:06 +01:00
Ivan Enderlin
4bf3d6dd41 test(runtime-c-api) Test wasmer_import_trap. 2020-01-10 15:14:52 +01:00
Ivan Enderlin
c7a4825bee doc(runtime-core) Update documentation. 2020-01-10 15:14:34 +01:00
Ivan Enderlin
684620435f chore(runtime-c-api) Update headers. 2020-01-10 15:14:18 +01:00
Ivan Enderlin
35459c2931 feat(runtime-c-api) Implement wasmer_import_trap.
The new `wasmer_import_trap` allows a host function to fail properly
with the Wasmer trapping API.
2020-01-10 15:13:30 +01:00
Ivan Enderlin
e913e8928f chore(runtime-c-api) Fix CS. 2020-01-10 15:12:56 +01:00
Ivan Enderlin
ec378597f1 chore(runtime-c-api) Update headers. 2020-01-10 14:49:14 +01:00
bors[bot]
be29b2e007
Merge #1128
1128: fix(runtime-core) Avoid crashing when missing host functions are allowed r=Hywan a=Hywan

Fix #1118. #1121 can be merged after

This PR fixes 2 things:

* When droping the import backing, check that `vm::FuncCtx` isn't null before dropping it,
* Use an `always_trap` as a placeholder host function when a host function is missing.

Co-authored-by: Ivan Enderlin <ivan.enderlin@hoa-project.net>
2020-01-10 09:23:58 +00:00
Ivan Enderlin
9b2f0fc635 chore(runtime-core) Avoid code duplication. 2020-01-10 10:15:26 +01:00
bors[bot]
57b6ad0600
Merge #1126
1126: Set default scale on fb window to fit screen r=MarkMcCaskey a=MarkMcCaskey



Co-authored-by: Mark McCaskey <mark@wasmer.io>
2020-01-09 22:15:02 +00:00
bors[bot]
fab3b787eb
Merge #1130
1130: Add WindowClosed event to experimental fb r=MarkMcCaskey a=MarkMcCaskey

Allows things to behave properly and know when the window closes

Co-authored-by: Mark McCaskey <mark@wasmer.io>
2020-01-09 20:25:36 +00:00
Mark McCaskey
b08b65913b Add WindowClosed event to experimental fb 2020-01-09 12:11:34 -05:00
Ivan Enderlin
c81e49a091 feat(runtime-core) Replace missing host function by always_trap. 2020-01-09 15:12:09 +01:00
Ivan Enderlin
6018aa32e1 fix(runtime-core) Drop vm::FuncCtx if not null. 2020-01-09 15:11:51 +01:00
Ivan Enderlin
19c3837881 feat(runtime-core) Create the always_trap host function. 2020-01-09 15:10:53 +01:00
Ivan Enderlin
cd6e4bdaee test(runtime) Fix CS. 2020-01-09 15:10:23 +01:00
Mark McCaskey
f48a74e44a Set default scale on fb window to fit screen 2020-01-09 06:48:03 -05:00
Ivan Enderlin
7b6d8993e1 chore(runtime-c-api) Update C/C++ headers. 2020-01-09 10:17:34 +01:00
Ivan Enderlin
67b684ac85 feat(runtime-c-api) Improve DEPRECATED compatibility.
Clang can emulate GNUC or MSVC behaviors. So instead of detecting
whether Clang is used to compile the code, it's better to detect the
targeted features are available.

Code proposed by @nlewycky, thanks!
2020-01-09 10:13:22 +01:00
Ivan Enderlin
4f691dde17 chore(runtime-c-api) Update headers. 2020-01-08 15:25:48 +01:00
Ivan Enderlin
b31a3dcdec feat(runtime-c-api) Define the DEPRECATED macro.
This PR defines a cross-compiler `DEPRECATED(message)` macro. It must
be used as follows in Rust:

```rust
/// This is a documentation.
/// cbindgen:prefix=DEPRECATED(This is a deprecation message.")
pub extern "C" fn wasmer_foo() -> c_uint {
    42
}
```

It will generate the following C header:

```c
/**
 * This is a documentation.
 */
DEPRECATED("This is a deprecation message.")
unsigned int wasmer_foo();
```

And once this code is used by a C compiler, it will print something
like this (example from Clang):

```
…/test.c:…:…: error: 'wasmer_foo' is deprecated: This is a deprecation message. [-Werror,-Wdeprecated-declarations]
    unsigned int x = wasmer_foo();
                     ^
…/wasmer.h:…:…: note: 'wasmer_foo' has been explicitly marked deprecated here
DEPRECATED("This is a deprecation message.")
^
…/wasmer.h:…:…: note: expanded from macro 'DEPRECATED'
```

This is required for further deprecations.
2020-01-08 15:02:57 +01:00
Ivan Enderlin
0274668675 doc(runtime-c-api) Fix a typo. 2020-01-07 14:21:50 +01:00
Johan Andersson
81f879565d Add MIT license to crates that were missing it
Ran into a few crates in this repo with our license scanner that didn't have any license attached to them.

Added MIT to be consistent with the other crates. Please adjust if not correct.
2019-12-22 12:28:33 +01:00
Nick Lewycky
1cffb90fea Fix unused import warning, deny more warnings. 2019-12-21 14:35:43 -08:00
Syrus
ad82beffb4 Fixed tests 2019-12-20 21:11:55 -08:00
Syrus
a7764a6fd6 Simplified code 2019-12-20 20:49:32 -08:00
Syrus
1a960a01ae Improved lint 2019-12-20 20:45:10 -08:00
Syrus
c4d70a6b75 Use Arc instead of Rc 2019-12-20 20:37:47 -08:00
Syrus
097353d0d4 Fix lint 2019-12-20 19:20:32 -08:00
Syrus
0f45bd4f0d Fixed tiering docs 2019-12-20 19:12:35 -08:00
Syrus
c143bc8fc8 Revert emscripten changes 2019-12-20 19:09:07 -08:00
Syrus
2404203ae4 Improved based on feedback 2019-12-20 19:03:49 -08:00
Syrus
527d7072b3 Remove unsafe transmute copy 2019-12-20 18:52:30 -08:00
Syrus
294cc28135 Move inline breakpoint outside of runtime backend
There was some code smell leaking inline breakpoint implementation into the runtime core backend instead of the compiler itself
2019-12-20 18:26:56 -08:00
bors[bot]
0419df937e
Merge #1095
1095: Update to cranelift 0.52 r=nlewycky a=nlewycky

# Description
Update to cranelift 0.52.

To use our wasmer branch of cranelift, we point to its path on git. Per @syrusakbary , we don't want to push updated wasmer-clif crates until we're ready to release the matching wasmer that will use them.

# Review

- [x] Add a short description of the the change to the CHANGELOG.md file


Co-authored-by: Nick Lewycky <nick@wasmer.io>
Co-authored-by: Mark McCaskey <mark@wasmer.io>
2019-12-21 01:45:45 +00:00
Mark McCaskey
fe969be612 Update wasmparser to version 0.45.0 2019-12-20 17:16:54 -08:00
Mark McCaskey
8cddea341b Update to 0.45.0 wasmparser Operator names in llvm-backend 2019-12-20 17:16:54 -08:00
Mark McCaskey
adecb36d15 Update to 0.45.0 wasmparser Operator names in singlepass-backend 2019-12-20 17:15:38 -08:00
Nick Lewycky
c2f287e65b Update to cranelift 0.51. 2019-12-20 17:10:36 -08:00
bors[bot]
d5d82e2508
Merge #1096
1096: Add TBAA labels to initialization (default and copy) of locals. r=nlewycky a=nlewycky



Co-authored-by: Nick Lewycky <nick@wasmer.io>
2019-12-21 01:06:23 +00:00
Nick Lewycky
cca73c0a6f Add TBAA labels to initialization (default and copy) of locals. 2019-12-20 17:02:58 -08:00