Commit Graph

2285 Commits

Author SHA1 Message Date
Syrus
b8aee87d6e Skip atomic tests for now in singlepass Aarch64 2019-11-20 19:11:33 -08:00
Syrus
b77dffbbfe Merge branch 'master' into feature/singlepass-aarch64 2019-11-20 19:09:19 -08:00
Mark McCaskey
fc733647ec Add info in c api readme in the testing section 2019-11-20 16:38:44 -08:00
Mark McCaskey
4a84441ab0 Run WASI C API tests based on feature; prevent cmake caching 2019-11-20 15:41:33 -08:00
bors[bot]
6831a6d8c9
Merge #987
987: Fix runtime c api header preprocessor gcc r=syrusakbary a=Hywan

`ARCH_X86_64` is correctly defined for GCC or clang, but gnuc was
missing. This patch fixes that.

Address https://github.com/wasmerio/php-ext-wasm/issues/93
Fix https://github.com/wasmerio/wasmer/issues/984

Co-authored-by: Ivan Enderlin <ivan.enderlin@hoa-project.net>
2019-11-20 16:09:09 +00:00
Ivan Enderlin
9468e229f4 chore(runtime-c-api) Update header files. 2019-11-20 13:30:02 +01:00
Ivan Enderlin
dfe7c0d764 fix(runtime-c-api) Add support for GNUC when defining ARCH_X86_64.
`ARCH_X86_64` is correctly defined for GCC or clang, but gnuc was
missing. This patch fixes that.
2019-11-20 13:27:18 +01:00
Brandon Fish
bd58842041 Refactor excludes and add target_arch option 2019-11-19 23:38:50 -06:00
losfair
0c7545ded7 Tell dynasm we are generating x64 code in emitter_x64. 2019-11-20 02:09:32 +08:00
losfair
d56fd96395 Merge remote-tracking branch 'origin/master' into feature/singlepass-aarch64 2019-11-20 01:54:34 +08:00
losfair
c9aa37fc99 Cleanup. 2019-11-20 01:48:20 +08:00
losfair
34bb321e66 Rename emit_host_redirection. 2019-11-20 01:34:45 +08:00
losfair
98052f82b9 Unmap stack after call. 2019-11-20 01:27:48 +08:00
losfair
85b1935366 Uncomment previously disabled test. 2019-11-20 01:22:56 +08:00
losfair
3d48115586 Allocate a big enough stack for invoke(). 2019-11-20 01:07:02 +08:00
losfair
a7577dfcef Try further reducing preallocated stack size. 2019-11-20 00:37:38 +08:00
bors[bot]
e8e460ec60
Merge #977
977: fix(runtime-core) Remove unnecessary implementation of `WasmTypeList` r=Hywan a=Hywan

The unit tests `test_func_arity_*` covers all possibilities, from 0 to
12. Removing this specific implementation of `WasmTypeList` for `(A,)`
doesn't break the test cases.

Also, the `impl_traits!` macro already implement `WasmTypeList` for
`(A,)` with `impl_traits!([transparent] S1, A)`. It's not clear why
`rustc` doesn't detect that though.

Co-authored-by: Ivan Enderlin <ivan.enderlin@hoa-project.net>
2019-11-19 14:07:37 +00:00
Ivan Enderlin
dbefa165dc
Merge branch 'master' into fix-runtime-core-clean-up-typed_func 2019-11-19 14:35:11 +01:00
Ivan Enderlin
b856e111b6
Merge branch 'master' into test-runtime-core-typed_func 2019-11-19 14:34:53 +01:00
bors[bot]
8ffd380006
Merge #973
973: Add sign extension spec tests; add sign extension to singlepass r=nlewycky a=MarkMcCaskey

Adds missing spectests from official repo, implements instructions for singlepass

# Review

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


Co-authored-by: Mark McCaskey <mark@wasmer.io>
Co-authored-by: Mark McCaskey <5770194+markmccaskey@users.noreply.github.com>
2019-11-18 22:16:49 +00:00
Mark McCaskey
8a096a09e4 Remove extra register use in sign extension instructions 2019-11-18 11:47:58 -08:00
bors[bot]
e568c4a374
Merge #972
972: Prepare for 0.10.2 release r=MarkMcCaskey a=MarkMcCaskey



