]> git.proxmox.com Git - rustc.git/blob - compiler/rustc_target/src/spec/targets/i386_apple_ios.rs
New upstream version 1.75.0+dfsg1
[rustc.git] / compiler / rustc_target / src / spec / targets / i386_apple_ios.rs
1 use crate::spec::base::apple::{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 }