]> git.lizzy.rs Git - rust.git/blob - src/librustc_target/spec/riscv32i_unknown_none_elf.rs
314778408f7e5d8513ad6d741e7e1268cdd0f747
[rust.git] / src / librustc_target / spec / riscv32i_unknown_none_elf.rs
1 use crate::spec::{LinkerFlavor, LldFlavor, PanicStrategy,
2            Target, TargetOptions, TargetResult};
3
4 pub fn target() -> TargetResult {
5     Ok(Target {
6         data_layout: "e-m:e-p:32:32-i64:64-n32-S128".to_string(),
7         llvm_target: "riscv32".to_string(),
8         target_endian: "little".to_string(),
9         target_pointer_width: "32".to_string(),
10         target_c_int_width: "32".to_string(),
11         target_os: "none".to_string(),
12         target_env: String::new(),
13         target_vendor: "unknown".to_string(),
14         arch: "riscv32".to_string(),
15         linker_flavor: LinkerFlavor::Lld(LldFlavor::Ld),
16
17         options: TargetOptions {
18             linker: Some("rust-lld".to_string()),
19             cpu: "generic-rv32".to_string(),
20             max_atomic_width: None,
21             atomic_cas: false,
22             features: String::new(),
23             executables: true,
24             panic_strategy: PanicStrategy::Abort,
25             relocation_model: "static".to_string(),
26             emit_debug_gdb_scripts: false,
27             abi_blacklist: super::riscv_base::abi_blacklist(),
28             eliminate_frame_pointer: false,
29             .. Default::default()
30         },
31     })
32 }