]> git.lizzy.rs Git - rust.git/blob - compiler/rustc_target/src/spec/armebv7r_none_eabi.rs
Rollup merge of #104464 - mati865:reduce-eh-overallocation-amd64, r=thomcc
[rust.git] / compiler / rustc_target / src / spec / armebv7r_none_eabi.rs
1 // Targets the Big endian Cortex-R4/R5 processor (ARMv7-R)
2
3 use crate::abi::Endian;
4 use crate::spec::{Cc, LinkerFlavor, Lld, PanicStrategy, RelocModel, Target, TargetOptions};
5
6 pub fn target() -> Target {
7     Target {
8         llvm_target: "armebv7r-unknown-none-eabi".into(),
9         pointer_width: 32,
10         data_layout: "E-m:e-p:32:32-Fi8-i64:64-v128:64:128-a:0:32-n32-S64".into(),
11         arch: "arm".into(),
12         options: TargetOptions {
13             abi: "eabi".into(),
14             endian: Endian::Big,
15             linker_flavor: LinkerFlavor::Gnu(Cc::No, Lld::Yes),
16             linker: Some("rust-lld".into()),
17             relocation_model: RelocModel::Static,
18             panic_strategy: PanicStrategy::Abort,
19             max_atomic_width: Some(32),
20             emit_debug_gdb_scripts: false,
21             // GCC and Clang default to 8 for arm-none here
22             c_enum_min_bits: 8,
23             ..Default::default()
24         },
25     }
26 }