rustc_target/spec/targets/
aarch64_unknown_l4re_uclibc.rs1use crate::spec::{Arch, Cc, LinkerFlavor, Target, TargetOptions, base};
2
3pub(crate) fn target() -> Target {
4 let mut base = base::l4re::opts();
5
6 let extra_link_args = &["-zmax-page-size=0x1000", "-zcommon-page-size=0x1000"];
7 base.add_pre_link_args(LinkerFlavor::Unix(Cc::Yes), extra_link_args);
8 base.add_pre_link_args(LinkerFlavor::Unix(Cc::No), extra_link_args);
9
10 Target {
11 llvm_target: "aarch64-unknown-l4re-uclibc".into(),
12 metadata: crate::spec::TargetMetadata {
13 description: Some("Arm64 L4Re".into()),
14 tier: Some(3),
15 host_tools: Some(false),
16 std: Some(true),
17 },
18 pointer_width: 64,
19 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(),
20 arch: Arch::AArch64,
21 options: TargetOptions {
22 features: "+v8a".into(),
23 mcount: "__mcount".into(),
24 max_atomic_width: Some(128),
25 ..base
26 }
27 }
28}