rustc_target/spec/targets/
avr_none.rs1use crate::spec::{Arch, Cc, LinkerFlavor, Lld, RelocModel, Target, TargetOptions};
2
3pub(crate) fn target() -> Target {
4 Target {
5 arch: Arch::Avr,
6 metadata: crate::spec::TargetMetadata {
7 description: None,
8 tier: Some(3),
9 host_tools: Some(false),
10 std: Some(false),
11 },
12 data_layout: "e-P1-p:16:8-i8:8-i16:8-i32:8-i64:8-f32:8-f64:8-n8:16-a:8".into(),
13 llvm_target: "avr-unknown-unknown".into(),
14 pointer_width: 16,
15 options: TargetOptions {
16 c_int_width: 16,
17 cpu: "avr2".into(),
18 exe_suffix: ".elf".into(),
19 linker: Some("avr-gcc".into()),
20 eh_frame_header: false,
21 pre_link_args: TargetOptions::link_args(LinkerFlavor::Gnu(Cc::Yes, Lld::No), &[]),
22 late_link_args: TargetOptions::link_args(
23 LinkerFlavor::Gnu(Cc::Yes, Lld::No),
24 &["-lgcc"],
25 ),
26 max_atomic_width: Some(16),
27 atomic_cas: false,
28 relocation_model: RelocModel::Static,
29 need_explicit_cpu: true,
30 requires_consistent_cpu: true,
32 ..TargetOptions::default()
33 },
34 }
35}