rustc_target/spec/targets/
aarch64_unknown_hyperlight.rs1use crate::spec::{Arch, SanitizerSet, Target, TargetMetadata, TargetOptions, base};
4
5pub(crate) fn target() -> Target {
6 let opts = TargetOptions {
7 features: "+v8.1a,+strict-align,+neon,+fp-armv8".into(),
8 direct_access_external_data: Some(true),
9
10 supported_sanitizers: SanitizerSet::KCFI
11 | SanitizerSet::KERNELADDRESS
12 | SanitizerSet::KERNELHWADDRESS,
13 max_atomic_width: Some(128),
14 default_uwtable: true,
15 supports_xray: true,
16 ..base::hyperlight::opts()
17 };
18 Target {
19 llvm_target: "aarch64-unknown-none".into(),
20 metadata: TargetMetadata {
21 description: Some("ARM64 Hyperlight guest".into()),
22 tier: Some(3),
23 host_tools: Some(false),
24 std: Some(false),
25 },
26 pointer_width: 64,
27 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(),
28 arch: Arch::AArch64,
29 options: opts,
30 }
31}