2972 Commits

Author SHA1 Message Date
Ivan Enderlin
a1f0a556e5 fix(interface-types) Use same stack order than Wasm invocation rule. 2020-03-23 14:34:57 +01:00
Ivan Enderlin
693b210638 fix(interface-types) Stack pops items in the same order than Wasm invocation rule. 2020-03-23 14:32:26 +01:00
bors[bot]
704c34283f
Merge #1320
1320: Support multiple custom sections with the same name r=MarkMcCaskey a=MarkMcCaskey

The spec doesn't disallow duplicates and the [JS API spec](https://webassembly.github.io/spec/js-api/index.html#dom-module-customsections) supports them.

# Review

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


Co-authored-by: Mark McCaskey <mark@wasmer.io>
2020-03-21 00:15:24 +00:00
nlewycky
30afd145e0
Merge branch 'master' into feature/llvm-mcg-no-builder 2020-03-20 12:27:48 -07:00
Nick Lewycky
f7d4f855a3 inkwell::Builder is a per-function notion, remove it from LLVMModuleCodeGenerator.
This also removes it from the API to generate trampolines, which makes sense because those produce new functions, so it can produce a new builder for the new function.
2020-03-20 12:26:15 -07:00
Mark McCaskey
248e06146a Support multiple custom sections with the same name 2020-03-20 11:27:23 -07:00
Heyang Zhou
d1e8674f8d
Merge branch 'master' into feature/singlepass-nan-cncl 2020-03-19 12:05:57 +08:00
Jake Shadle
19ffd8ebb9 Fix warning (from clang) 2020-03-18 20:07:12 +01:00
Jake Shadle
9e389b9a5f Fix cross compilation
cfg!()/env!() are applied on the host platform during the build script's
build, the environment of the build script's execution is the proper way
to determine eg target_os
2020-03-18 20:06:55 +01:00
Jake Shadle
4de7deb568 Replace cmake with cc 2020-03-18 20:05:05 +01:00
losfair
c25ba627df Add comment for call argument list preprocessing. 2020-03-18 23:41:10 +08:00
losfair
8485ccc88c Update comment for nan_canonicalization. 2020-03-18 01:48:27 +08:00
losfair
29a431cfc7 Remove 4 spectest excludes that are no longer needed. 2020-03-18 01:43:05 +08:00
losfair
a9cd6d6814 Add aarch64 NaN canonicalization spectest excludes. 2020-03-18 01:16:18 +08:00
losfair
ea0cd7286e Cargo fmt 2020-03-18 01:03:55 +08:00
losfair
3a18b70d31 Merge remote-tracking branch 'origin/feature/singlepass-nan-cncl' into feature/singlepass-nan-cncl 2020-03-18 01:03:30 +08:00
losfair
86dde8cab2 Add missing movs. 2020-03-18 01:02:59 +08:00
Heyang Zhou
bfc3b8292c
Apply suggestions from code review
Co-Authored-By: nlewycky <nick@wasmer.io>
2020-03-18 00:58:50 +08:00
losfair
8e92e3208a Disable canonicalization for aarch64. 2020-03-18 00:47:52 +08:00
losfair
5e40be48a1 Merge remote-tracking branch 'origin/master' into feature/singlepass-nan-cncl 2020-03-18 00:43:52 +08:00
losfair
72bc9f6531 Add call canonicalization tests. 2020-03-18 00:42:19 +08:00
losfair
1d9f0c53e1 Style fixes and fix missing canonicalization at function call. 2020-03-18 00:42:10 +08:00
Heyang Zhou
5331a1c2e4
Merge branch 'master' into fix/dynamicfunc-panic 2020-03-17 19:02:20 +08:00
losfair
1ddf3a1c4e Add mem/local NaN tests. 2020-03-17 14:13:31 +08:00
losfair
e0538d32fa Remove clif spectest excludes. 2020-03-17 13:52:42 +08:00
losfair
4357c15046 Fix missing canonicalizations. 2020-03-17 13:52:11 +08:00
losfair
3ee7f43b1c Enable nan canonicalization for cranelift backend. 2020-03-17 13:09:22 +08:00
bors[bot]
c177c44aa2
Merge #1310
1310: upgrade the blake3 dependency to 0.2 r=MarkMcCaskey a=oconnor663

