Commit Graph

4211 Commits

Author SHA1 Message Date
Brandon Fish
2f699a369b Add cmake to CI 2019-11-10 14:51:06 -06:00
Brandon Fish
41d207d296 Trigger a build 2019-11-10 14:43:23 -06:00
Brandon Fish
2d00b2589e Update with PR review suggestions 2019-11-10 14:37:36 -06:00
Brandon Fish
1f9316b5ae Update Protect enum with suggestions 2019-11-10 14:31:36 -06:00
Brandon Fish
07ca48a34f Try initial travis arm64 setup 2019-11-10 14:26:11 -06:00
Brandon Fish
328ab0a93b Remove macro identifiers which don't work in rustdoc comments 2019-11-10 13:43:39 -06:00
Brandon Fish
ff4c157285 Add runtime core deny missing docs description to changelog 2019-11-10 13:15:32 -06:00
Brandon Fish
aad390d09d Deny missing docs in runtime core and add missing docs 2019-11-10 13:13:18 -06:00
losfair
03c5614203 Rerun cargo fmt 2019-11-11 02:00:16 +08:00
losfair
03a9d1ad60 Cargo fmt 2019-11-11 01:43:16 +08:00
losfair
7d5699c19d Add missing instructions for aarch64. 2019-11-11 01:43:01 +08:00
losfair
899fbed35d Merge master. 2019-11-11 01:42:43 +08:00
bors[bot]
0d644a53db
Merge #939
939: Fix WASI append bug, add test r=MarkMcCaskey a=MarkMcCaskey

resolves #936 

Co-authored-by: Mark McCaskey <mark@wasmer.io>
Co-authored-by: Syrus Akbary <me@syrusakbary.com>
2019-11-09 00:34:07 +00:00
Mark McCaskey
adc9f3d479 Explicitly delete temp file in fd_append test 2019-11-08 16:33:08 -08:00
bors[bot]
23c9dbd9f3
Merge #938
938: Fuzz all the backends. r=nlewycky a=nlewycky

