]>
Commit | Line | Data |
---|---|---|
94222f64 XL |
1 | // This defines the aarch64 target for UEFI systems as described in the UEFI specification. See the |
2 | // uefi-base module for generic UEFI options. | |
3 | ||
4 | use super::uefi_msvc_base; | |
2b03887a | 5 | use crate::spec::{LinkerFlavor, Lld, Target}; |
94222f64 XL |
6 | |
7 | pub fn target() -> Target { | |
8 | let mut base = uefi_msvc_base::opts(); | |
9 | ||
f2b60f7d | 10 | base.max_atomic_width = Some(128); |
2b03887a | 11 | base.add_pre_link_args(LinkerFlavor::Msvc(Lld::No), &["/machine:arm64"]); |
94222f64 XL |
12 | |
13 | Target { | |
5e7ed085 | 14 | llvm_target: "aarch64-unknown-windows".into(), |
94222f64 | 15 | pointer_width: 64, |
5e7ed085 FG |
16 | data_layout: "e-m:w-p:64:64-i32:32-i64:64-i128:128-n32:64-S128".into(), |
17 | arch: "aarch64".into(), | |
94222f64 XL |
18 | options: base, |
19 | } | |
20 | } |