rustc_target/spec/targets/
arm64_32_apple_watchos.rs

1use crate::spec::base::apple::{Arch, TargetAbi, base};
2use crate::spec::{Target, TargetOptions};
3
4pub(crate) fn target() -> Target {
5    let (opts, llvm_target, arch) = base("watchos", Arch::Arm64_32, TargetAbi::Normal);
6    Target {
7        llvm_target,
8        metadata: crate::spec::TargetMetadata {
9            description: Some("ARM64 Apple watchOS with 32-bit pointers".into()),
10            tier: Some(3),
11            host_tools: Some(false),
12            std: Some(true),
13        },
14        pointer_width: 32,
15        data_layout:
16            "e-m:o-p:32:32-p270:32:32-p271:32:32-p272:64:64-i64:64-i128:128-n32:64-S128-Fn32".into(),
17        arch,
18        options: TargetOptions {
19            features: "+v8a,+neon,+fp-armv8,+apple-a7".into(),
20            max_atomic_width: Some(128),
21            dynamic_linking: false,
22            position_independent_executables: true,
23            ..opts
24        },
25    }
26}