Version 0.2 makes assembly implementations available. They're off by default, and I haven't enabled them here, because they require the build machine to have a C toolchain installed. But if that's already a requirement for Wasmer, we could enable them with the `"c"` feature, for both better runtime performance and faster build times.

Co-authored-by: Jack O'Connor <oconnor663@gmail.com>
2020-03-16 21:49:54 +00:00
bors[bot]
de0578441b
Merge #1307
1307: Add FreeBSD specific failure excludes. r=MarkMcCaskey a=MikaelUrankar

These tests doesn't pass on FreeBSD amd64

Co-authored-by: MikaelUrankar <mikael.urankar@gmail.com>
Co-authored-by: Mark McCaskey <5770194+MarkMcCaskey@users.noreply.github.com>
2020-03-16 21:20:33 +00:00
Jack O'Connor
1cbafeb315 upgrade blake3 to version 0.2 2020-03-16 17:12:26 -04:00
Mark McCaskey
382e244f18
Merge branch 'master' into freebsd 2020-03-16 12:53:10 -07:00
Mark McCaskey
fac27c749b
Merge branch 'master' into feature/improved-wasitests 2020-03-16 12:46:24 -07:00
Mark McCaskey
228c5baa53
Fix typo in wasitest build.rs
Co-Authored-By: Syrus Akbary <me@syrusakbary.com>
2020-03-16 12:37:23 -07:00
Nick Lewycky
29b5223b3e Canonicalize NANs produced by f.trunc and f.nearby. 2020-03-16 11:36:17 -07:00
losfair
da07ed5011 Add clif/llvm NaN spectest failure excludes. 2020-03-16 23:40:28 +08:00
losfair
5d26d92d9b Add switch to turn on/off NaN canonicalization. 2020-03-16 23:40:02 +08:00
losfair
0f663887ad Handle panics from DynamicFunc. 2020-03-16 22:49:37 +08:00
losfair
8ea7bfd563 NaN canonicalization by tracking values. 2020-03-16 00:43:19 +08:00
Syrus
5e2488c1ea Fixed lint 2020-03-14 15:38:16 -07:00
Mark McCaskey
6a5efcda98 Update wasi-tests to test multiple versions of WASI
This change also cleans up the `wasi-test` generation a bit.  It's
actually still really, really messy, but at least now it's split up
into easier to understand chunks.

There's still a lot of low-hanging fruit in terms of improving the
readibilty and maintainability of the code.
2020-03-13 15:41:50 -07:00
Syrus Akbary
c01afac783
Merge pull request #1298 from Hywan/doc-interface-types
doc(interface-types) Update the state of supported instructions
2020-03-12 09:00:53 -07:00
Ivan Enderlin
03910a51fb Merge branch 'master' into feat-interface-types-better-error 2020-03-12 14:52:15 +01:00
Ivan Enderlin
b78a6f47ab chore(interface-types) Simplify code. 2020-03-12 14:51:18 +01:00
Ivan Enderlin
f46099c67b feat(interface-types) Implement Error on errors. 2020-03-12 14:49:43 +01:00
Ivan Enderlin
64729aa8f4 feat(interface-types) Use include ranges to read the memory. 2020-03-12 14:39:15 +01:00
Ivan Enderlin
20085e84a6 doc(interface-types) Update the state of supported instructions. 2020-03-12 13:57:57 +01:00
Syrus Akbary
7617350851
Merge branch 'master' into fix/fpcc-workaround 2020-03-11 21:51:31 -07:00
bors[bot]
7b97b8abb7
Merge #1289
1289: Enable `DynamicFunc` for closures with captured environment. r=syrusakbary a=losfair

Previously we disabled `DynamicFunc` for any non-zero-sized closures to leave space for future changes. However this feature is critical for applications that needs to bring context with host functions, like integrations with dynamic lauguages. So it might be good to enable it.

A question left is: should we put this behind a feature flag or enable it by default?

@Hywan @syrusakbary 

Co-authored-by: losfair <zhy20000919@hotmail.com>
2020-03-12 04:25:34 +00:00
Mark McCaskey
fffdba395d Prepare for 0.16.2 release 2020-03-11 19:15:31 -07:00
Mark McCaskey
c3865c919c Allow zero length arrays and check base offset for being out of bounds 2020-03-11 19:10:15 -07:00