]> git.lizzy.rs Git - rust.git/blob - compiler/rustc_target/src/spec/powerpc_unknown_freebsd.rs
Auto merge of #104679 - dvdhrm:rw/dso, r=petrochenkov
[rust.git] / compiler / rustc_target / src / spec / powerpc_unknown_freebsd.rs
1 use crate::abi::Endian;
2 use crate::spec::{Cc, LinkerFlavor, Lld, StackProbeType, Target, TargetOptions};
3
4 pub fn target() -> Target {
5     let mut base = super::freebsd_base::opts();
6     // Extra hint to linker that we are generating secure-PLT code.
7     base.add_pre_link_args(
8         LinkerFlavor::Gnu(Cc::Yes, Lld::No),
9         &["-m32", "--target=powerpc-unknown-freebsd13.0"],
10     );
11     base.max_atomic_width = Some(32);
12     base.stack_probes = StackProbeType::Inline;
13
14     Target {
15         llvm_target: "powerpc-unknown-freebsd13.0".into(),
16         pointer_width: 32,
17         data_layout: "E-m:e-p:32:32-i64:64-n32".into(),
18         arch: "powerpc".into(),
19         options: TargetOptions {
20             endian: Endian::Big,
21             features: "+secure-plt".into(),
22             mcount: "_mcount".into(),
23             ..base
24         },
25     }
26 }