rustc_target/spec/targets/
xtensa_esp32s2_none_elf.rs

1use crate::spec::base::xtensa;
2use crate::spec::{Target, TargetMetadata, TargetOptions};
3
4pub(crate) fn target() -> Target {
5    Target {
6        llvm_target: "xtensa-none-elf".into(),
7        pointer_width: 32,
8        data_layout: "e-m:e-p:32:32-v1:8:8-i64:64-i128:128-n32".into(),
9        arch: "xtensa".into(),
10        metadata: TargetMetadata {
11            description: Some("Xtensa ESP32-S2".into()),
12            tier: Some(3),
13            host_tools: Some(false),
14            std: Some(false),
15        },
16
17        options: TargetOptions {
18            vendor: "espressif".into(),
19            cpu: "esp32s2".into(),
20            linker: Some("xtensa-esp32s2-elf-gcc".into()),
21            max_atomic_width: Some(32),
22            features: "+forced-atomics".into(),
23            ..xtensa::opts()
24        },
25    }
26}