rustc_target/spec/targets/
sparc64_unknown_netbsd.rs

1use rustc_abi::Endian;
2
3use crate::spec::{Cc, LinkerFlavor, Lld, Target, TargetOptions, base};
4
5pub(crate) fn target() -> Target {
6    let mut base = base::netbsd::opts();
7    base.cpu = "v9".into();
8    base.add_pre_link_args(LinkerFlavor::Gnu(Cc::Yes, Lld::No), &["-m64"]);
9    base.max_atomic_width = Some(64);
10
11    Target {
12        llvm_target: "sparc64-unknown-netbsd".into(),
13        metadata: crate::spec::TargetMetadata {
14            description: Some("NetBSD/sparc64".into()),
15            tier: Some(3),
16            host_tools: Some(true),
17            std: Some(true),
18        },
19        pointer_width: 64,
20        data_layout: "E-m:e-i64:64-i128:128-n32:64-S128".into(),
21        arch: "sparc64".into(),
22        options: TargetOptions { endian: Endian::Big, mcount: "__mcount".into(), ..base },
23    }
24}