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
Ivan Enderlin
0e27f2fa72
test(runtime-core) Test more host functions as closures.
2019-11-06 14:48:46 +01:00
Ivan Enderlin
6035bd2d9b
feat(runtime-core,clif-backend,llvm-backend) Rename an ImportFunc
offset.
...
`ImportedFunc::offset_vmctx` becomes `ImportedFunc::offset_func_ctx`.
2019-11-06 14:48:46 +01:00
Ivan Enderlin
e002c377ef
feat(runtime-core) vm::ImportedFunc
and vm::FuncCtx
have NonNull
pointers.
2019-11-06 14:48:46 +01:00
Ivan Enderlin
177c507a4e
feat(runtime-core) Introduce vm::FuncCtx
.
...
`vm::FuncCtx` replaces `vm::Ctx` as first argument passed to host
functions (aka imported functions).
2019-11-06 14:48:46 +01:00