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
bors[bot]
07a6fde420
Merge #932
...
932: Fix typo in comment. r=nlewycky a=nlewycky
Co-authored-by: nlewycky <nick@wasmer.io>
2019-11-05 19:32:26 +00:00
nlewycky
dc437bb4e7
Fix typo in comment.
2019-11-05 11:31:14 -08:00
bors[bot]
c07e6058f9
Merge #929
...
929: Update __wasi_rights_t and __wasi_signal_t with published changes r=MarkMcCaskey a=MarkMcCaskey
Follow up to #926 ; fixes everything else listed at https://github.com/WebAssembly/WASI/pull/135
Co-authored-by: Mark McCaskey <mark@wasmer.io>
2019-11-05 18:24:43 +00:00
losfair
015491ea77
Add floating point instructions.
2019-11-06 01:43:41 +08:00
bors[bot]
5f9670fc19
Merge #931
...
931: Build Metadata using the current Context. r=nlewycky a=nlewycky
Fixes #927 . Reverts #928 .
Co-authored-by: Nick Lewycky <nick@wasmer.io>
2019-11-05 00:27:52 +00:00
Nick Lewycky
1d8f2b767d
Build Metadata using the current Context.
...
Fixes #927 . Reverts #928 .
2019-11-04 15:27:38 -08:00
Mark McCaskey
ef5faccb76
Update __wasi_rights_t and __wasi_signal_t with published changes
2019-11-04 13:45:19 -08:00
bors[bot]
bbcccafc54
Merge #926 #928
...
926: Fix values of __wasi_advice_t r=nlewycky a=MarkMcCaskey
Issue identified in https://github.com/WebAssembly/WASI/issues/132 ;
928: Add workaround for #927 . r=MarkMcCaskey a=nlewycky
# Description
Add `--test-threads 1` to workaround #927 .
Co-authored-by: Mark McCaskey <mark@wasmer.io>
Co-authored-by: Nick Lewycky <nick@wasmer.io>
2019-11-04 19:20:34 +00:00
Nick Lewycky
efbb53a91e
Add workaround for #927 .
2019-11-04 11:04:50 -08:00
Mark McCaskey
aaa0160c95
Fix values of __wasi_advice_t
2019-11-04 10:48:42 -08:00