-
Notifications
You must be signed in to change notification settings - Fork 69
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
Promote arm64ec-pc-windows-msvc to tier 2 #746
Comments
This issue is not meant to be used for technical discussion. There is a Zulip stream for that. Use this issue to leave procedural comments, such as volunteering to review, indicating that you second the proposal (or third, etc), or raising a concern that you would like to be addressed. Concerns or objections to the proposal should be discussed on Zulip and formally registered here by adding a comment with the following syntax:
Concerns can be lifted with:
See documentation at https://forge.rust-lang.org cc @rust-lang/compiler @rust-lang/compiler-contributors |
@rustbot second |
@apiraino ping... |
@rustbot label -final-comment-period +major-change-accepted |
Promote `arm64ec-pc-windows-msvc` to tier 2 MCP: <rust-lang/compiler-team#746> * Update platform support docs * Add `arm64ec-pc-windows-msvc` as a target to the existing AArch64 Windows build in CI. * Fix docs build break. * Add `arm64ec-pc-windows-msvc` to build manifest. CI build (succeeded, but upload to S3 failed): <https://github.com/rust-lang/rust/actions/runs/9388227822/job/25853013083?pr=126039>
Rollup merge of rust-lang#126039 - dpaoliello:arm64ecbuild, r=davidtwco Promote `arm64ec-pc-windows-msvc` to tier 2 MCP: <rust-lang/compiler-team#746> * Update platform support docs * Add `arm64ec-pc-windows-msvc` as a target to the existing AArch64 Windows build in CI. * Fix docs build break. * Add `arm64ec-pc-windows-msvc` to build manifest. CI build (succeeded, but upload to S3 failed): <https://github.com/rust-lang/rust/actions/runs/9388227822/job/25853013083?pr=126039>
Promote `arm64ec-pc-windows-msvc` to tier 2 MCP: <rust-lang/compiler-team#746> * Update platform support docs * Add `arm64ec-pc-windows-msvc` as a target to the existing AArch64 Windows build in CI. * Fix docs build break. * Add `arm64ec-pc-windows-msvc` to build manifest. CI build (succeeded, but upload to S3 failed): <https://github.com/rust-lang/rust/actions/runs/9388227822/job/25853013083?pr=126039>
Proposal
Promote the
arm64ec-pc-windows-msvc
tier 3 target to tier 2Arm64EC is used both within Microsoft and by external developers as well - either to enable gradual migration of an x64 application to Arm64, or to allow an Arm64 application to load 3rd party x64 plug-ins/addons (e.g., Microsoft Office).
I will be the primary maintainer for this target, and Microsoft will be providing support as per the other *-msvc targets
Agreed.
The Arm64EC platform documentation for Rust already has guidance on how to think about the target and re-use other code: https://doc.rust-lang.org/nightly/rustc/platform-support/arm64ec-pc-windows-msvc.html#reusing-code-from-other-architectures---x86_64-or-aarch64
Microsoft has also provided general guidance for Arm64EC: https://learn.microsoft.com/en-us/windows/arm/arm64ec
All Arm64EC code is under
#[cfg(target_arch = "arm64ec")]
. As mentioned above, I have provided guidance on how to re-use existing architecture-specific code for Arm64EC (where possible).Documentation for using Arm64EC with Rust has already been provided, and Microsoft has documentation for setting up an Arm64EC build environment as well.
This is included in the Rust platform documentation linked above: Arm64EC requires Windows 11 on an Arm64 device.
Not applicable. We've already had a discussion on why Arm64EC being its own
target_arch
makes sense: rust-lang/stdarch#1550 (comment)This target supports the full standard library.
Arm64EC uses LLVM as its code generation backend.
Yes.
Yes.
Yes.
Cross compiling is supported on x64 Windows using the Windows 11 SDK 22000 (or later) with VS build tools 17.3+ - these requirements are met with Rust's existing Windows builders.
Licensing requirements for Arm64EC are the same as any other *-msvc target.
Yes.
Yes.
arm64ec-pc-windows-msvc
is already a tier 3 target.Mentors or Reviewers
@dpaoliello
Process
The main points of the Major Change Process are as follows:
@rustbot second
.-C flag
, then full team check-off is required.@rfcbot fcp merge
on either the MCP or the PR.You can read more about Major Change Proposals on forge.
Comments
This issue is not meant to be used for technical discussion. There is a Zulip stream for that. Use this issue to leave procedural comments, such as volunteering to review, indicating that you second the proposal (or third, etc), or raising a concern that you would like to be addressed.
The text was updated successfully, but these errors were encountered: