]> git.lizzy.rs Git - rust.git/commitdiff
Auto merge of #53173 - alexcrichton:win-arm64, r=sfackler
authorbors <bors@rust-lang.org>
Thu, 16 Aug 2018 11:18:12 +0000 (11:18 +0000)
committerbors <bors@rust-lang.org>
Thu, 16 Aug 2018 11:18:12 +0000 (11:18 +0000)
Start adding an `aarch64-pc-windows-msvc` target

This commit adds the necessary definitions for target specs and such as well as
the necessary support in libstd to compile basic `aarch64-pc-windows-msvc`
binaries. The target is not currently built on CI, but it can be built locally
with:

    ./configure --target=aarch64-pc-windows-msvc --set rust.lld
    ./x.py build src/libstd --target aarch64-pc-windows-msvc

Currently this fails to build `libtest` due to a linker bug (seemingly in LLD?)
which hasn't been investigate yet. Otherwise though with libstd you can build a
hello world program (linked with LLD). I've not tried to execute it yet, but it
at least links!

Full support for this target is still a long road ahead, but this is hopefully a
good stepping stone to get started.

Points of note about this target are:

* Currently defaults to `panic=abort` as support is still landing in LLVM for
  SEH on AArch64.
* Currently defaults to LLD as a linker as I was able to get farther with it
  than I was with `link.exe`


Trivial merge