Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Initial work to build for Windows ARM64 #4990

Merged
merged 5 commits into from
Oct 3, 2022
Merged

Initial work to build for Windows ARM64 #4990

merged 5 commits into from
Oct 3, 2022

Conversation

Berrysoft
Copy link
Contributor

@Berrysoft Berrysoft commented Oct 1, 2022

This is a PR to build wasmtime to Windows ARM64. According to @kpreisser on #4435 , it should work without traps.

Fixes #4435

Check list

  • This has been discussed in issue Failed to build for aarch64-pc-windows-msvc #4435
  • A short description of what this does, why it is needed; if the
    description becomes long, the matter should probably be discussed in an issue
    first.
  • This PR contains test cases, if meaningful.
  • A reviewer from the core maintainer team has been assigned for this PR.
    If you don't know who could review this, please indicate so. The list of
    suggested reviewers on the right can help you.

Copy link
Member

@cfallin cfallin left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks, LGTM with a comment added as noted below!

For anyone seeing this, a note: we've found that Wasmtime doesn't yet handle Wasm traps properly on Windows/aarch64, which is why we aren't adding full builds here. If anyone is interested in working on this, I'm happy to point out the right areas at least, and review a PR. If/when that issue is resolved, if the Wasm testsuite passes, then this platform can graduate to tier 3 with build artifacts.

@@ -183,6 +183,18 @@ jobs:
- run: cargo check --target wasm32-unknown-emscripten -p wasi-common
- run: cargo check --target armv7-unknown-linux-gnueabihf -p wasi-common

# Check whether `wasmtime` cross-compiles to aarch64-pc-windows-msvc
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Can we add a note here, with a link to the open issue, noting that Wasmtime is known to have issues on this platform (trap handling) and this is why it doesn't have a build with artifacts?

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

OK. I've opened a new issue to track the trap handling on Windows ARM64, and added the link.

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks!

@cfallin cfallin merged commit 6bcc430 into bytecodealliance:main Oct 3, 2022
@Berrysoft Berrysoft deleted the dev/winarm64 branch October 3, 2022 03:12
alexcrichton added a commit to alexcrichton/wasmtime that referenced this pull request Oct 3, 2022
Minor thing I noticed from bytecodealliance#4990 but I stylistically prefer to keep the
`mod foo;` definitions canonicalized to one location to emphasize how
multiple targets can use the same definition.
alexcrichton added a commit that referenced this pull request Oct 3, 2022
Minor thing I noticed from #4990 but I stylistically prefer to keep the
`mod foo;` definitions canonicalized to one location to emphasize how
multiple targets can use the same definition.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Failed to build for aarch64-pc-windows-msvc
2 participants