rustc_target/spec/targets/
aarch64_unknown_linux_ohos.rs
1use crate::spec::{SanitizerSet, StackProbeType, Target, TargetOptions, base};
2
3pub(crate) fn target() -> Target {
4 let mut base = base::linux_ohos::opts();
5 base.max_atomic_width = Some(128);
6
7 Target {
8 llvm_target: "aarch64-unknown-linux-ohos".into(),
9 metadata: crate::spec::TargetMetadata {
10 description: Some("ARM64 OpenHarmony".into()),
11 tier: Some(2),
12 host_tools: Some(false),
13 std: Some(true),
14 },
15 pointer_width: 64,
16 data_layout: "e-m:e-p270:32:32-p271:32:32-p272:64:64-i8:8:32-i16:16:32-i64:64-i128:128-n32:64-S128-Fn32".into(),
17 arch: "aarch64".into(),
18 options: TargetOptions {
19 mcount: "\u{1}_mcount".into(),
20 stack_probes: StackProbeType::Inline,
21 supported_sanitizers: SanitizerSet::ADDRESS
22 | SanitizerSet::CFI
23 | SanitizerSet::LEAK
24 | SanitizerSet::MEMORY
25 | SanitizerSet::MEMTAG
26 | SanitizerSet::THREAD
27 | SanitizerSet::HWADDRESS,
28 ..base
29 },
30 }
31}