Co-authored-by: Mark McCaskey <mark@wasmer.io>
2019-11-18 19:44:33 +00:00
Mark McCaskey
344132cc89
Merge branch 'master' into feature/singlepass-sign-extension 2019-11-18 11:38:12 -08:00
Mark McCaskey
8b6a7b77fc Clean up from feedback 2019-11-18 11:36:49 -08:00
losfair
8ebf8986f0 Reduce stack size. 2019-11-19 03:15:12 +08:00
losfair
2776daedfa Fix entry with more than 5/6 arguments. 2019-11-19 03:04:07 +08:00
losfair
ddbdb3e585 Ignore extra arguments. 2019-11-19 02:46:31 +08:00
losfair
06a7e5424b Inline entry trampolines. 2019-11-19 02:39:51 +08:00
Mark McCaskey
2cbc748188 Revert "Update Rust version to 1.39.0." 2019-11-18 09:59:07 -08:00
losfair
d7308c361d Fix call_indirect on imported functions. 2019-11-19 01:25:01 +08:00
losfair
23f03f555b Fix compilation failure in tiering.rs. 2019-11-18 23:10:49 +08:00
Ivan Enderlin
f6cb6ce286 fix(runtime-core) Remove a warning for unused_parens.
The behavior of `unused_parens` has changed since Rust 1.39. A warning
is then raised. This patch fixes that.
2019-11-18 12:44:40 +01:00
Ivan Enderlin
85a53e8e1f test(runtime-core) Test closures in Func::new. 2019-11-18 12:44:00 +01:00
Ivan Enderlin
4e42fa1e48 fix(runtime-core) Remove unnecessary implementation of WasmTypeList.
The unit tests `test_func_arity_*` covers all possibilities, from 0 to
12. Removing this specific implementation of `WasmTypeList` for `(A,)`
doesn't break the test cases.

Also, the `impl_traits!` macro already implement `WasmTypeList` for
`(A,)` with `impl_traits!([transparent] S1, A)`. It's not clear why
`rustc` doesn't detect that though.
2019-11-18 12:22:17 +01:00
losfair
1eed6ce8f8 Fix CONSTRUCT_STACK_AND_CALL_WASM for aarch64. 2019-11-18 02:06:31 +08:00
losfair
5d2ee4fcc8 Fix floating point comparision involving NaNs. 2019-11-18 01:39:44 +08:00
losfair
cbaa94a7fa Fix movsx(S32, S64). 2019-11-18 01:08:39 +08:00
losfair
08beb99baa Fix popcnt. 2019-11-17 05:15:10 +08:00
losfair
021a75244e Reformat code for rust 1.39. 2019-11-17 04:39:39 +08:00
losfair
1db6425cd5 Merge remote-tracking branch 'origin/master' into feature/singlepass-aarch64 2019-11-17 04:36:22 +08:00
Mark McCaskey
7631aee4f4 Add sign extension spec tests; add sign extension to singlepass 2019-11-15 21:54:34 -08:00
anb
3b2d751c55 Enable compilation for specific target
By exposing the target information through `CompilerConfig`,
compiler(only LLVM at the moment) could create a machine with
different CPU feature flags other than current host, which makes it
capable to "cross compile" to some degree.

Update #959
2019-11-15 18:51:59 -08:00
Mark McCaskey
cebcb4c927 Prepare for 0.10.2 release 2019-11-15 14:55:53 -08:00
Nick Lewycky
ebe8da7bd3 When accessing memory, use byte aligned accesses.
LLVM's instcombine will attempt to bump the alignment when it can prove that it's safe to do so.

Fixes #969.
2019-11-15 14:47:53 -08:00
bors[bot]
4a2eaa4143
Merge #966
966: Add deny missing docs to runtime lib r=bjfish a=bjfish

<!-- 
Prior to submitting a PR, review the CONTRIBUTING.md document for recommendations on how to test:
https://github.com/wasmerio/wasmer/blob/master/CONTRIBUTING.md#pull-requests

-->

# Description
<!-- 
Provide details regarding the change including motivation,
links to related issues, and the context of the PR.
-->


Co-authored-by: Brandon Fish <brandon.j.fish@gmail.com>
2019-11-14 18:16:03 +00:00
losfair
342974effd Comment out failing test. 2019-11-15 00:23:10 +08:00
losfair
a9c89eb1a8 Merge remote-tracking branch 'origin/master' into feature/singlepass-aarch64 2019-11-14 23:46:15 +08:00
Ivan Enderlin
074a8f9747 Merge branch 'fix-runtime-c-api-header-preprocessor-clang' of github.com:Hywan/wasmer into fix-runtime-c-api-header-preprocessor-clang 2019-11-14 14:46:09 +01:00
Ivan Enderlin
c43a7c78d0
Merge branch 'master' into fix-runtime-c-api-header-preprocessor-clang 2019-11-14 14:45:27 +01:00
Ivan Enderlin
987b0765c0 chore(runtime-c-api) Update header files. 2019-11-14 14:37:55 +01:00