-
Notifications
You must be signed in to change notification settings - Fork 463
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
Support native ARM64 MSVC toolchain #732
Conversation
This code will need formatting and the MSRV issues fixed. More importantly this will need some testing. Ideally we should also have Windows ARM running in CI. |
@Alovchin91 Are you interested in rebasing this and pushing it so we can see the CI run results again? |
@briansmith Sure, will be back at my laptop in a couple hours 👍 |
063cd1a
to
a2b22b2
Compare
@briansmith Done |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This looks reasonable to me, just one nit that I've commented on.
Also I accept that falling back to x86 is the reasonable solution given that's the current behaviour. However, I'd definitely be interested in a followup PR that just errors for newer versions of VS.
// There is no natively hosted compiler on ARM64. | ||
// Instead, use the x86 toolchain under emulation (there is no x64 emulation). | ||
AARCH64 => "X86", | ||
let hosts = match host_arch() { |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
If you annotate hosts
with a type (i.e. &[&str]
) you should be able to avoid creating Vec
s.
@Alovchin91 are you still working on this, or would you like me to take over? To answer your questions:
One interesting thing we may want to do: on Windows 11 we should prefer the x64 host architecture to x86 since it should be faster. |
Hi @dpaoliello, I don't currently actively work on it, so if you'd prefer to take it over, please go ahead |
Close as #957 supersedes this and is already merged |
In VS 17.3 a native ARM64 MSVC toolchain has appeared. Generally it should be chosen over the emulated one.
Open questions: