]> git.proxmox.com Git - rustc.git/blame - compiler/rustc_target/src/spec/aarch64_apple_ios_macabi.rs
New upstream version 1.69.0+dfsg1
[rustc.git] / compiler / rustc_target / src / spec / aarch64_apple_ios_macabi.rs
CommitLineData
487cf647 1use super::apple_base::{opts, Arch};
2b03887a 2use crate::spec::{Cc, FramePointer, LinkerFlavor, Lld, Target, TargetOptions};
fc512014
XL
3
4pub fn target() -> Target {
9ffffee4 5 let llvm_target = "arm64-apple-ios-macabi";
064997fb 6
487cf647
FG
7 let arch = Arch::Arm64_macabi;
8 let mut base = opts("ios", arch);
2b03887a 9 base.add_pre_link_args(LinkerFlavor::Darwin(Cc::Yes, Lld::No), &["-target", llvm_target]);
064997fb 10
fc512014 11 Target {
064997fb 12 llvm_target: llvm_target.into(),
fc512014 13 pointer_width: 64,
5e7ed085 14 data_layout: "e-m:o-i64:64-i128:128-n32:64-S128".into(),
487cf647 15 arch: arch.target_arch(),
fc512014 16 options: TargetOptions {
5e7ed085 17 features: "+neon,+fp-armv8,+apple-a12".into(),
fc512014 18 max_atomic_width: Some(128),
fc512014 19 forces_embed_bitcode: true,
136023e0 20 frame_pointer: FramePointer::NonLeaf,
fc512014
XL
21 // Taken from a clang build on Xcode 11.4.1.
22 // These arguments are not actually invoked - they just have
23 // to look right to pass App Store validation.
24 bitcode_llvm_cmdline: "-triple\0\
9ffffee4 25 arm64-apple-ios-macabi\0\
fc512014
XL
26 -emit-obj\0\
27 -disable-llvm-passes\0\
fc512014 28 -Os\0"
5e7ed085 29 .into(),
064997fb 30 ..base
fc512014
XL
31 },
32 }
33}