]> git.lizzy.rs Git - rust.git/blob - compiler/rustc_target/src/spec/aarch64_apple_ios_macabi.rs
Rollup merge of #86685 - RalfJung:alloc-mut, r=oli-obk
[rust.git] / compiler / rustc_target / src / spec / aarch64_apple_ios_macabi.rs
1 use super::apple_sdk_base::{opts, Arch};
2 use crate::spec::{FramePointer, Target, TargetOptions};
3
4 pub fn target() -> Target {
5     let base = opts("ios", Arch::Arm64_macabi);
6     Target {
7         llvm_target: "arm64-apple-ios14.0-macabi".to_string(),
8         pointer_width: 64,
9         data_layout: "e-m:o-i64:64-i128:128-n32:64-S128".to_string(),
10         arch: "aarch64".to_string(),
11         options: TargetOptions {
12             features: "+neon,+fp-armv8,+apple-a12".to_string(),
13             max_atomic_width: Some(128),
14             unsupported_abis: super::arm_base::unsupported_abis(),
15             forces_embed_bitcode: true,
16             frame_pointer: FramePointer::NonLeaf,
17             // Taken from a clang build on Xcode 11.4.1.
18             // These arguments are not actually invoked - they just have
19             // to look right to pass App Store validation.
20             bitcode_llvm_cmdline: "-triple\0\
21                 arm64-apple-ios14.0-macabi\0\
22                 -emit-obj\0\
23                 -disable-llvm-passes\0\
24                 -Os\0"
25                 .to_string(),
26             ..base
27         },
28     }
29 }