![](https://i.imgflip.com/3fq2bw.jpg)


Co-authored-by: Nick Lewycky <nick@wasmer.io>
2019-11-08 23:54:53 +00:00
Nick Lewycky
ed6ce4b9b4 Don't create functions for imports, we still call those indirectly. 2019-11-08 14:44:59 -08:00
Nick Lewycky
2957b6abd8 Emit direct calls for local functions, but not for imports. 2019-11-08 14:44:50 -08:00
Syrus Akbary
3341528f71
Merge branch 'master' into fix/wasi-append 2019-11-08 14:21:24 -08:00
Nick Lewycky
674a70fa05 Create function declarations before starting the body of the first function. 2019-11-08 13:13:58 -08:00
bors[bot]
5fee189e30
Merge #940
940: Update supported Rust version to 1.38 r=MarkMcCaskey a=MarkMcCaskey

Bump stable version to latest release - 1

Co-authored-by: Mark McCaskey <mark@wasmer.io>
2019-11-08 21:06:48 +00:00
Syrus Akbary
e80ffed109
Merge pull request #937 from wasmerio/nlewycky/fuzzer-spectests-extensions
Pass --enable-all to wasm2json when building corpus out of spectests.
2019-11-08 11:43:45 -08:00
Mark McCaskey
a94fabf56e Update supported Rust version to 1.38 2019-11-08 11:40:53 -08:00
Mark McCaskey
64783423ea Fix WASI append bug, add test 2019-11-08 11:17:04 -08:00
Nick Lewycky
6370e11034 Fuzz all the backends. 2019-11-08 11:10:44 -08:00
Nick Lewycky
37268b2f46 Pass --enable-all to wasm2json when building corpus out of spectests. 2019-11-08 10:41:42 -08:00
bors[bot]
38f4fdb195
Merge #935
935: Apply TBAA to the correct instruction. r=nlewycky a=nlewycky

Another instance of the bug in PR #933.


Co-authored-by: Nick Lewycky <nick@wasmer.io>
2019-11-07 20:57:19 +00:00
Nick Lewycky
dccaa3a285 Apply TBAA to the correct instruction.
Another instance of the bug in PR #933.
2019-11-07 12:42:29 -08:00
Ivan Enderlin
ba87af5b1a feat(runtime-core) Ability for an export function to get a func env. 2019-11-07 20:44:17 +01:00
bors[bot]
374fd5b393
Merge #933
933: Apply TBAA to the correct instruction. r=syrusakbary a=nlewycky

Caught by LLVM verifier complaining about !tbaa on a getelementptr.


Co-authored-by: Nick Lewycky <nick@wasmer.io>
2019-11-07 14:09:57 +00:00
Ivan Enderlin
2e05104d45 fix(runtime-core) Introduce Context::ExternalWithEnv.
Host functions use `Context::External` with a `*mut vm::FuncCtx`
pointer, casted to `*mut vm::Ctx`. It creates a conflict with exports
that also use `Context::External`.

This patch introduces `Context::ExternalWithEnv` to create a specific
path in the code for an external context with `*mut vm::FuncEnv`.

This patch fixes all the `linking.wast` tests in the spectests.
2019-11-07 14:32:19 +01:00
Ivan Enderlin
dfaad35f8d fix(spectests) Remove a warning. 2019-11-07 14:31:43 +01:00
Nick Lewycky
203efd0c06 Apply TBAA to the correct instruction.
Caught by LLVM verifier complaining about !tbaa on a getelementptr.
2019-11-06 23:25:39 -08:00
losfair
50c30ab212 runtime-core: Support cross-compilation. 2019-11-07 01:30:45 +08:00
losfair
001213716e Add fneg. 2019-11-07 01:30:27 +08:00
losfair
6135a004a4 Add itruncf/fconverti fast path. 2019-11-07 01:11:25 +08:00
Ivan Enderlin
ac8aece380 doc(changelog) Add #915, #917 and #925. 2019-11-06 14:57:10 +01:00
Ivan Enderlin
cf74b68c37 Merge branch 'master' into feat-runtime-core-clos-host-function 2019-11-06 14:48:47 +01:00
Ivan Enderlin
6f84a6f15b test(runtime-core) Remove a warning in tests. 2019-11-06 14:48:47 +01:00
Ivan Enderlin
5ccaf12b2a doc(runtime-core) Fix inline documentations. 2019-11-06 14:48:47 +01:00
Ivan Enderlin
c4c88f8af5 fix(runtime-core) Remove undefined behavior with mem::transmute.
In the `wrap` functions, we use `std::mem::transmute(&())` to get the
pointer to the value “around” `wrap` (`Fn` has a method `to_raw` which
declares a `wrap` function, which uses `transmute` to retrieve
`Fn`). This is an undefined behavior. It was working until the
`FuncCtx` is introduced. Since then, the undefined behavior was
causing an error with the Singlepass backend.

This patch stores the pointer to `Fn` in `func_env`, so that the
pointer to the user-defined host function is always predictable.
2019-11-06 14:48:46 +01:00
Ivan Enderlin
a4ba429ed0 feat(singlepass-backend) Inject FuncCtx to the function pointer of an host function. 2019-11-06 14:48:46 +01:00
Ivan Enderlin
215e4458f0 Merge branch 'master' into feat-runtime-core-clos-host-function 2019-11-06 14:48:46 +01:00
Ivan Enderlin
a9e0e9baeb test(runtime-core) Write more documentation. 2019-11-06 14:48:46 +01:00
Ivan Enderlin
293b71ac54 doc(runtime-core) Write more documentation. 2019-11-06 14:48:46 +01:00
Ivan Enderlin
0f82cd3c40 doc(runtime-core) Write more documentation. 2019-11-06 14:48:46 +01:00
Ivan Enderlin
81326cee13 doc(runtime-core) Write more documentation. 2019-11-06 14:48:46 +01:00
Ivan Enderlin
3435ce436b test(runtime-core) Extract assert as tests. 2019-11-06 14:48:46 +01:00
Ivan Enderlin
a52b4b2280 test(runtime-core) Test closures with a captured environment. 2019-11-06 14:48:46 +01:00
Ivan Enderlin
3b34a9187a chore(runtime-core) Remove dbg!. 2019-11-06 14:48:46 +01:00
Ivan Enderlin
2a041f898e !temp 2019-11-06 14:48:46 +01:00