]> git.lizzy.rs Git - rust.git/blob - compiler/rustc_target/src/spec/sparcv9_sun_solaris.rs
Rollup merge of #79849 - Digital-Chaos:sleep-zero, r=m-ou-se
[rust.git] / compiler / rustc_target / src / spec / sparcv9_sun_solaris.rs
1 use crate::abi::Endian;
2 use crate::spec::{LinkerFlavor, Target};
3
4 pub fn target() -> Target {
5     let mut base = super::solaris_base::opts();
6     base.endian = Endian::Big;
7     base.pre_link_args.insert(LinkerFlavor::Gcc, vec!["-m64".to_string()]);
8     // llvm calls this "v9"
9     base.cpu = "v9".to_string();
10     base.max_atomic_width = Some(64);
11
12     Target {
13         llvm_target: "sparcv9-sun-solaris".to_string(),
14         pointer_width: 64,
15         data_layout: "E-m:e-i64:64-n32:64-S128".to_string(),
16         // Use "sparc64" instead of "sparcv9" here, since the former is already
17         // used widely in the source base.  If we ever needed ABI
18         // differentiation from the sparc64, we could, but that would probably
19         // just be confusing.
20         arch: "sparc64".to_string(),
21         options: base,
22     }
23 }