4474 Commits

Author SHA1 Message Date
Syrus Akbary
d408831ed6
Merge pull request #1103 from wasmerio/dependabot/cargo/parking_lot-0.10.0
Bump parking_lot from 0.9.0 to 0.10.0
2019-12-30 11:30:11 +01:00
dependabot-preview[bot]
1e6149ed94
Bump parking_lot from 0.9.0 to 0.10.0
Bumps [parking_lot](https://github.com/Amanieu/parking_lot) from 0.9.0 to 0.10.0.
- [Release notes](https://github.com/Amanieu/parking_lot/releases)
- [Changelog](https://github.com/Amanieu/parking_lot/blob/master/CHANGELOG.md)
- [Commits](https://github.com/Amanieu/parking_lot/compare/0.9.0...0.10.0)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2019-12-23 07:38:11 +00:00
bors[bot]
afc3363e35
Merge #1101
1101: Add MIT license to crates that were missing it r=syrusakbary a=repi

Ran into a few crates in this repo with our license scanner that didn't have any license attached to them.

Added MIT to be consistent with the other crates. Please adjust if not correct.

Co-authored-by: Johan Andersson <repi@repi.se>
2019-12-22 16:14:42 +00:00
Johan Andersson
81f879565d Add MIT license to crates that were missing it
Ran into a few crates in this repo with our license scanner that didn't have any license attached to them.

Added MIT to be consistent with the other crates. Please adjust if not correct.
2019-12-22 12:28:33 +01:00
bors[bot]
f2f1a08e07
Merge #1100
1100: Fix unused import warning, deny more warnings. r=syrusakbary a=nlewycky



Co-authored-by: Nick Lewycky <nick@wasmer.io>
2019-12-22 03:19:41 +00:00
Nick Lewycky
1cffb90fea Fix unused import warning, deny more warnings. 2019-12-21 14:35:43 -08:00
bors[bot]
7390372eb6
Merge #1097
1097: Move inline breakpoint outside of runtime backend r=syrusakbary a=syrusakbary


<!-- 
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
There was some code smell leaking inline breakpoint implementation into the runtime core backend instead of the compiler itself. This PR fixes it.

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

# Review

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


Co-authored-by: Syrus <me@syrusakbary.com>
2019-12-21 05:13:50 +00:00
Syrus
ad82beffb4 Fixed tests 2019-12-20 21:11:55 -08:00
Syrus
a7764a6fd6 Simplified code 2019-12-20 20:49:32 -08:00
Syrus
7efda4da66 Added changes to changelog 2019-12-20 20:47:39 -08:00
Syrus
24a9814ba6 Remove unused imports 2019-12-20 20:47:03 -08:00
Syrus
afcd1d5b68 Fixed wasmer calls 2019-12-20 20:46:04 -08:00
Syrus
1a960a01ae Improved lint 2019-12-20 20:45:10 -08:00
Syrus
c4d70a6b75 Use Arc instead of Rc 2019-12-20 20:37:47 -08:00
Syrus
097353d0d4 Fix lint 2019-12-20 19:20:32 -08:00
Syrus
0f45bd4f0d Fixed tiering docs 2019-12-20 19:12:35 -08:00
Syrus
c143bc8fc8 Revert emscripten changes 2019-12-20 19:09:07 -08:00
Syrus
2404203ae4 Improved based on feedback 2019-12-20 19:03:49 -08:00
Syrus
527d7072b3 Remove unsafe transmute copy 2019-12-20 18:52:30 -08:00
Syrus
294cc28135 Move inline breakpoint outside of runtime backend
There was some code smell leaking inline breakpoint implementation into the runtime core backend instead of the compiler itself
2019-12-20 18:26:56 -08:00
bors[bot]
0419df937e
Merge #1095
1095: Update to cranelift 0.52 r=nlewycky a=nlewycky

# Description
Update to cranelift 0.52.

To use our wasmer branch of cranelift, we point to its path on git. Per @syrusakbary , we don't want to push updated wasmer-clif crates until we're ready to release the matching wasmer that will use them.

# Review

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


Co-authored-by: Nick Lewycky <nick@wasmer.io>
Co-authored-by: Mark McCaskey <mark@wasmer.io>
2019-12-21 01:45:45 +00:00
Nick Lewycky
a0739b6355 Add changelog entry. 2019-12-20 17:16:54 -08:00
Nick Lewycky
c8e79178ee Update to cranelift 0.52 (wasmer branch) 2019-12-20 17:16:54 -08:00
Mark McCaskey
fe969be612 Update wasmparser to version 0.45.0 2019-12-20 17:16:54 -08:00
Mark McCaskey
8cddea341b Update to 0.45.0 wasmparser Operator names in llvm-backend 2019-12-20 17:16:54 -08:00
Mark McCaskey
adecb36d15 Update to 0.45.0 wasmparser Operator names in singlepass-backend 2019-12-20 17:15:38 -08:00
Nick Lewycky
c2f287e65b Update to cranelift 0.51. 2019-12-20 17:10:36 -08:00
bors[bot]
d5d82e2508
Merge #1096
1096: Add TBAA labels to initialization (default and copy) of locals. r=nlewycky a=nlewycky



Co-authored-by: Nick Lewycky <nick@wasmer.io>
2019-12-21 01:06:23 +00:00
Nick Lewycky
cca73c0a6f Add TBAA labels to initialization (default and copy) of locals. 2019-12-20 17:02:58 -08:00
bors[bot]
4018494f6e
Merge #1071
1071: Add support for non-trapping float-to-int conversions. r=nlewycky a=nlewycky

# Description
Rewrites LLVM implementation of non-trapping float-to-int conversions. LLVM's conversion operations produce unspecified output when the input floats are out of range for the conversion.

Add implementation to singlepass for both x86-64 and AArch64.

# Review

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


Co-authored-by: Nick Lewycky <nick@wasmer.io>
2019-12-21 00:23:31 +00:00
Nick Lewycky
bba0129150 Remove comments with register names that might not be right and don't really matter. 2019-12-20 16:20:58 -08:00
Nick Lewycky
e738a9f2b5 Name the magic constants in the singlepass backend. 2019-12-20 16:20:58 -08:00
Nick Lewycky
f00283ab03 Name the magic constants in the LLVM backend. 2019-12-20 16:20:58 -08:00
Nick Lewycky
56fd66403c Update changelog again, to move entry to new unreleased section since there's been a release. 2019-12-20 16:20:58 -08:00
Nick Lewycky
f8d792cf04 Add changelog entry. 2019-12-20 16:20:58 -08:00
Nick Lewycky
b7929e6561 Add support for non-trapping float to int conversions in singlepass+AArch64. 2019-12-20 16:20:58 -08:00
Nick Lewycky
32ed6f2c10 Enable non-trapping float to int conversions by default. 2019-12-20 16:20:58 -08:00
Nick Lewycky
d52c193e84 Finish implementation of trunc_sat in singlepass x86-64. 2019-12-20 16:20:58 -08:00
Nick Lewycky
442c40f5f1 Initial implementatio of trunc-sat instructions in singlepass. 27 test failures. 2019-12-20 16:20:58 -08:00
Nick Lewycky
6fe2f434c6 Add tests for non-trapping float to int conversions.
This breaks all of conversions.wast on singlepass. LLVM and Cranelift pass.
2019-12-20 16:20:58 -08:00
Nick Lewycky
0cfe08fff3 Correct implementation of non-trapping float to int conversions in the llvm backend. 2019-12-20 16:20:58 -08:00
Nick Lewycky
5b35313099 Use type traits to ensure that the float and int types match in trunc_sat. 2019-12-20 16:20:58 -08:00
bors[bot]
fa29a1b9f2
Merge #1092
1092: Add function to get nul-terminated strings from memory r=MarkMcCaskey a=srenatus

## Description

This is meant to fix #1086.

 I'm a bit new to this -- is this how you'd do it? Happy to take directions! 😃 

I've added a note regarding the special case in the comment.

Are there existing tests to expand?

## Review

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


Co-authored-by: Stephan Renatus <srenatus@chef.io>
2019-12-20 21:08:01 +00:00
Stephan Renatus
782be5b51a Add function to get nul-terminated strings from memory
Fixes #1086.

Signed-off-by: Stephan Renatus <srenatus@chef.io>
2019-12-20 21:53:08 +01:00
Syrus Akbary
957bfd6add
Merge pull request #1093 from wasmerio/fix/update-page-size
Update page_size crate
2019-12-20 09:33:53 -08:00
bors[bot]
6672bc1f7a
Merge #1026
1026: Bump smallvec from 0.6.13 to 1.0.0 r=MarkMcCaskey a=dependabot-preview[bot]

Bumps [smallvec](https://github.com/servo/rust-smallvec) from 0.6.13 to 1.0.0.
<details>
<summary>Release notes</summary>

*Sourced from [smallvec's releases](https://github.com/servo/rust-smallvec/releases).*

> ## v1.0.0
>  * Requires Rust 1.36 or later.
>  * [breaking change] Use `MaybeUninit` to avoid possible undefined behavior ([#162](https://github-redirect.dependabot.com/servo/rust-smallvec/issues/162), [#170](https://github-redirect.dependabot.com/servo/rust-smallvec/issues/170)).
>  * [breaking change] The `drain` method now takes a range argument, just like the standard `Vec::drain` ([#145](https://github-redirect.dependabot.com/servo/rust-smallvec/issues/145)).
>  * [breaking change] Remove the `unreachable` function and replace it with the new standard `unreachable_unchecked` function ([#164](https://github-redirect.dependabot.com/servo/rust-smallvec/issues/164)).
>  * [breaking change] Use `no_std` by default. This crate depends only on `core` and `alloc` by default. If the optional `write` feature is enabled then it depends on `std` so that `SmallVec<[u8;_]>` can implement the `std::io::Write` trait ([#173](https://github-redirect.dependabot.com/servo/rust-smallvec/issues/173)).
>  * [breaking change] Remove the deprecated `VecLike` trait ([#165](https://github-redirect.dependabot.com/servo/rust-smallvec/issues/165)).
>  * Add support for 96-element small vectors, `SmallVec<[T; 96]>` ([#163](https://github-redirect.dependabot.com/servo/rust-smallvec/issues/163)).
>  * Iterators now implement `FusedIterator` ([#172](https://github-redirect.dependabot.com/servo/rust-smallvec/issues/172)).
>  * Indexing now uses the standard `SliceIndex` trait ([#166](https://github-redirect.dependabot.com/servo/rust-smallvec/issues/166)).
>  * Add automatic fuzz testing and MIRI testing ([#168](https://github-redirect.dependabot.com/servo/rust-smallvec/issues/168), [#162](https://github-redirect.dependabot.com/servo/rust-smallvec/issues/162)).
>  * Update syntax and formatting to Rust 2018 standard ([#174](https://github-redirect.dependabot.com/servo/rust-smallvec/issues/174), [#167](https://github-redirect.dependabot.com/servo/rust-smallvec/issues/167)).
> 
</details>
<details>
<summary>Commits</summary>

- [`34c2628`](34c26282c4) Auto merge of [#175](https://github-redirect.dependabot.com/servo/rust-smallvec/issues/175) - mbrubeck:one, r=jdm
- [`523a6dc`](523a6dc919) Version 1.0.0
- [`a2c0504`](a2c0504511) Auto merge of [#174](https://github-redirect.dependabot.com/servo/rust-smallvec/issues/174) - mbrubeck:2018, r=jdm
- [`a51059c`](a51059cd38) Update to Rust 2018 edition
- [`01917a6`](01917a6b1c) Auto merge of [#168](https://github-redirect.dependabot.com/servo/rust-smallvec/issues/168) - dpc:fuzz, r=mbrubeck
- [`a3ba738`](a3ba738ce6) Add a fake stub input case for afl fuzzer
- [`85c54a5`](85c54a5689) Add simple fuzzing
- [`b2c9c65`](b2c9c65129) Auto merge of [#173](https://github-redirect.dependabot.com/servo/rust-smallvec/issues/173) - mbrubeck:std, r=emilio
- [`fffb185`](fffb185d4f) Use no_std by default
- [`af73fbd`](af73fbdc27) Auto merge of [#172](https://github-redirect.dependabot.com/servo/rust-smallvec/issues/172) - mbrubeck:fused, r=mbrubeck
- Additional commits viewable in [compare view](https://github.com/servo/rust-smallvec/compare/v0.6.13...v1.0.0)
</details>
<br />

[![Dependabot compatibility score](https://api.dependabot.com/badges/compatibility_score?dependency-name=smallvec&package-manager=cargo&previous-version=0.6.13&new-version=1.0.0)](https://dependabot.com/compatibility-score.html?dependency-name=smallvec&package-manager=cargo&previous-version=0.6.13&new-version=1.0.0)

Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`.

[//]: # (dependabot-automerge-start)
[//]: # (dependabot-automerge-end)

---

<details>
<summary>Dependabot commands and options</summary>
<br />

You can trigger Dependabot actions by commenting on this PR:
- `@dependabot rebase` will rebase this PR
- `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it
- `@dependabot merge` will merge this PR after your CI passes on it
- `@dependabot squash and merge` will squash and merge this PR after your CI passes on it
- `@dependabot cancel merge` will cancel a previously requested merge and block automerging
- `@dependabot reopen` will reopen this PR if it is closed
- `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
- `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
- `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
- `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
- `@dependabot use these labels` will set the current labels as the default for future PRs for this repo and language
- `@dependabot use these reviewers` will set the current reviewers as the default for future PRs for this repo and language
- `@dependabot use these assignees` will set the current assignees as the default for future PRs for this repo and language
- `@dependabot use this milestone` will set the current milestone as the default for future PRs for this repo and language
- `@dependabot badge me` will comment on this PR with code to add a "Dependabot enabled" badge to your readme

Additionally, you can set the following in your Dependabot [dashboard](https://app.dependabot.com):
- Update frequency (including time of day and day of week)
- Pull request limits (per update run and/or open at any time)
- Automerge options (never/patch/minor, and dev/runtime dependencies)
- Out-of-range updates (receive only lockfile updates, if desired)
- Security updates (receive only security updates, if desired)



</details>

Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>
2019-12-20 16:31:15 +00:00
Mark McCaskey
b12f346dad Update page_size crate 2019-12-20 10:57:43 -05:00
bors[bot]
572399dce8
Merge #1089
1089: Add misc doc link fixes and update old comment r=MarkMcCaskey a=MarkMcCaskey

I spent way too long trying to make things work, `#[doc(no_inline)]`, adding doc comments on top of things with doc comments, and linking in the context of inlining are way harder than they seem like they should be 🙀 

Co-authored-by: Mark McCaskey <mark@wasmer.io>
2019-12-19 23:50:07 +00:00
bors[bot]
823c699ef2
Merge #1090
1090: Fix plugin example, add examples to test recipe r=syrusakbary a=MarkMcCaskey

This was reported [on spectrum](https://spectrum.chat/wasmer/general/failure-running-plugin-sample-on-mac~58c72ff0-47cd-4158-8069-fb726d7bb5dd).  This PR fixes the issue and adds it to `test` so we test it in CI.

Co-authored-by: Mark McCaskey <mark@wasmer.io>
2019-12-19 23:10:25 +00:00
Mark McCaskey
ca52265a1c Fix plugin example, add examples to test recipe 2019-12-19 16:32:28 -05:00