]> git.lizzy.rs Git - rust.git/blob - compiler/rustc_target/src/spec/i386_apple_ios.rs
Auto merge of #2680 - RalfJung:rustup, r=RalfJung
[rust.git] / compiler / rustc_target / src / spec / i386_apple_ios.rs
1 use super::apple_base::{ios_sim_llvm_target, opts, Arch};
2 use crate::spec::{StackProbeType, Target, TargetOptions};
3
4 pub fn target() -> Target {
5     let arch = Arch::I386;
6     Target {
7         // Clang automatically chooses a more specific target based on
8         // IPHONEOS_DEPLOYMENT_TARGET.
9         // This is required for the target to pick the right
10         // MACH-O commands, so we do too.
11         llvm_target: ios_sim_llvm_target(arch).into(),
12         pointer_width: 32,
13         data_layout: "e-m:o-p:32:32-p270:32:32-p271:32:32-p272:64:64-\
14             f64:32:64-f80:128-n8:16:32-S128"
15             .into(),
16         arch: arch.target_arch(),
17         options: TargetOptions {
18             max_atomic_width: Some(64),
19             stack_probes: StackProbeType::X86,
20             ..opts("ios", arch)
21         },
22     }
23 }