use super::apple_sdk_base::{opts, Arch}; use crate::spec::{StackProbeType, Target, TargetOptions}; pub fn target() -> Target { let base = opts("watchos", Arch::X86_64); let arch = "x86_64"; let llvm_target = super::apple_base::watchos_sim_llvm_target(arch); Target { llvm_target: llvm_target.into(), pointer_width: 64, data_layout: "e-m:o-p270:32:32-p271:32:32-p272:64:64-i64:64-f80:128-n8:16:32:64-S128" .into(), arch: "x86_64".into(), options: TargetOptions { max_atomic_width: Some(64), // don't use probe-stack=inline-asm until rust#83139 and rust#84667 are resolved stack_probes: StackProbeType::Call, forces_embed_bitcode: true, // Taken from a clang build on Xcode 11.4.1. // These arguments are not actually invoked - they just have // to look right to pass App Store validation. bitcode_llvm_cmdline: "-triple\0\ x86_64-apple-watchos5.0-simulator\0\ -emit-obj\0\ -disable-llvm-passes\0\ -target-abi\0\ darwinpcs\0\ -Os\0" .into(), ..base }, } }