mirror of
https://github.com/rust-lang/rust.git
synced 2024-11-25 16:24:46 +00:00
Auto merge of #122305 - Nilstrieb:target-tiers, r=davidtwco
Add metadata to targets follow up to #121905 and #122157 This adds four pieces of metadata to every target: - description - tier - host tools - std This information is currently scattered across target docs and both - not machine readable, making validation harder - sometimes subtly encoding by the table it's in, causing mistakes and making it harder to review changes to the properties By putting it in the compiler, we improve this. Later, we will use this canonical information to generate target documentation from it. I used find-replace for all the `description: None`. One thing I'm not sure about is the behavior for the JSON. It doesn't really make sense that custom targets supply this information, especially the tier. But for the roundtrip tests, we do need to print and parse it. Maybe emit a warning when a custom target provides the metadata key? Either way, I don't think that's important right now, this PR should get merged ASAP or it will conflict all over the place. r? davidtwco
This commit is contained in:
commit
d255c6a57c
@ -2,7 +2,9 @@ use std::borrow::Cow;
|
|||||||
use std::collections::BTreeMap;
|
use std::collections::BTreeMap;
|
||||||
|
|
||||||
pub use serde_json::Value as Json;
|
pub use serde_json::Value as Json;
|
||||||
use serde_json::{Map, Number};
|
use serde_json::{json, Map, Number};
|
||||||
|
|
||||||
|
use crate::spec::TargetMetadata;
|
||||||
|
|
||||||
pub trait ToJson {
|
pub trait ToJson {
|
||||||
fn to_json(&self) -> Json;
|
fn to_json(&self) -> Json;
|
||||||
@ -120,3 +122,14 @@ impl ToJson for crate::abi::call::Conv {
|
|||||||
Json::String(s.to_owned())
|
Json::String(s.to_owned())
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
impl ToJson for TargetMetadata {
|
||||||
|
fn to_json(&self) -> Json {
|
||||||
|
json!({
|
||||||
|
"description": self.description,
|
||||||
|
"tier": self.tier,
|
||||||
|
"host_tools": self.host_tools,
|
||||||
|
"std": self.std,
|
||||||
|
})
|
||||||
|
}
|
||||||
|
}
|
||||||
|
@ -8,7 +8,12 @@ use object::elf;
|
|||||||
pub fn target(target_cpu: &'static str, mmcu: &'static str) -> Target {
|
pub fn target(target_cpu: &'static str, mmcu: &'static str) -> Target {
|
||||||
Target {
|
Target {
|
||||||
arch: "avr".into(),
|
arch: "avr".into(),
|
||||||
|
metadata: crate::spec::TargetMetadata {
|
||||||
description: None,
|
description: None,
|
||||||
|
tier: None,
|
||||||
|
host_tools: None,
|
||||||
|
std: None,
|
||||||
|
},
|
||||||
data_layout: "e-P1-p:16:8-i8:8-i16:8-i32:8-i64:8-f32:8-f64:8-n8-a:8".into(),
|
data_layout: "e-P1-p:16:8-i8:8-i16:8-i32:8-i64:8-f32:8-f64:8-n8-a:8".into(),
|
||||||
llvm_target: "avr-unknown-unknown".into(),
|
llvm_target: "avr-unknown-unknown".into(),
|
||||||
pointer_width: 16,
|
pointer_width: 16,
|
||||||
|
@ -1743,11 +1743,9 @@ impl TargetWarnings {
|
|||||||
pub struct Target {
|
pub struct Target {
|
||||||
/// Target triple to pass to LLVM.
|
/// Target triple to pass to LLVM.
|
||||||
pub llvm_target: StaticCow<str>,
|
pub llvm_target: StaticCow<str>,
|
||||||
/// A short description of the target including platform requirements,
|
/// Metadata about a target, for example the description or tier.
|
||||||
/// for example "64-bit Linux (kernel 3.2+, glibc 2.17+)".
|
/// Used for generating target documentation.
|
||||||
/// Optional for now, intended to be required in the future.
|
pub metadata: TargetMetadata,
|
||||||
/// Part of #120745.
|
|
||||||
pub description: Option<StaticCow<str>>,
|
|
||||||
/// Number of bits in a pointer. Influences the `target_pointer_width` `cfg` variable.
|
/// Number of bits in a pointer. Influences the `target_pointer_width` `cfg` variable.
|
||||||
pub pointer_width: u32,
|
pub pointer_width: u32,
|
||||||
/// Architecture to use for ABI considerations. Valid options include: "x86",
|
/// Architecture to use for ABI considerations. Valid options include: "x86",
|
||||||
@ -1759,6 +1757,23 @@ pub struct Target {
|
|||||||
pub options: TargetOptions,
|
pub options: TargetOptions,
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/// Metadata about a target like the description or tier.
|
||||||
|
/// Part of #120745.
|
||||||
|
/// All fields are optional for now, but intended to be required in the future.
|
||||||
|
#[derive(Default, PartialEq, Clone, Debug)]
|
||||||
|
pub struct TargetMetadata {
|
||||||
|
/// A short description of the target including platform requirements,
|
||||||
|
/// for example "64-bit Linux (kernel 3.2+, glibc 2.17+)".
|
||||||
|
pub description: Option<StaticCow<str>>,
|
||||||
|
/// The tier of the target. 1, 2 or 3.
|
||||||
|
pub tier: Option<u64>,
|
||||||
|
/// Whether the Rust project ships host tools for a target.
|
||||||
|
pub host_tools: Option<bool>,
|
||||||
|
/// Whether a target has the `std` library. This is usually true for targets running
|
||||||
|
/// on an operating system.
|
||||||
|
pub std: Option<bool>,
|
||||||
|
}
|
||||||
|
|
||||||
impl Target {
|
impl Target {
|
||||||
pub fn parse_data_layout(&self) -> Result<TargetDataLayout, TargetDataLayoutErrors<'_>> {
|
pub fn parse_data_layout(&self) -> Result<TargetDataLayout, TargetDataLayoutErrors<'_>> {
|
||||||
let mut dl = TargetDataLayout::parse_from_llvm_datalayout_string(&self.data_layout)?;
|
let mut dl = TargetDataLayout::parse_from_llvm_datalayout_string(&self.data_layout)?;
|
||||||
@ -2549,7 +2564,7 @@ impl Target {
|
|||||||
|
|
||||||
let mut base = Target {
|
let mut base = Target {
|
||||||
llvm_target: get_req_field("llvm-target")?.into(),
|
llvm_target: get_req_field("llvm-target")?.into(),
|
||||||
description: get_req_field("description").ok().map(Into::into),
|
metadata: Default::default(),
|
||||||
pointer_width: get_req_field("target-pointer-width")?
|
pointer_width: get_req_field("target-pointer-width")?
|
||||||
.parse::<u32>()
|
.parse::<u32>()
|
||||||
.map_err(|_| "target-pointer-width must be an integer".to_string())?,
|
.map_err(|_| "target-pointer-width must be an integer".to_string())?,
|
||||||
@ -2558,6 +2573,22 @@ impl Target {
|
|||||||
options: Default::default(),
|
options: Default::default(),
|
||||||
};
|
};
|
||||||
|
|
||||||
|
// FIXME: This doesn't properly validate anything and just ignores the data if it's invalid.
|
||||||
|
// That's okay for now, the only use of this is when generating docs, which we don't do for
|
||||||
|
// custom targets.
|
||||||
|
if let Some(Json::Object(mut metadata)) = obj.remove("metadata") {
|
||||||
|
base.metadata.description = metadata
|
||||||
|
.remove("description")
|
||||||
|
.and_then(|desc| desc.as_str().map(|desc| desc.to_owned().into()));
|
||||||
|
base.metadata.tier = metadata
|
||||||
|
.remove("tier")
|
||||||
|
.and_then(|tier| tier.as_u64())
|
||||||
|
.filter(|tier| (1..=3).contains(tier));
|
||||||
|
base.metadata.host_tools =
|
||||||
|
metadata.remove("host_tools").and_then(|host| host.as_bool());
|
||||||
|
base.metadata.std = metadata.remove("std").and_then(|host| host.as_bool());
|
||||||
|
}
|
||||||
|
|
||||||
let mut incorrect_type = vec![];
|
let mut incorrect_type = vec![];
|
||||||
|
|
||||||
macro_rules! key {
|
macro_rules! key {
|
||||||
@ -3253,7 +3284,7 @@ impl ToJson for Target {
|
|||||||
}
|
}
|
||||||
|
|
||||||
target_val!(llvm_target);
|
target_val!(llvm_target);
|
||||||
target_val!(description);
|
target_val!(metadata);
|
||||||
d.insert("target-pointer-width".to_string(), self.pointer_width.to_string().to_json());
|
d.insert("target-pointer-width".to_string(), self.pointer_width.to_string().to_json());
|
||||||
target_val!(arch);
|
target_val!(arch);
|
||||||
target_val!(data_layout);
|
target_val!(data_layout);
|
||||||
|
@ -15,7 +15,12 @@ pub fn target() -> Target {
|
|||||||
// MACOSX_DEPLOYMENT_TARGET. To enable cross-language LTO to work
|
// MACOSX_DEPLOYMENT_TARGET. To enable cross-language LTO to work
|
||||||
// correctly, we do too.
|
// correctly, we do too.
|
||||||
llvm_target: macos_llvm_target(arch).into(),
|
llvm_target: macos_llvm_target(arch).into(),
|
||||||
|
metadata: crate::spec::TargetMetadata {
|
||||||
description: None,
|
description: None,
|
||||||
|
tier: None,
|
||||||
|
host_tools: None,
|
||||||
|
std: None,
|
||||||
|
},
|
||||||
pointer_width: 64,
|
pointer_width: 64,
|
||||||
data_layout: "e-m:o-i64:64-i128:128-n32:64-S128".into(),
|
data_layout: "e-m:o-i64:64-i128:128-n32:64-S128".into(),
|
||||||
arch: arch.target_arch(),
|
arch: arch.target_arch(),
|
||||||
|
@ -12,7 +12,12 @@ pub fn target() -> Target {
|
|||||||
// This is required for the target to pick the right
|
// This is required for the target to pick the right
|
||||||
// MACH-O commands, so we do too.
|
// MACH-O commands, so we do too.
|
||||||
llvm_target: ios_llvm_target(arch).into(),
|
llvm_target: ios_llvm_target(arch).into(),
|
||||||
|
metadata: crate::spec::TargetMetadata {
|
||||||
description: None,
|
description: None,
|
||||||
|
tier: None,
|
||||||
|
host_tools: None,
|
||||||
|
std: None,
|
||||||
|
},
|
||||||
pointer_width: 64,
|
pointer_width: 64,
|
||||||
data_layout: "e-m:o-i64:64-i128:128-n32:64-S128".into(),
|
data_layout: "e-m:o-i64:64-i128:128-n32:64-S128".into(),
|
||||||
arch: arch.target_arch(),
|
arch: arch.target_arch(),
|
||||||
|
@ -8,7 +8,12 @@ pub fn target() -> Target {
|
|||||||
|
|
||||||
Target {
|
Target {
|
||||||
llvm_target: mac_catalyst_llvm_target(arch).into(),
|
llvm_target: mac_catalyst_llvm_target(arch).into(),
|
||||||
|
metadata: crate::spec::TargetMetadata {
|
||||||
description: None,
|
description: None,
|
||||||
|
tier: None,
|
||||||
|
host_tools: None,
|
||||||
|
std: None,
|
||||||
|
},
|
||||||
pointer_width: 64,
|
pointer_width: 64,
|
||||||
data_layout: "e-m:o-i64:64-i128:128-n32:64-S128".into(),
|
data_layout: "e-m:o-i64:64-i128:128-n32:64-S128".into(),
|
||||||
arch: arch.target_arch(),
|
arch: arch.target_arch(),
|
||||||
|
@ -12,7 +12,12 @@ pub fn target() -> Target {
|
|||||||
// This is required for the simulator target to pick the right
|
// This is required for the simulator target to pick the right
|
||||||
// MACH-O commands, so we do too.
|
// MACH-O commands, so we do too.
|
||||||
llvm_target: ios_sim_llvm_target(arch).into(),
|
llvm_target: ios_sim_llvm_target(arch).into(),
|
||||||
|
metadata: crate::spec::TargetMetadata {
|
||||||
description: None,
|
description: None,
|
||||||
|
tier: None,
|
||||||
|
host_tools: None,
|
||||||
|
std: None,
|
||||||
|
},
|
||||||
pointer_width: 64,
|
pointer_width: 64,
|
||||||
data_layout: "e-m:o-i64:64-i128:128-n32:64-S128".into(),
|
data_layout: "e-m:o-i64:64-i128:128-n32:64-S128".into(),
|
||||||
arch: arch.target_arch(),
|
arch: arch.target_arch(),
|
||||||
|
@ -5,7 +5,12 @@ pub fn target() -> Target {
|
|||||||
let arch = Arch::Arm64;
|
let arch = Arch::Arm64;
|
||||||
Target {
|
Target {
|
||||||
llvm_target: tvos_llvm_target(arch).into(),
|
llvm_target: tvos_llvm_target(arch).into(),
|
||||||
|
metadata: crate::spec::TargetMetadata {
|
||||||
description: None,
|
description: None,
|
||||||
|
tier: None,
|
||||||
|
host_tools: None,
|
||||||
|
std: None,
|
||||||
|
},
|
||||||
pointer_width: 64,
|
pointer_width: 64,
|
||||||
data_layout: "e-m:o-i64:64-i128:128-n32:64-S128".into(),
|
data_layout: "e-m:o-i64:64-i128:128-n32:64-S128".into(),
|
||||||
arch: arch.target_arch(),
|
arch: arch.target_arch(),
|
||||||
|
@ -5,7 +5,12 @@ pub fn target() -> Target {
|
|||||||
let arch = Arch::Arm64_sim;
|
let arch = Arch::Arm64_sim;
|
||||||
Target {
|
Target {
|
||||||
llvm_target: tvos_sim_llvm_target(arch).into(),
|
llvm_target: tvos_sim_llvm_target(arch).into(),
|
||||||
|
metadata: crate::spec::TargetMetadata {
|
||||||
description: None,
|
description: None,
|
||||||
|
tier: None,
|
||||||
|
host_tools: None,
|
||||||
|
std: None,
|
||||||
|
},
|
||||||
pointer_width: 64,
|
pointer_width: 64,
|
||||||
data_layout: "e-m:o-i64:64-i128:128-n32:64-S128".into(),
|
data_layout: "e-m:o-i64:64-i128:128-n32:64-S128".into(),
|
||||||
arch: arch.target_arch(),
|
arch: arch.target_arch(),
|
||||||
|
@ -5,7 +5,12 @@ pub fn target() -> Target {
|
|||||||
let base = opts("watchos", Arch::Arm64);
|
let base = opts("watchos", Arch::Arm64);
|
||||||
Target {
|
Target {
|
||||||
llvm_target: "aarch64-apple-watchos".into(),
|
llvm_target: "aarch64-apple-watchos".into(),
|
||||||
|
metadata: crate::spec::TargetMetadata {
|
||||||
description: None,
|
description: None,
|
||||||
|
tier: None,
|
||||||
|
host_tools: None,
|
||||||
|
std: None,
|
||||||
|
},
|
||||||
pointer_width: 64,
|
pointer_width: 64,
|
||||||
data_layout: "e-m:o-i64:64-i128:128-n32:64-S128".into(),
|
data_layout: "e-m:o-i64:64-i128:128-n32:64-S128".into(),
|
||||||
arch: "aarch64".into(),
|
arch: "aarch64".into(),
|
||||||
|
@ -9,7 +9,12 @@ pub fn target() -> Target {
|
|||||||
// This is required for the simulator target to pick the right
|
// This is required for the simulator target to pick the right
|
||||||
// MACH-O commands, so we do too.
|
// MACH-O commands, so we do too.
|
||||||
llvm_target: watchos_sim_llvm_target(arch).into(),
|
llvm_target: watchos_sim_llvm_target(arch).into(),
|
||||||
|
metadata: crate::spec::TargetMetadata {
|
||||||
description: None,
|
description: None,
|
||||||
|
tier: None,
|
||||||
|
host_tools: None,
|
||||||
|
std: None,
|
||||||
|
},
|
||||||
pointer_width: 64,
|
pointer_width: 64,
|
||||||
data_layout: "e-m:o-i64:64-i128:128-n32:64-S128".into(),
|
data_layout: "e-m:o-i64:64-i128:128-n32:64-S128".into(),
|
||||||
arch: arch.target_arch(),
|
arch: arch.target_arch(),
|
||||||
|
@ -4,7 +4,12 @@ use crate::spec::{base, StackProbeType, Target, TargetOptions};
|
|||||||
pub fn target() -> Target {
|
pub fn target() -> Target {
|
||||||
Target {
|
Target {
|
||||||
llvm_target: "aarch64_be-unknown-linux-gnu".into(),
|
llvm_target: "aarch64_be-unknown-linux-gnu".into(),
|
||||||
|
metadata: crate::spec::TargetMetadata {
|
||||||
description: None,
|
description: None,
|
||||||
|
tier: None,
|
||||||
|
host_tools: None,
|
||||||
|
std: None,
|
||||||
|
},
|
||||||
pointer_width: 64,
|
pointer_width: 64,
|
||||||
data_layout: "E-m:e-i8:8:32-i16:16:32-i64:64-i128:128-n32:64-S128".into(),
|
data_layout: "E-m:e-i8:8:32-i16:16:32-i64:64-i128:128-n32:64-S128".into(),
|
||||||
arch: "aarch64".into(),
|
arch: "aarch64".into(),
|
||||||
|
@ -7,7 +7,12 @@ pub fn target() -> Target {
|
|||||||
|
|
||||||
Target {
|
Target {
|
||||||
llvm_target: "aarch64_be-unknown-linux-gnu_ilp32".into(),
|
llvm_target: "aarch64_be-unknown-linux-gnu_ilp32".into(),
|
||||||
|
metadata: crate::spec::TargetMetadata {
|
||||||
description: None,
|
description: None,
|
||||||
|
tier: None,
|
||||||
|
host_tools: None,
|
||||||
|
std: None,
|
||||||
|
},
|
||||||
pointer_width: 32,
|
pointer_width: 32,
|
||||||
data_layout: "E-m:e-p:32:32-i8:8:32-i16:16:32-i64:64-i128:128-n32:64-S128".into(),
|
data_layout: "E-m:e-p:32:32-i8:8:32-i16:16:32-i64:64-i128:128-n32:64-S128".into(),
|
||||||
arch: "aarch64".into(),
|
arch: "aarch64".into(),
|
||||||
|
@ -4,7 +4,12 @@ use crate::spec::{base, StackProbeType, Target, TargetOptions};
|
|||||||
pub fn target() -> Target {
|
pub fn target() -> Target {
|
||||||
Target {
|
Target {
|
||||||
llvm_target: "aarch64_be-unknown-netbsd".into(),
|
llvm_target: "aarch64_be-unknown-netbsd".into(),
|
||||||
|
metadata: crate::spec::TargetMetadata {
|
||||||
description: None,
|
description: None,
|
||||||
|
tier: None,
|
||||||
|
host_tools: None,
|
||||||
|
std: None,
|
||||||
|
},
|
||||||
pointer_width: 64,
|
pointer_width: 64,
|
||||||
data_layout: "E-m:e-i8:8:32-i16:16:32-i64:64-i128:128-n32:64-S128".into(),
|
data_layout: "E-m:e-i8:8:32-i16:16:32-i64:64-i128:128-n32:64-S128".into(),
|
||||||
arch: "aarch64".into(),
|
arch: "aarch64".into(),
|
||||||
|
@ -4,7 +4,12 @@ pub fn target() -> Target {
|
|||||||
let base = base::solid::opts("asp3");
|
let base = base::solid::opts("asp3");
|
||||||
Target {
|
Target {
|
||||||
llvm_target: "aarch64-unknown-none".into(),
|
llvm_target: "aarch64-unknown-none".into(),
|
||||||
|
metadata: crate::spec::TargetMetadata {
|
||||||
description: None,
|
description: None,
|
||||||
|
tier: None,
|
||||||
|
host_tools: None,
|
||||||
|
std: None,
|
||||||
|
},
|
||||||
pointer_width: 64,
|
pointer_width: 64,
|
||||||
data_layout: "e-m:e-i8:8:32-i16:16:32-i64:64-i128:128-n32:64-S128".into(),
|
data_layout: "e-m:e-i8:8:32-i16:16:32-i64:64-i128:128-n32:64-S128".into(),
|
||||||
arch: "aarch64".into(),
|
arch: "aarch64".into(),
|
||||||
|
@ -6,7 +6,12 @@ use crate::spec::{base, SanitizerSet, StackProbeType, Target, TargetOptions};
|
|||||||
pub fn target() -> Target {
|
pub fn target() -> Target {
|
||||||
Target {
|
Target {
|
||||||
llvm_target: "aarch64-linux-android".into(),
|
llvm_target: "aarch64-linux-android".into(),
|
||||||
|
metadata: crate::spec::TargetMetadata {
|
||||||
description: None,
|
description: None,
|
||||||
|
tier: None,
|
||||||
|
host_tools: None,
|
||||||
|
std: None,
|
||||||
|
},
|
||||||
pointer_width: 64,
|
pointer_width: 64,
|
||||||
data_layout: "e-m:e-i8:8:32-i16:16:32-i64:64-i128:128-n32:64-S128".into(),
|
data_layout: "e-m:e-i8:8:32-i16:16:32-i64:64-i128:128-n32:64-S128".into(),
|
||||||
arch: "aarch64".into(),
|
arch: "aarch64".into(),
|
||||||
|
@ -8,7 +8,12 @@ const LINKER_SCRIPT: &str = include_str!("./aarch64_nintendo_switch_freestanding
|
|||||||
pub fn target() -> Target {
|
pub fn target() -> Target {
|
||||||
Target {
|
Target {
|
||||||
llvm_target: "aarch64-unknown-none".into(),
|
llvm_target: "aarch64-unknown-none".into(),
|
||||||
|
metadata: crate::spec::TargetMetadata {
|
||||||
description: None,
|
description: None,
|
||||||
|
tier: None,
|
||||||
|
host_tools: None,
|
||||||
|
std: None,
|
||||||
|
},
|
||||||
pointer_width: 64,
|
pointer_width: 64,
|
||||||
data_layout: "e-m:e-i8:8:32-i16:16:32-i64:64-i128:128-n32:64-S128".into(),
|
data_layout: "e-m:e-i8:8:32-i16:16:32-i64:64-i128:128-n32:64-S128".into(),
|
||||||
arch: "aarch64".into(),
|
arch: "aarch64".into(),
|
||||||
|
@ -8,7 +8,12 @@ pub fn target() -> Target {
|
|||||||
|
|
||||||
Target {
|
Target {
|
||||||
llvm_target: "aarch64-pc-windows-gnu".into(),
|
llvm_target: "aarch64-pc-windows-gnu".into(),
|
||||||
|
metadata: crate::spec::TargetMetadata {
|
||||||
description: None,
|
description: None,
|
||||||
|
tier: None,
|
||||||
|
host_tools: None,
|
||||||
|
std: None,
|
||||||
|
},
|
||||||
pointer_width: 64,
|
pointer_width: 64,
|
||||||
data_layout: "e-m:w-p:64:64-i32:32-i64:64-i128:128-n32:64-S128".into(),
|
data_layout: "e-m:w-p:64:64-i32:32-i64:64-i128:128-n32:64-S128".into(),
|
||||||
arch: "aarch64".into(),
|
arch: "aarch64".into(),
|
||||||
|
@ -7,7 +7,12 @@ pub fn target() -> Target {
|
|||||||
|
|
||||||
Target {
|
Target {
|
||||||
llvm_target: "aarch64-pc-windows-msvc".into(),
|
llvm_target: "aarch64-pc-windows-msvc".into(),
|
||||||
description: Some("ARM64 Windows MSVC".into()),
|
metadata: crate::spec::TargetMetadata {
|
||||||
|
description: None,
|
||||||
|
tier: None,
|
||||||
|
host_tools: None,
|
||||||
|
std: None,
|
||||||
|
},
|
||||||
pointer_width: 64,
|
pointer_width: 64,
|
||||||
data_layout: "e-m:w-p:64:64-i32:32-i64:64-i128:128-n32:64-S128".into(),
|
data_layout: "e-m:w-p:64:64-i32:32-i64:64-i128:128-n32:64-S128".into(),
|
||||||
arch: "aarch64".into(),
|
arch: "aarch64".into(),
|
||||||
|
@ -3,7 +3,12 @@ use crate::spec::{base, SanitizerSet, StackProbeType, Target, TargetOptions};
|
|||||||
pub fn target() -> Target {
|
pub fn target() -> Target {
|
||||||
Target {
|
Target {
|
||||||
llvm_target: "aarch64-unknown-freebsd".into(),
|
llvm_target: "aarch64-unknown-freebsd".into(),
|
||||||
|
metadata: crate::spec::TargetMetadata {
|
||||||
description: None,
|
description: None,
|
||||||
|
tier: None,
|
||||||
|
host_tools: None,
|
||||||
|
std: None,
|
||||||
|
},
|
||||||
pointer_width: 64,
|
pointer_width: 64,
|
||||||
data_layout: "e-m:e-i8:8:32-i16:16:32-i64:64-i128:128-n32:64-S128".into(),
|
data_layout: "e-m:e-i8:8:32-i16:16:32-i64:64-i128:128-n32:64-S128".into(),
|
||||||
arch: "aarch64".into(),
|
arch: "aarch64".into(),
|
||||||
|
@ -3,7 +3,12 @@ use crate::spec::{base, SanitizerSet, StackProbeType, Target, TargetOptions};
|
|||||||
pub fn target() -> Target {
|
pub fn target() -> Target {
|
||||||
Target {
|
Target {
|
||||||
llvm_target: "aarch64-unknown-fuchsia".into(),
|
llvm_target: "aarch64-unknown-fuchsia".into(),
|
||||||
|
metadata: crate::spec::TargetMetadata {
|
||||||
description: None,
|
description: None,
|
||||||
|
tier: None,
|
||||||
|
host_tools: None,
|
||||||
|
std: None,
|
||||||
|
},
|
||||||
pointer_width: 64,
|
pointer_width: 64,
|
||||||
data_layout: "e-m:e-i8:8:32-i16:16:32-i64:64-i128:128-n32:64-S128".into(),
|
data_layout: "e-m:e-i8:8:32-i16:16:32-i64:64-i128:128-n32:64-S128".into(),
|
||||||
arch: "aarch64".into(),
|
arch: "aarch64".into(),
|
||||||
|
@ -3,7 +3,12 @@ use crate::spec::{base, StackProbeType, Target, TargetOptions};
|
|||||||
pub fn target() -> Target {
|
pub fn target() -> Target {
|
||||||
Target {
|
Target {
|
||||||
llvm_target: "aarch64-unknown-hermit".into(),
|
llvm_target: "aarch64-unknown-hermit".into(),
|
||||||
|
metadata: crate::spec::TargetMetadata {
|
||||||
description: None,
|
description: None,
|
||||||
|
tier: None,
|
||||||
|
host_tools: None,
|
||||||
|
std: None,
|
||||||
|
},
|
||||||
pointer_width: 64,
|
pointer_width: 64,
|
||||||
arch: "aarch64".into(),
|
arch: "aarch64".into(),
|
||||||
data_layout: "e-m:e-i8:8:32-i16:16:32-i64:64-i128:128-n32:64-S128".into(),
|
data_layout: "e-m:e-i8:8:32-i16:16:32-i64:64-i128:128-n32:64-S128".into(),
|
||||||
|
@ -11,7 +11,12 @@ pub fn target() -> Target {
|
|||||||
// LLVM does not currently have a separate illumos target,
|
// LLVM does not currently have a separate illumos target,
|
||||||
// so we still pass Solaris to it
|
// so we still pass Solaris to it
|
||||||
llvm_target: "aarch64-unknown-solaris2.11".into(),
|
llvm_target: "aarch64-unknown-solaris2.11".into(),
|
||||||
|
metadata: crate::spec::TargetMetadata {
|
||||||
description: None,
|
description: None,
|
||||||
|
tier: None,
|
||||||
|
host_tools: None,
|
||||||
|
std: None,
|
||||||
|
},
|
||||||
pointer_width: 64,
|
pointer_width: 64,
|
||||||
data_layout: "e-m:e-i8:8:32-i16:16:32-i64:64-i128:128-n32:64-S128".into(),
|
data_layout: "e-m:e-i8:8:32-i16:16:32-i64:64-i128:128-n32:64-S128".into(),
|
||||||
arch: "aarch64".into(),
|
arch: "aarch64".into(),
|
||||||
|
@ -3,7 +3,12 @@ use crate::spec::{base, SanitizerSet, StackProbeType, Target, TargetOptions};
|
|||||||
pub fn target() -> Target {
|
pub fn target() -> Target {
|
||||||
Target {
|
Target {
|
||||||
llvm_target: "aarch64-unknown-linux-gnu".into(),
|
llvm_target: "aarch64-unknown-linux-gnu".into(),
|
||||||
|
metadata: crate::spec::TargetMetadata {
|
||||||
description: None,
|
description: None,
|
||||||
|
tier: None,
|
||||||
|
host_tools: None,
|
||||||
|
std: None,
|
||||||
|
},
|
||||||
pointer_width: 64,
|
pointer_width: 64,
|
||||||
data_layout: "e-m:e-i8:8:32-i16:16:32-i64:64-i128:128-n32:64-S128".into(),
|
data_layout: "e-m:e-i8:8:32-i16:16:32-i64:64-i128:128-n32:64-S128".into(),
|
||||||
arch: "aarch64".into(),
|
arch: "aarch64".into(),
|
||||||
|
@ -3,7 +3,12 @@ use crate::spec::{base, StackProbeType, Target, TargetOptions};
|
|||||||
pub fn target() -> Target {
|
pub fn target() -> Target {
|
||||||
Target {
|
Target {
|
||||||
llvm_target: "aarch64-unknown-linux-gnu_ilp32".into(),
|
llvm_target: "aarch64-unknown-linux-gnu_ilp32".into(),
|
||||||
|
metadata: crate::spec::TargetMetadata {
|
||||||
description: None,
|
description: None,
|
||||||
|
tier: None,
|
||||||
|
host_tools: None,
|
||||||
|
std: None,
|
||||||
|
},
|
||||||
pointer_width: 32,
|
pointer_width: 32,
|
||||||
data_layout: "e-m:e-p:32:32-i8:8:32-i16:16:32-i64:64-i128:128-n32:64-S128".into(),
|
data_layout: "e-m:e-p:32:32-i8:8:32-i16:16:32-i64:64-i128:128-n32:64-S128".into(),
|
||||||
arch: "aarch64".into(),
|
arch: "aarch64".into(),
|
||||||
|
@ -14,7 +14,12 @@ pub fn target() -> Target {
|
|||||||
|
|
||||||
Target {
|
Target {
|
||||||
llvm_target: "aarch64-unknown-linux-musl".into(),
|
llvm_target: "aarch64-unknown-linux-musl".into(),
|
||||||
|
metadata: crate::spec::TargetMetadata {
|
||||||
description: None,
|
description: None,
|
||||||
|
tier: None,
|
||||||
|
host_tools: None,
|
||||||
|
std: None,
|
||||||
|
},
|
||||||
pointer_width: 64,
|
pointer_width: 64,
|
||||||
data_layout: "e-m:e-i8:8:32-i16:16:32-i64:64-i128:128-n32:64-S128".into(),
|
data_layout: "e-m:e-i8:8:32-i16:16:32-i64:64-i128:128-n32:64-S128".into(),
|
||||||
arch: "aarch64".into(),
|
arch: "aarch64".into(),
|
||||||
|
@ -8,7 +8,12 @@ pub fn target() -> Target {
|
|||||||
Target {
|
Target {
|
||||||
// LLVM 15 doesn't support OpenHarmony yet, use a linux target instead.
|
// LLVM 15 doesn't support OpenHarmony yet, use a linux target instead.
|
||||||
llvm_target: "aarch64-unknown-linux-musl".into(),
|
llvm_target: "aarch64-unknown-linux-musl".into(),
|
||||||
|
metadata: crate::spec::TargetMetadata {
|
||||||
description: None,
|
description: None,
|
||||||
|
tier: None,
|
||||||
|
host_tools: None,
|
||||||
|
std: None,
|
||||||
|
},
|
||||||
pointer_width: 64,
|
pointer_width: 64,
|
||||||
data_layout: "e-m:e-i8:8:32-i16:16:32-i64:64-i128:128-n32:64-S128".into(),
|
data_layout: "e-m:e-i8:8:32-i16:16:32-i64:64-i128:128-n32:64-S128".into(),
|
||||||
arch: "aarch64".into(),
|
arch: "aarch64".into(),
|
||||||
|
@ -3,7 +3,12 @@ use crate::spec::{base, StackProbeType, Target, TargetOptions};
|
|||||||
pub fn target() -> Target {
|
pub fn target() -> Target {
|
||||||
Target {
|
Target {
|
||||||
llvm_target: "aarch64-unknown-netbsd".into(),
|
llvm_target: "aarch64-unknown-netbsd".into(),
|
||||||
|
metadata: crate::spec::TargetMetadata {
|
||||||
description: None,
|
description: None,
|
||||||
|
tier: None,
|
||||||
|
host_tools: None,
|
||||||
|
std: None,
|
||||||
|
},
|
||||||
pointer_width: 64,
|
pointer_width: 64,
|
||||||
data_layout: "e-m:e-i8:8:32-i16:16:32-i64:64-i128:128-n32:64-S128".into(),
|
data_layout: "e-m:e-i8:8:32-i16:16:32-i64:64-i128:128-n32:64-S128".into(),
|
||||||
arch: "aarch64".into(),
|
arch: "aarch64".into(),
|
||||||
|
@ -31,7 +31,12 @@ pub fn target() -> Target {
|
|||||||
};
|
};
|
||||||
Target {
|
Target {
|
||||||
llvm_target: "aarch64-unknown-none".into(),
|
llvm_target: "aarch64-unknown-none".into(),
|
||||||
|
metadata: crate::spec::TargetMetadata {
|
||||||
description: None,
|
description: None,
|
||||||
|
tier: None,
|
||||||
|
host_tools: None,
|
||||||
|
std: None,
|
||||||
|
},
|
||||||
pointer_width: 64,
|
pointer_width: 64,
|
||||||
data_layout: "e-m:e-i8:8:32-i16:16:32-i64:64-i128:128-n32:64-S128".into(),
|
data_layout: "e-m:e-i8:8:32-i16:16:32-i64:64-i128:128-n32:64-S128".into(),
|
||||||
arch: "aarch64".into(),
|
arch: "aarch64".into(),
|
||||||
|
@ -25,7 +25,12 @@ pub fn target() -> Target {
|
|||||||
};
|
};
|
||||||
Target {
|
Target {
|
||||||
llvm_target: "aarch64-unknown-none".into(),
|
llvm_target: "aarch64-unknown-none".into(),
|
||||||
|
metadata: crate::spec::TargetMetadata {
|
||||||
description: None,
|
description: None,
|
||||||
|
tier: None,
|
||||||
|
host_tools: None,
|
||||||
|
std: None,
|
||||||
|
},
|
||||||
pointer_width: 64,
|
pointer_width: 64,
|
||||||
data_layout: "e-m:e-i8:8:32-i16:16:32-i64:64-i128:128-n32:64-S128".into(),
|
data_layout: "e-m:e-i8:8:32-i16:16:32-i64:64-i128:128-n32:64-S128".into(),
|
||||||
arch: "aarch64".into(),
|
arch: "aarch64".into(),
|
||||||
|
@ -3,7 +3,12 @@ use crate::spec::{base, Cc, LinkerFlavor, Lld, Target, TargetOptions};
|
|||||||
pub fn target() -> Target {
|
pub fn target() -> Target {
|
||||||
Target {
|
Target {
|
||||||
llvm_target: "aarch64-unknown-unknown".into(),
|
llvm_target: "aarch64-unknown-unknown".into(),
|
||||||
|
metadata: crate::spec::TargetMetadata {
|
||||||
description: None,
|
description: None,
|
||||||
|
tier: None,
|
||||||
|
host_tools: None,
|
||||||
|
std: None,
|
||||||
|
},
|
||||||
pointer_width: 64,
|
pointer_width: 64,
|
||||||
// from: https://llvm.org/docs/LangRef.html#data-layout
|
// from: https://llvm.org/docs/LangRef.html#data-layout
|
||||||
// e = little endian
|
// e = little endian
|
||||||
|
@ -3,7 +3,12 @@ use crate::spec::{base, StackProbeType, Target, TargetOptions};
|
|||||||
pub fn target() -> Target {
|
pub fn target() -> Target {
|
||||||
Target {
|
Target {
|
||||||
llvm_target: "aarch64-unknown-openbsd".into(),
|
llvm_target: "aarch64-unknown-openbsd".into(),
|
||||||
|
metadata: crate::spec::TargetMetadata {
|
||||||
description: None,
|
description: None,
|
||||||
|
tier: None,
|
||||||
|
host_tools: None,
|
||||||
|
std: None,
|
||||||
|
},
|
||||||
pointer_width: 64,
|
pointer_width: 64,
|
||||||
data_layout: "e-m:e-i8:8:32-i16:16:32-i64:64-i128:128-n32:64-S128".into(),
|
data_layout: "e-m:e-i8:8:32-i16:16:32-i64:64-i128:128-n32:64-S128".into(),
|
||||||
arch: "aarch64".into(),
|
arch: "aarch64".into(),
|
||||||
|
@ -8,7 +8,12 @@ pub fn target() -> Target {
|
|||||||
|
|
||||||
Target {
|
Target {
|
||||||
llvm_target: "aarch64-unknown-redox".into(),
|
llvm_target: "aarch64-unknown-redox".into(),
|
||||||
|
metadata: crate::spec::TargetMetadata {
|
||||||
description: None,
|
description: None,
|
||||||
|
tier: None,
|
||||||
|
host_tools: None,
|
||||||
|
std: None,
|
||||||
|
},
|
||||||
pointer_width: 64,
|
pointer_width: 64,
|
||||||
data_layout: "e-m:e-i8:8:32-i16:16:32-i64:64-i128:128-n32:64-S128".into(),
|
data_layout: "e-m:e-i8:8:32-i16:16:32-i64:64-i128:128-n32:64-S128".into(),
|
||||||
arch: "aarch64".into(),
|
arch: "aarch64".into(),
|
||||||
|
@ -8,7 +8,12 @@ pub fn target() -> Target {
|
|||||||
|
|
||||||
Target {
|
Target {
|
||||||
llvm_target: "aarch64-unknown-none".into(),
|
llvm_target: "aarch64-unknown-none".into(),
|
||||||
|
metadata: crate::spec::TargetMetadata {
|
||||||
description: None,
|
description: None,
|
||||||
|
tier: None,
|
||||||
|
host_tools: None,
|
||||||
|
std: None,
|
||||||
|
},
|
||||||
pointer_width: 64,
|
pointer_width: 64,
|
||||||
data_layout: "e-m:e-i8:8:32-i16:16:32-i64:64-i128:128-n32:64-S128".into(),
|
data_layout: "e-m:e-i8:8:32-i16:16:32-i64:64-i128:128-n32:64-S128".into(),
|
||||||
arch: "aarch64".into(),
|
arch: "aarch64".into(),
|
||||||
|
@ -12,7 +12,12 @@ pub fn target() -> Target {
|
|||||||
|
|
||||||
Target {
|
Target {
|
||||||
llvm_target: "aarch64-unknown-windows".into(),
|
llvm_target: "aarch64-unknown-windows".into(),
|
||||||
|
metadata: crate::spec::TargetMetadata {
|
||||||
description: None,
|
description: None,
|
||||||
|
tier: None,
|
||||||
|
host_tools: None,
|
||||||
|
std: None,
|
||||||
|
},
|
||||||
pointer_width: 64,
|
pointer_width: 64,
|
||||||
data_layout: "e-m:w-p:64:64-i32:32-i64:64-i128:128-n32:64-S128".into(),
|
data_layout: "e-m:w-p:64:64-i32:32-i64:64-i128:128-n32:64-S128".into(),
|
||||||
arch: "aarch64".into(),
|
arch: "aarch64".into(),
|
||||||
|
@ -7,7 +7,12 @@ pub fn target() -> Target {
|
|||||||
|
|
||||||
Target {
|
Target {
|
||||||
llvm_target: "aarch64-pc-windows-msvc".into(),
|
llvm_target: "aarch64-pc-windows-msvc".into(),
|
||||||
|
metadata: crate::spec::TargetMetadata {
|
||||||
description: None,
|
description: None,
|
||||||
|
tier: None,
|
||||||
|
host_tools: None,
|
||||||
|
std: None,
|
||||||
|
},
|
||||||
pointer_width: 64,
|
pointer_width: 64,
|
||||||
data_layout: "e-m:w-p:64:64-i32:32-i64:64-i128:128-n32:64-S128".into(),
|
data_layout: "e-m:w-p:64:64-i32:32-i64:64-i128:128-n32:64-S128".into(),
|
||||||
arch: "aarch64".into(),
|
arch: "aarch64".into(),
|
||||||
|
@ -3,7 +3,12 @@ use crate::spec::{base, StackProbeType, Target, TargetOptions};
|
|||||||
pub fn target() -> Target {
|
pub fn target() -> Target {
|
||||||
Target {
|
Target {
|
||||||
llvm_target: "aarch64-unknown-linux-gnu".into(),
|
llvm_target: "aarch64-unknown-linux-gnu".into(),
|
||||||
|
metadata: crate::spec::TargetMetadata {
|
||||||
description: None,
|
description: None,
|
||||||
|
tier: None,
|
||||||
|
host_tools: None,
|
||||||
|
std: None,
|
||||||
|
},
|
||||||
pointer_width: 64,
|
pointer_width: 64,
|
||||||
data_layout: "e-m:e-i8:8:32-i16:16:32-i64:64-i128:128-n32:64-S128".into(),
|
data_layout: "e-m:e-i8:8:32-i16:16:32-i64:64-i128:128-n32:64-S128".into(),
|
||||||
arch: "aarch64".into(),
|
arch: "aarch64".into(),
|
||||||
|
@ -5,7 +5,12 @@ pub fn target() -> Target {
|
|||||||
let base = opts("watchos", Arch::Arm64_32);
|
let base = opts("watchos", Arch::Arm64_32);
|
||||||
Target {
|
Target {
|
||||||
llvm_target: "arm64_32-apple-watchos".into(),
|
llvm_target: "arm64_32-apple-watchos".into(),
|
||||||
|
metadata: crate::spec::TargetMetadata {
|
||||||
description: None,
|
description: None,
|
||||||
|
tier: None,
|
||||||
|
host_tools: None,
|
||||||
|
std: None,
|
||||||
|
},
|
||||||
pointer_width: 32,
|
pointer_width: 32,
|
||||||
data_layout: "e-m:o-p:32:32-i64:64-i128:128-n32:64-S128".into(),
|
data_layout: "e-m:o-p:32:32-i64:64-i128:128-n32:64-S128".into(),
|
||||||
arch: "aarch64".into(),
|
arch: "aarch64".into(),
|
||||||
|
@ -15,7 +15,12 @@ pub fn target() -> Target {
|
|||||||
// MACOSX_DEPLOYMENT_TARGET. To enable cross-language LTO to work
|
// MACOSX_DEPLOYMENT_TARGET. To enable cross-language LTO to work
|
||||||
// correctly, we do too.
|
// correctly, we do too.
|
||||||
llvm_target: macos_llvm_target(arch).into(),
|
llvm_target: macos_llvm_target(arch).into(),
|
||||||
|
metadata: crate::spec::TargetMetadata {
|
||||||
description: None,
|
description: None,
|
||||||
|
tier: None,
|
||||||
|
host_tools: None,
|
||||||
|
std: None,
|
||||||
|
},
|
||||||
pointer_width: 64,
|
pointer_width: 64,
|
||||||
data_layout: "e-m:o-i64:64-i128:128-n32:64-S128".into(),
|
data_layout: "e-m:o-i64:64-i128:128-n32:64-S128".into(),
|
||||||
arch: arch.target_arch(),
|
arch: arch.target_arch(),
|
||||||
|
@ -12,7 +12,12 @@ pub fn target() -> Target {
|
|||||||
// This is required for the target to pick the right
|
// This is required for the target to pick the right
|
||||||
// MACH-O commands, so we do too.
|
// MACH-O commands, so we do too.
|
||||||
llvm_target: ios_llvm_target(arch).into(),
|
llvm_target: ios_llvm_target(arch).into(),
|
||||||
|
metadata: crate::spec::TargetMetadata {
|
||||||
description: None,
|
description: None,
|
||||||
|
tier: None,
|
||||||
|
host_tools: None,
|
||||||
|
std: None,
|
||||||
|
},
|
||||||
pointer_width: 64,
|
pointer_width: 64,
|
||||||
data_layout: "e-m:o-i64:64-i128:128-n32:64-S128".into(),
|
data_layout: "e-m:o-i64:64-i128:128-n32:64-S128".into(),
|
||||||
arch: arch.target_arch(),
|
arch: arch.target_arch(),
|
||||||
|
@ -12,7 +12,12 @@ pub fn target() -> Target {
|
|||||||
|
|
||||||
Target {
|
Target {
|
||||||
llvm_target: "arm64ec-pc-windows-msvc".into(),
|
llvm_target: "arm64ec-pc-windows-msvc".into(),
|
||||||
|
metadata: crate::spec::TargetMetadata {
|
||||||
description: None,
|
description: None,
|
||||||
|
tier: None,
|
||||||
|
host_tools: None,
|
||||||
|
std: None,
|
||||||
|
},
|
||||||
pointer_width: 64,
|
pointer_width: 64,
|
||||||
data_layout: "e-m:w-p:64:64-i32:32-i64:64-i128:128-n32:64-S128".into(),
|
data_layout: "e-m:w-p:64:64-i32:32-i64:64-i128:128-n32:64-S128".into(),
|
||||||
arch: "arm64ec".into(),
|
arch: "arm64ec".into(),
|
||||||
|
@ -3,7 +3,12 @@ use crate::spec::{base, SanitizerSet, Target, TargetOptions};
|
|||||||
pub fn target() -> Target {
|
pub fn target() -> Target {
|
||||||
Target {
|
Target {
|
||||||
llvm_target: "arm-linux-androideabi".into(),
|
llvm_target: "arm-linux-androideabi".into(),
|
||||||
|
metadata: crate::spec::TargetMetadata {
|
||||||
description: None,
|
description: None,
|
||||||
|
tier: None,
|
||||||
|
host_tools: None,
|
||||||
|
std: None,
|
||||||
|
},
|
||||||
pointer_width: 32,
|
pointer_width: 32,
|
||||||
data_layout: "e-m:e-p:32:32-Fi8-i64:64-v128:64:128-a:0:32-n32-S64".into(),
|
data_layout: "e-m:e-p:32:32-Fi8-i64:64-v128:64:128-a:0:32-n32-S64".into(),
|
||||||
arch: "arm".into(),
|
arch: "arm".into(),
|
||||||
|
@ -3,7 +3,12 @@ use crate::spec::{base, Target, TargetOptions};
|
|||||||
pub fn target() -> Target {
|
pub fn target() -> Target {
|
||||||
Target {
|
Target {
|
||||||
llvm_target: "arm-unknown-linux-gnueabi".into(),
|
llvm_target: "arm-unknown-linux-gnueabi".into(),
|
||||||
|
metadata: crate::spec::TargetMetadata {
|
||||||
description: None,
|
description: None,
|
||||||
|
tier: None,
|
||||||
|
host_tools: None,
|
||||||
|
std: None,
|
||||||
|
},
|
||||||
pointer_width: 32,
|
pointer_width: 32,
|
||||||
data_layout: "e-m:e-p:32:32-Fi8-i64:64-v128:64:128-a:0:32-n32-S64".into(),
|
data_layout: "e-m:e-p:32:32-Fi8-i64:64-v128:64:128-a:0:32-n32-S64".into(),
|
||||||
arch: "arm".into(),
|
arch: "arm".into(),
|
||||||
|
@ -3,7 +3,12 @@ use crate::spec::{base, Target, TargetOptions};
|
|||||||
pub fn target() -> Target {
|
pub fn target() -> Target {
|
||||||
Target {
|
Target {
|
||||||
llvm_target: "arm-unknown-linux-gnueabihf".into(),
|
llvm_target: "arm-unknown-linux-gnueabihf".into(),
|
||||||
|
metadata: crate::spec::TargetMetadata {
|
||||||
description: None,
|
description: None,
|
||||||
|
tier: None,
|
||||||
|
host_tools: None,
|
||||||
|
std: None,
|
||||||
|
},
|
||||||
pointer_width: 32,
|
pointer_width: 32,
|
||||||
data_layout: "e-m:e-p:32:32-Fi8-i64:64-v128:64:128-a:0:32-n32-S64".into(),
|
data_layout: "e-m:e-p:32:32-Fi8-i64:64-v128:64:128-a:0:32-n32-S64".into(),
|
||||||
arch: "arm".into(),
|
arch: "arm".into(),
|
||||||
|
@ -6,7 +6,12 @@ pub fn target() -> Target {
|
|||||||
// to determine the calling convention and float ABI, and it doesn't
|
// to determine the calling convention and float ABI, and it doesn't
|
||||||
// support the "musleabi" value.
|
// support the "musleabi" value.
|
||||||
llvm_target: "arm-unknown-linux-gnueabi".into(),
|
llvm_target: "arm-unknown-linux-gnueabi".into(),
|
||||||
|
metadata: crate::spec::TargetMetadata {
|
||||||
description: None,
|
description: None,
|
||||||
|
tier: None,
|
||||||
|
host_tools: None,
|
||||||
|
std: None,
|
||||||
|
},
|
||||||
pointer_width: 32,
|
pointer_width: 32,
|
||||||
data_layout: "e-m:e-p:32:32-Fi8-i64:64-v128:64:128-a:0:32-n32-S64".into(),
|
data_layout: "e-m:e-p:32:32-Fi8-i64:64-v128:64:128-a:0:32-n32-S64".into(),
|
||||||
arch: "arm".into(),
|
arch: "arm".into(),
|
||||||
|
@ -6,7 +6,12 @@ pub fn target() -> Target {
|
|||||||
// uses it to determine the calling convention and float ABI, and it
|
// uses it to determine the calling convention and float ABI, and it
|
||||||
// doesn't support the "musleabihf" value.
|
// doesn't support the "musleabihf" value.
|
||||||
llvm_target: "arm-unknown-linux-gnueabihf".into(),
|
llvm_target: "arm-unknown-linux-gnueabihf".into(),
|
||||||
|
metadata: crate::spec::TargetMetadata {
|
||||||
description: None,
|
description: None,
|
||||||
|
tier: None,
|
||||||
|
host_tools: None,
|
||||||
|
std: None,
|
||||||
|
},
|
||||||
pointer_width: 32,
|
pointer_width: 32,
|
||||||
data_layout: "e-m:e-p:32:32-Fi8-i64:64-v128:64:128-a:0:32-n32-S64".into(),
|
data_layout: "e-m:e-p:32:32-Fi8-i64:64-v128:64:128-a:0:32-n32-S64".into(),
|
||||||
arch: "arm".into(),
|
arch: "arm".into(),
|
||||||
|
@ -4,7 +4,12 @@ use crate::spec::{base, Target, TargetOptions};
|
|||||||
pub fn target() -> Target {
|
pub fn target() -> Target {
|
||||||
Target {
|
Target {
|
||||||
llvm_target: "armeb-unknown-linux-gnueabi".into(),
|
llvm_target: "armeb-unknown-linux-gnueabi".into(),
|
||||||
|
metadata: crate::spec::TargetMetadata {
|
||||||
description: None,
|
description: None,
|
||||||
|
tier: None,
|
||||||
|
host_tools: None,
|
||||||
|
std: None,
|
||||||
|
},
|
||||||
pointer_width: 32,
|
pointer_width: 32,
|
||||||
data_layout: "E-m:e-p:32:32-Fi8-i64:64-v128:64:128-a:0:32-n32-S64".into(),
|
data_layout: "E-m:e-p:32:32-Fi8-i64:64-v128:64:128-a:0:32-n32-S64".into(),
|
||||||
arch: "arm".into(),
|
arch: "arm".into(),
|
||||||
|
@ -6,7 +6,12 @@ use crate::spec::{Cc, LinkerFlavor, Lld, PanicStrategy, RelocModel, Target, Targ
|
|||||||
pub fn target() -> Target {
|
pub fn target() -> Target {
|
||||||
Target {
|
Target {
|
||||||
llvm_target: "armebv7r-none-eabi".into(),
|
llvm_target: "armebv7r-none-eabi".into(),
|
||||||
|
metadata: crate::spec::TargetMetadata {
|
||||||
description: None,
|
description: None,
|
||||||
|
tier: None,
|
||||||
|
host_tools: None,
|
||||||
|
std: None,
|
||||||
|
},
|
||||||
pointer_width: 32,
|
pointer_width: 32,
|
||||||
data_layout: "E-m:e-p:32:32-Fi8-i64:64-v128:64:128-a:0:32-n32-S64".into(),
|
data_layout: "E-m:e-p:32:32-Fi8-i64:64-v128:64:128-a:0:32-n32-S64".into(),
|
||||||
arch: "arm".into(),
|
arch: "arm".into(),
|
||||||
|
@ -6,7 +6,12 @@ use crate::spec::{Cc, LinkerFlavor, Lld, PanicStrategy, RelocModel, Target, Targ
|
|||||||
pub fn target() -> Target {
|
pub fn target() -> Target {
|
||||||
Target {
|
Target {
|
||||||
llvm_target: "armebv7r-none-eabihf".into(),
|
llvm_target: "armebv7r-none-eabihf".into(),
|
||||||
|
metadata: crate::spec::TargetMetadata {
|
||||||
description: None,
|
description: None,
|
||||||
|
tier: None,
|
||||||
|
host_tools: None,
|
||||||
|
std: None,
|
||||||
|
},
|
||||||
pointer_width: 32,
|
pointer_width: 32,
|
||||||
data_layout: "E-m:e-p:32:32-Fi8-i64:64-v128:64:128-a:0:32-n32-S64".into(),
|
data_layout: "E-m:e-p:32:32-Fi8-i64:64-v128:64:128-a:0:32-n32-S64".into(),
|
||||||
arch: "arm".into(),
|
arch: "arm".into(),
|
||||||
|
@ -14,7 +14,12 @@ use crate::spec::{cvs, Cc, LinkerFlavor, Lld, PanicStrategy, RelocModel, Target,
|
|||||||
pub fn target() -> Target {
|
pub fn target() -> Target {
|
||||||
Target {
|
Target {
|
||||||
llvm_target: "armv4t-none-eabi".into(),
|
llvm_target: "armv4t-none-eabi".into(),
|
||||||
|
metadata: crate::spec::TargetMetadata {
|
||||||
description: None,
|
description: None,
|
||||||
|
tier: None,
|
||||||
|
host_tools: None,
|
||||||
|
std: None,
|
||||||
|
},
|
||||||
pointer_width: 32,
|
pointer_width: 32,
|
||||||
arch: "arm".into(),
|
arch: "arm".into(),
|
||||||
/* Data layout args are '-' separated:
|
/* Data layout args are '-' separated:
|
||||||
|
@ -3,7 +3,12 @@ use crate::spec::{base, Target, TargetOptions};
|
|||||||
pub fn target() -> Target {
|
pub fn target() -> Target {
|
||||||
Target {
|
Target {
|
||||||
llvm_target: "armv4t-unknown-linux-gnueabi".into(),
|
llvm_target: "armv4t-unknown-linux-gnueabi".into(),
|
||||||
|
metadata: crate::spec::TargetMetadata {
|
||||||
description: None,
|
description: None,
|
||||||
|
tier: None,
|
||||||
|
host_tools: None,
|
||||||
|
std: None,
|
||||||
|
},
|
||||||
pointer_width: 32,
|
pointer_width: 32,
|
||||||
data_layout: "e-m:e-p:32:32-Fi8-i64:64-v128:64:128-a:0:32-n32-S64".into(),
|
data_layout: "e-m:e-p:32:32-Fi8-i64:64-v128:64:128-a:0:32-n32-S64".into(),
|
||||||
arch: "arm".into(),
|
arch: "arm".into(),
|
||||||
|
@ -5,7 +5,12 @@ use crate::spec::{base, cvs, FramePointer, Target, TargetOptions};
|
|||||||
pub fn target() -> Target {
|
pub fn target() -> Target {
|
||||||
Target {
|
Target {
|
||||||
llvm_target: "armv5te-none-eabi".into(),
|
llvm_target: "armv5te-none-eabi".into(),
|
||||||
|
metadata: crate::spec::TargetMetadata {
|
||||||
description: None,
|
description: None,
|
||||||
|
tier: None,
|
||||||
|
host_tools: None,
|
||||||
|
std: None,
|
||||||
|
},
|
||||||
pointer_width: 32,
|
pointer_width: 32,
|
||||||
arch: "arm".into(),
|
arch: "arm".into(),
|
||||||
/* Data layout args are '-' separated:
|
/* Data layout args are '-' separated:
|
||||||
|
@ -3,7 +3,12 @@ use crate::spec::{base, Target, TargetOptions};
|
|||||||
pub fn target() -> Target {
|
pub fn target() -> Target {
|
||||||
Target {
|
Target {
|
||||||
llvm_target: "armv5te-unknown-linux-gnueabi".into(),
|
llvm_target: "armv5te-unknown-linux-gnueabi".into(),
|
||||||
|
metadata: crate::spec::TargetMetadata {
|
||||||
description: None,
|
description: None,
|
||||||
|
tier: None,
|
||||||
|
host_tools: None,
|
||||||
|
std: None,
|
||||||
|
},
|
||||||
pointer_width: 32,
|
pointer_width: 32,
|
||||||
data_layout: "e-m:e-p:32:32-Fi8-i64:64-v128:64:128-a:0:32-n32-S64".into(),
|
data_layout: "e-m:e-p:32:32-Fi8-i64:64-v128:64:128-a:0:32-n32-S64".into(),
|
||||||
arch: "arm".into(),
|
arch: "arm".into(),
|
||||||
|
@ -7,7 +7,12 @@ pub fn target() -> Target {
|
|||||||
// uses it to determine the calling convention and float ABI, and LLVM
|
// uses it to determine the calling convention and float ABI, and LLVM
|
||||||
// doesn't support the "musleabihf" value.
|
// doesn't support the "musleabihf" value.
|
||||||
llvm_target: "armv5te-unknown-linux-gnueabi".into(),
|
llvm_target: "armv5te-unknown-linux-gnueabi".into(),
|
||||||
|
metadata: crate::spec::TargetMetadata {
|
||||||
description: None,
|
description: None,
|
||||||
|
tier: None,
|
||||||
|
host_tools: None,
|
||||||
|
std: None,
|
||||||
|
},
|
||||||
pointer_width: 32,
|
pointer_width: 32,
|
||||||
data_layout: "e-m:e-p:32:32-Fi8-i64:64-v128:64:128-a:0:32-n32-S64".into(),
|
data_layout: "e-m:e-p:32:32-Fi8-i64:64-v128:64:128-a:0:32-n32-S64".into(),
|
||||||
arch: "arm".into(),
|
arch: "arm".into(),
|
||||||
|
@ -3,7 +3,12 @@ use crate::spec::{base, Target, TargetOptions};
|
|||||||
pub fn target() -> Target {
|
pub fn target() -> Target {
|
||||||
Target {
|
Target {
|
||||||
llvm_target: "armv5te-unknown-linux-uclibcgnueabi".into(),
|
llvm_target: "armv5te-unknown-linux-uclibcgnueabi".into(),
|
||||||
|
metadata: crate::spec::TargetMetadata {
|
||||||
description: None,
|
description: None,
|
||||||
|
tier: None,
|
||||||
|
host_tools: None,
|
||||||
|
std: None,
|
||||||
|
},
|
||||||
pointer_width: 32,
|
pointer_width: 32,
|
||||||
data_layout: "e-m:e-p:32:32-Fi8-i64:64-v128:64:128-a:0:32-n32-S64".into(),
|
data_layout: "e-m:e-p:32:32-Fi8-i64:64-v128:64:128-a:0:32-n32-S64".into(),
|
||||||
arch: "arm".into(),
|
arch: "arm".into(),
|
||||||
|
@ -3,7 +3,12 @@ use crate::spec::{base, Target, TargetOptions};
|
|||||||
pub fn target() -> Target {
|
pub fn target() -> Target {
|
||||||
Target {
|
Target {
|
||||||
llvm_target: "armv6-unknown-freebsd-gnueabihf".into(),
|
llvm_target: "armv6-unknown-freebsd-gnueabihf".into(),
|
||||||
|
metadata: crate::spec::TargetMetadata {
|
||||||
description: None,
|
description: None,
|
||||||
|
tier: None,
|
||||||
|
host_tools: None,
|
||||||
|
std: None,
|
||||||
|
},
|
||||||
pointer_width: 32,
|
pointer_width: 32,
|
||||||
data_layout: "e-m:e-p:32:32-Fi8-i64:64-v128:64:128-a:0:32-n32-S64".into(),
|
data_layout: "e-m:e-p:32:32-Fi8-i64:64-v128:64:128-a:0:32-n32-S64".into(),
|
||||||
arch: "arm".into(),
|
arch: "arm".into(),
|
||||||
|
@ -3,7 +3,12 @@ use crate::spec::{base, Target, TargetOptions};
|
|||||||
pub fn target() -> Target {
|
pub fn target() -> Target {
|
||||||
Target {
|
Target {
|
||||||
llvm_target: "armv6-unknown-netbsdelf-eabihf".into(),
|
llvm_target: "armv6-unknown-netbsdelf-eabihf".into(),
|
||||||
|
metadata: crate::spec::TargetMetadata {
|
||||||
description: None,
|
description: None,
|
||||||
|
tier: None,
|
||||||
|
host_tools: None,
|
||||||
|
std: None,
|
||||||
|
},
|
||||||
pointer_width: 32,
|
pointer_width: 32,
|
||||||
data_layout: "e-m:e-p:32:32-Fi8-i64:64-v128:64:128-a:0:32-n32-S64".into(),
|
data_layout: "e-m:e-p:32:32-Fi8-i64:64-v128:64:128-a:0:32-n32-S64".into(),
|
||||||
arch: "arm".into(),
|
arch: "arm".into(),
|
||||||
|
@ -12,7 +12,12 @@ pub fn target() -> Target {
|
|||||||
|
|
||||||
Target {
|
Target {
|
||||||
llvm_target: "armv6k-none-eabihf".into(),
|
llvm_target: "armv6k-none-eabihf".into(),
|
||||||
|
metadata: crate::spec::TargetMetadata {
|
||||||
description: None,
|
description: None,
|
||||||
|
tier: None,
|
||||||
|
host_tools: None,
|
||||||
|
std: None,
|
||||||
|
},
|
||||||
pointer_width: 32,
|
pointer_width: 32,
|
||||||
data_layout: "e-m:e-p:32:32-Fi8-i64:64-v128:64:128-a:0:32-n32-S64".into(),
|
data_layout: "e-m:e-p:32:32-Fi8-i64:64-v128:64:128-a:0:32-n32-S64".into(),
|
||||||
arch: "arm".into(),
|
arch: "arm".into(),
|
||||||
|
@ -13,7 +13,12 @@ pub fn target() -> Target {
|
|||||||
base.add_pre_link_args(LinkerFlavor::Gnu(Cc::Yes, Lld::No), &["-march=armv7-a"]);
|
base.add_pre_link_args(LinkerFlavor::Gnu(Cc::Yes, Lld::No), &["-march=armv7-a"]);
|
||||||
Target {
|
Target {
|
||||||
llvm_target: "armv7-none-linux-android".into(),
|
llvm_target: "armv7-none-linux-android".into(),
|
||||||
|
metadata: crate::spec::TargetMetadata {
|
||||||
description: None,
|
description: None,
|
||||||
|
tier: None,
|
||||||
|
host_tools: None,
|
||||||
|
std: None,
|
||||||
|
},
|
||||||
pointer_width: 32,
|
pointer_width: 32,
|
||||||
data_layout: "e-m:e-p:32:32-Fi8-i64:64-v128:64:128-a:0:32-n32-S64".into(),
|
data_layout: "e-m:e-p:32:32-Fi8-i64:64-v128:64:128-a:0:32-n32-S64".into(),
|
||||||
arch: "arm".into(),
|
arch: "arm".into(),
|
||||||
|
@ -13,7 +13,12 @@ pub fn target() -> Target {
|
|||||||
|
|
||||||
Target {
|
Target {
|
||||||
llvm_target: "thumbv7a-vita-eabihf".into(),
|
llvm_target: "thumbv7a-vita-eabihf".into(),
|
||||||
|
metadata: crate::spec::TargetMetadata {
|
||||||
description: None,
|
description: None,
|
||||||
|
tier: None,
|
||||||
|
host_tools: None,
|
||||||
|
std: None,
|
||||||
|
},
|
||||||
pointer_width: 32,
|
pointer_width: 32,
|
||||||
data_layout: "e-m:e-p:32:32-Fi8-i64:64-v128:64:128-a:0:32-n32-S64".into(),
|
data_layout: "e-m:e-p:32:32-Fi8-i64:64-v128:64:128-a:0:32-n32-S64".into(),
|
||||||
arch: "arm".into(),
|
arch: "arm".into(),
|
||||||
|
@ -3,7 +3,12 @@ use crate::spec::{base, Target, TargetOptions};
|
|||||||
pub fn target() -> Target {
|
pub fn target() -> Target {
|
||||||
Target {
|
Target {
|
||||||
llvm_target: "armv7-unknown-freebsd-gnueabihf".into(),
|
llvm_target: "armv7-unknown-freebsd-gnueabihf".into(),
|
||||||
|
metadata: crate::spec::TargetMetadata {
|
||||||
description: None,
|
description: None,
|
||||||
|
tier: None,
|
||||||
|
host_tools: None,
|
||||||
|
std: None,
|
||||||
|
},
|
||||||
pointer_width: 32,
|
pointer_width: 32,
|
||||||
data_layout: "e-m:e-p:32:32-Fi8-i64:64-v128:64:128-a:0:32-n32-S64".into(),
|
data_layout: "e-m:e-p:32:32-Fi8-i64:64-v128:64:128-a:0:32-n32-S64".into(),
|
||||||
arch: "arm".into(),
|
arch: "arm".into(),
|
||||||
|
@ -6,7 +6,12 @@ use crate::spec::{base, Target, TargetOptions};
|
|||||||
pub fn target() -> Target {
|
pub fn target() -> Target {
|
||||||
Target {
|
Target {
|
||||||
llvm_target: "armv7-unknown-linux-gnueabi".into(),
|
llvm_target: "armv7-unknown-linux-gnueabi".into(),
|
||||||
|
metadata: crate::spec::TargetMetadata {
|
||||||
description: None,
|
description: None,
|
||||||
|
tier: None,
|
||||||
|
host_tools: None,
|
||||||
|
std: None,
|
||||||
|
},
|
||||||
pointer_width: 32,
|
pointer_width: 32,
|
||||||
data_layout: "e-m:e-p:32:32-Fi8-i64:64-v128:64:128-a:0:32-n32-S64".into(),
|
data_layout: "e-m:e-p:32:32-Fi8-i64:64-v128:64:128-a:0:32-n32-S64".into(),
|
||||||
arch: "arm".into(),
|
arch: "arm".into(),
|
||||||
|
@ -6,7 +6,12 @@ use crate::spec::{base, Target, TargetOptions};
|
|||||||
pub fn target() -> Target {
|
pub fn target() -> Target {
|
||||||
Target {
|
Target {
|
||||||
llvm_target: "armv7-unknown-linux-gnueabihf".into(),
|
llvm_target: "armv7-unknown-linux-gnueabihf".into(),
|
||||||
|
metadata: crate::spec::TargetMetadata {
|
||||||
description: None,
|
description: None,
|
||||||
|
tier: None,
|
||||||
|
host_tools: None,
|
||||||
|
std: None,
|
||||||
|
},
|
||||||
pointer_width: 32,
|
pointer_width: 32,
|
||||||
data_layout: "e-m:e-p:32:32-Fi8-i64:64-v128:64:128-a:0:32-n32-S64".into(),
|
data_layout: "e-m:e-p:32:32-Fi8-i64:64-v128:64:128-a:0:32-n32-S64".into(),
|
||||||
arch: "arm".into(),
|
arch: "arm".into(),
|
||||||
|
@ -11,7 +11,12 @@ pub fn target() -> Target {
|
|||||||
// to determine the calling convention and float ABI, and it doesn't
|
// to determine the calling convention and float ABI, and it doesn't
|
||||||
// support the "musleabi" value.
|
// support the "musleabi" value.
|
||||||
llvm_target: "armv7-unknown-linux-gnueabi".into(),
|
llvm_target: "armv7-unknown-linux-gnueabi".into(),
|
||||||
|
metadata: crate::spec::TargetMetadata {
|
||||||
description: None,
|
description: None,
|
||||||
|
tier: None,
|
||||||
|
host_tools: None,
|
||||||
|
std: None,
|
||||||
|
},
|
||||||
pointer_width: 32,
|
pointer_width: 32,
|
||||||
data_layout: "e-m:e-p:32:32-Fi8-i64:64-v128:64:128-a:0:32-n32-S64".into(),
|
data_layout: "e-m:e-p:32:32-Fi8-i64:64-v128:64:128-a:0:32-n32-S64".into(),
|
||||||
arch: "arm".into(),
|
arch: "arm".into(),
|
||||||
|
@ -8,7 +8,12 @@ pub fn target() -> Target {
|
|||||||
// uses it to determine the calling convention and float ABI, and LLVM
|
// uses it to determine the calling convention and float ABI, and LLVM
|
||||||
// doesn't support the "musleabihf" value.
|
// doesn't support the "musleabihf" value.
|
||||||
llvm_target: "armv7-unknown-linux-gnueabihf".into(),
|
llvm_target: "armv7-unknown-linux-gnueabihf".into(),
|
||||||
|
metadata: crate::spec::TargetMetadata {
|
||||||
description: None,
|
description: None,
|
||||||
|
tier: None,
|
||||||
|
host_tools: None,
|
||||||
|
std: None,
|
||||||
|
},
|
||||||
pointer_width: 32,
|
pointer_width: 32,
|
||||||
data_layout: "e-m:e-p:32:32-Fi8-i64:64-v128:64:128-a:0:32-n32-S64".into(),
|
data_layout: "e-m:e-p:32:32-Fi8-i64:64-v128:64:128-a:0:32-n32-S64".into(),
|
||||||
arch: "arm".into(),
|
arch: "arm".into(),
|
||||||
|
@ -9,7 +9,12 @@ pub fn target() -> Target {
|
|||||||
Target {
|
Target {
|
||||||
// LLVM 15 doesn't support OpenHarmony yet, use a linux target instead.
|
// LLVM 15 doesn't support OpenHarmony yet, use a linux target instead.
|
||||||
llvm_target: "armv7-unknown-linux-gnueabi".into(),
|
llvm_target: "armv7-unknown-linux-gnueabi".into(),
|
||||||
|
metadata: crate::spec::TargetMetadata {
|
||||||
description: None,
|
description: None,
|
||||||
|
tier: None,
|
||||||
|
host_tools: None,
|
||||||
|
std: None,
|
||||||
|
},
|
||||||
pointer_width: 32,
|
pointer_width: 32,
|
||||||
data_layout: "e-m:e-p:32:32-Fi8-i64:64-v128:64:128-a:0:32-n32-S64".into(),
|
data_layout: "e-m:e-p:32:32-Fi8-i64:64-v128:64:128-a:0:32-n32-S64".into(),
|
||||||
arch: "arm".into(),
|
arch: "arm".into(),
|
||||||
|
@ -7,7 +7,12 @@ pub fn target() -> Target {
|
|||||||
let base = base::linux_uclibc::opts();
|
let base = base::linux_uclibc::opts();
|
||||||
Target {
|
Target {
|
||||||
llvm_target: "armv7-unknown-linux-gnueabi".into(),
|
llvm_target: "armv7-unknown-linux-gnueabi".into(),
|
||||||
|
metadata: crate::spec::TargetMetadata {
|
||||||
description: None,
|
description: None,
|
||||||
|
tier: None,
|
||||||
|
host_tools: None,
|
||||||
|
std: None,
|
||||||
|
},
|
||||||
pointer_width: 32,
|
pointer_width: 32,
|
||||||
data_layout: "e-m:e-p:32:32-Fi8-i64:64-v128:64:128-a:0:32-n32-S64".into(),
|
data_layout: "e-m:e-p:32:32-Fi8-i64:64-v128:64:128-a:0:32-n32-S64".into(),
|
||||||
arch: "arm".into(),
|
arch: "arm".into(),
|
||||||
|
@ -7,7 +7,12 @@ pub fn target() -> Target {
|
|||||||
let base = base::linux_uclibc::opts();
|
let base = base::linux_uclibc::opts();
|
||||||
Target {
|
Target {
|
||||||
llvm_target: "armv7-unknown-linux-gnueabihf".into(),
|
llvm_target: "armv7-unknown-linux-gnueabihf".into(),
|
||||||
|
metadata: crate::spec::TargetMetadata {
|
||||||
description: None,
|
description: None,
|
||||||
|
tier: None,
|
||||||
|
host_tools: None,
|
||||||
|
std: None,
|
||||||
|
},
|
||||||
pointer_width: 32,
|
pointer_width: 32,
|
||||||
data_layout: "e-m:e-p:32:32-Fi8-i64:64-v128:64:128-a:0:32-n32-S64".into(),
|
data_layout: "e-m:e-p:32:32-Fi8-i64:64-v128:64:128-a:0:32-n32-S64".into(),
|
||||||
arch: "arm".into(),
|
arch: "arm".into(),
|
||||||
|
@ -3,7 +3,12 @@ use crate::spec::{base, Target, TargetOptions};
|
|||||||
pub fn target() -> Target {
|
pub fn target() -> Target {
|
||||||
Target {
|
Target {
|
||||||
llvm_target: "armv7-unknown-netbsdelf-eabihf".into(),
|
llvm_target: "armv7-unknown-netbsdelf-eabihf".into(),
|
||||||
|
metadata: crate::spec::TargetMetadata {
|
||||||
description: None,
|
description: None,
|
||||||
|
tier: None,
|
||||||
|
host_tools: None,
|
||||||
|
std: None,
|
||||||
|
},
|
||||||
pointer_width: 32,
|
pointer_width: 32,
|
||||||
data_layout: "e-m:e-p:32:32-Fi8-i64:64-v128:64:128-a:0:32-n32-S64".into(),
|
data_layout: "e-m:e-p:32:32-Fi8-i64:64-v128:64:128-a:0:32-n32-S64".into(),
|
||||||
arch: "arm".into(),
|
arch: "arm".into(),
|
||||||
|
@ -3,7 +3,12 @@ use crate::spec::{base, Target, TargetOptions};
|
|||||||
pub fn target() -> Target {
|
pub fn target() -> Target {
|
||||||
Target {
|
Target {
|
||||||
llvm_target: "armv7-unknown-linux-gnueabihf".into(),
|
llvm_target: "armv7-unknown-linux-gnueabihf".into(),
|
||||||
|
metadata: crate::spec::TargetMetadata {
|
||||||
description: None,
|
description: None,
|
||||||
|
tier: None,
|
||||||
|
host_tools: None,
|
||||||
|
std: None,
|
||||||
|
},
|
||||||
pointer_width: 32,
|
pointer_width: 32,
|
||||||
data_layout: "e-m:e-p:32:32-Fi8-i64:64-v128:64:128-a:0:32-n32-S64".into(),
|
data_layout: "e-m:e-p:32:32-Fi8-i64:64-v128:64:128-a:0:32-n32-S64".into(),
|
||||||
arch: "arm".into(),
|
arch: "arm".into(),
|
||||||
|
@ -4,7 +4,12 @@ pub fn target() -> Target {
|
|||||||
let base = base::solid::opts("asp3");
|
let base = base::solid::opts("asp3");
|
||||||
Target {
|
Target {
|
||||||
llvm_target: "armv7a-none-eabi".into(),
|
llvm_target: "armv7a-none-eabi".into(),
|
||||||
|
metadata: crate::spec::TargetMetadata {
|
||||||
description: None,
|
description: None,
|
||||||
|
tier: None,
|
||||||
|
host_tools: None,
|
||||||
|
std: None,
|
||||||
|
},
|
||||||
pointer_width: 32,
|
pointer_width: 32,
|
||||||
data_layout: "e-m:e-p:32:32-Fi8-i64:64-v128:64:128-a:0:32-n32-S64".into(),
|
data_layout: "e-m:e-p:32:32-Fi8-i64:64-v128:64:128-a:0:32-n32-S64".into(),
|
||||||
arch: "arm".into(),
|
arch: "arm".into(),
|
||||||
|
@ -4,7 +4,12 @@ pub fn target() -> Target {
|
|||||||
let base = base::solid::opts("asp3");
|
let base = base::solid::opts("asp3");
|
||||||
Target {
|
Target {
|
||||||
llvm_target: "armv7a-none-eabihf".into(),
|
llvm_target: "armv7a-none-eabihf".into(),
|
||||||
|
metadata: crate::spec::TargetMetadata {
|
||||||
description: None,
|
description: None,
|
||||||
|
tier: None,
|
||||||
|
host_tools: None,
|
||||||
|
std: None,
|
||||||
|
},
|
||||||
pointer_width: 32,
|
pointer_width: 32,
|
||||||
data_layout: "e-m:e-p:32:32-Fi8-i64:64-v128:64:128-a:0:32-n32-S64".into(),
|
data_layout: "e-m:e-p:32:32-Fi8-i64:64-v128:64:128-a:0:32-n32-S64".into(),
|
||||||
arch: "arm".into(),
|
arch: "arm".into(),
|
||||||
|
@ -32,7 +32,12 @@ pub fn target() -> Target {
|
|||||||
};
|
};
|
||||||
Target {
|
Target {
|
||||||
llvm_target: "armv7a-none-eabi".into(),
|
llvm_target: "armv7a-none-eabi".into(),
|
||||||
|
metadata: crate::spec::TargetMetadata {
|
||||||
description: None,
|
description: None,
|
||||||
|
tier: None,
|
||||||
|
host_tools: None,
|
||||||
|
std: None,
|
||||||
|
},
|
||||||
pointer_width: 32,
|
pointer_width: 32,
|
||||||
data_layout: "e-m:e-p:32:32-Fi8-i64:64-v128:64:128-a:0:32-n32-S64".into(),
|
data_layout: "e-m:e-p:32:32-Fi8-i64:64-v128:64:128-a:0:32-n32-S64".into(),
|
||||||
arch: "arm".into(),
|
arch: "arm".into(),
|
||||||
|
@ -24,7 +24,12 @@ pub fn target() -> Target {
|
|||||||
};
|
};
|
||||||
Target {
|
Target {
|
||||||
llvm_target: "armv7a-none-eabihf".into(),
|
llvm_target: "armv7a-none-eabihf".into(),
|
||||||
|
metadata: crate::spec::TargetMetadata {
|
||||||
description: None,
|
description: None,
|
||||||
|
tier: None,
|
||||||
|
host_tools: None,
|
||||||
|
std: None,
|
||||||
|
},
|
||||||
pointer_width: 32,
|
pointer_width: 32,
|
||||||
data_layout: "e-m:e-p:32:32-Fi8-i64:64-v128:64:128-a:0:32-n32-S64".into(),
|
data_layout: "e-m:e-p:32:32-Fi8-i64:64-v128:64:128-a:0:32-n32-S64".into(),
|
||||||
arch: "arm".into(),
|
arch: "arm".into(),
|
||||||
|
@ -5,7 +5,12 @@ pub fn target() -> Target {
|
|||||||
let arch = Arch::Armv7k;
|
let arch = Arch::Armv7k;
|
||||||
Target {
|
Target {
|
||||||
llvm_target: "armv7k-apple-watchos".into(),
|
llvm_target: "armv7k-apple-watchos".into(),
|
||||||
|
metadata: crate::spec::TargetMetadata {
|
||||||
description: None,
|
description: None,
|
||||||
|
tier: None,
|
||||||
|
host_tools: None,
|
||||||
|
std: None,
|
||||||
|
},
|
||||||
pointer_width: 32,
|
pointer_width: 32,
|
||||||
data_layout: "e-m:o-p:32:32-Fi8-i64:64-a:0:32-n32-S128".into(),
|
data_layout: "e-m:o-p:32:32-Fi8-i64:64-a:0:32-n32-S128".into(),
|
||||||
arch: arch.target_arch(),
|
arch: arch.target_arch(),
|
||||||
|
@ -5,7 +5,12 @@ use crate::spec::{Cc, LinkerFlavor, Lld, PanicStrategy, RelocModel, Target, Targ
|
|||||||
pub fn target() -> Target {
|
pub fn target() -> Target {
|
||||||
Target {
|
Target {
|
||||||
llvm_target: "armv7r-none-eabi".into(),
|
llvm_target: "armv7r-none-eabi".into(),
|
||||||
|
metadata: crate::spec::TargetMetadata {
|
||||||
description: None,
|
description: None,
|
||||||
|
tier: None,
|
||||||
|
host_tools: None,
|
||||||
|
std: None,
|
||||||
|
},
|
||||||
pointer_width: 32,
|
pointer_width: 32,
|
||||||
data_layout: "e-m:e-p:32:32-Fi8-i64:64-v128:64:128-a:0:32-n32-S64".into(),
|
data_layout: "e-m:e-p:32:32-Fi8-i64:64-v128:64:128-a:0:32-n32-S64".into(),
|
||||||
arch: "arm".into(),
|
arch: "arm".into(),
|
||||||
|
@ -5,7 +5,12 @@ use crate::spec::{Cc, LinkerFlavor, Lld, PanicStrategy, RelocModel, Target, Targ
|
|||||||
pub fn target() -> Target {
|
pub fn target() -> Target {
|
||||||
Target {
|
Target {
|
||||||
llvm_target: "armv7r-none-eabihf".into(),
|
llvm_target: "armv7r-none-eabihf".into(),
|
||||||
|
metadata: crate::spec::TargetMetadata {
|
||||||
description: None,
|
description: None,
|
||||||
|
tier: None,
|
||||||
|
host_tools: None,
|
||||||
|
std: None,
|
||||||
|
},
|
||||||
pointer_width: 32,
|
pointer_width: 32,
|
||||||
data_layout: "e-m:e-p:32:32-Fi8-i64:64-v128:64:128-a:0:32-n32-S64".into(),
|
data_layout: "e-m:e-p:32:32-Fi8-i64:64-v128:64:128-a:0:32-n32-S64".into(),
|
||||||
arch: "arm".into(),
|
arch: "arm".into(),
|
||||||
|
@ -5,7 +5,12 @@ pub fn target() -> Target {
|
|||||||
let arch = Arch::Armv7s;
|
let arch = Arch::Armv7s;
|
||||||
Target {
|
Target {
|
||||||
llvm_target: ios_llvm_target(arch).into(),
|
llvm_target: ios_llvm_target(arch).into(),
|
||||||
|
metadata: crate::spec::TargetMetadata {
|
||||||
description: None,
|
description: None,
|
||||||
|
tier: None,
|
||||||
|
host_tools: None,
|
||||||
|
std: None,
|
||||||
|
},
|
||||||
pointer_width: 32,
|
pointer_width: 32,
|
||||||
data_layout: "e-m:o-p:32:32-Fi8-f64:32:64-v64:32:64-v128:32:128-a:0:32-n32-S32".into(),
|
data_layout: "e-m:o-p:32:32-Fi8-f64:32:64-v64:32:64-v128:32:128-a:0:32-n32-S32".into(),
|
||||||
arch: arch.target_arch(),
|
arch: arch.target_arch(),
|
||||||
|
@ -5,7 +5,12 @@ use crate::spec::{Cc, LinkerFlavor, Lld, PanicStrategy, RelocModel, Target, Targ
|
|||||||
pub fn target() -> Target {
|
pub fn target() -> Target {
|
||||||
Target {
|
Target {
|
||||||
llvm_target: "armv8r-none-eabihf".into(),
|
llvm_target: "armv8r-none-eabihf".into(),
|
||||||
|
metadata: crate::spec::TargetMetadata {
|
||||||
description: None,
|
description: None,
|
||||||
|
tier: None,
|
||||||
|
host_tools: None,
|
||||||
|
std: None,
|
||||||
|
},
|
||||||
pointer_width: 32,
|
pointer_width: 32,
|
||||||
data_layout: "e-m:e-p:32:32-Fi8-i64:64-v128:64:128-a:0:32-n32-S64".into(),
|
data_layout: "e-m:e-p:32:32-Fi8-i64:64-v128:64:128-a:0:32-n32-S64".into(),
|
||||||
arch: "arm".into(),
|
arch: "arm".into(),
|
||||||
|
@ -4,7 +4,12 @@ use crate::{abi::Endian, spec::base};
|
|||||||
pub fn target() -> Target {
|
pub fn target() -> Target {
|
||||||
Target {
|
Target {
|
||||||
llvm_target: "bpfeb".into(),
|
llvm_target: "bpfeb".into(),
|
||||||
|
metadata: crate::spec::TargetMetadata {
|
||||||
description: None,
|
description: None,
|
||||||
|
tier: None,
|
||||||
|
host_tools: None,
|
||||||
|
std: None,
|
||||||
|
},
|
||||||
data_layout: "E-m:e-p:64:64-i64:64-i128:128-n32:64-S128".into(),
|
data_layout: "E-m:e-p:64:64-i64:64-i128:128-n32:64-S128".into(),
|
||||||
pointer_width: 64,
|
pointer_width: 64,
|
||||||
arch: "bpf".into(),
|
arch: "bpf".into(),
|
||||||
|
@ -4,7 +4,12 @@ use crate::{abi::Endian, spec::base};
|
|||||||
pub fn target() -> Target {
|
pub fn target() -> Target {
|
||||||
Target {
|
Target {
|
||||||
llvm_target: "bpfel".into(),
|
llvm_target: "bpfel".into(),
|
||||||
|
metadata: crate::spec::TargetMetadata {
|
||||||
description: None,
|
description: None,
|
||||||
|
tier: None,
|
||||||
|
host_tools: None,
|
||||||
|
std: None,
|
||||||
|
},
|
||||||
data_layout: "e-m:e-p:64:64-i64:64-i128:128-n32:64-S128".into(),
|
data_layout: "e-m:e-p:64:64-i64:64-i128:128-n32:64-S128".into(),
|
||||||
pointer_width: 64,
|
pointer_width: 64,
|
||||||
arch: "bpf".into(),
|
arch: "bpf".into(),
|
||||||
|
@ -6,7 +6,7 @@ pub fn target() -> Target {
|
|||||||
Target {
|
Target {
|
||||||
//https://github.com/llvm/llvm-project/blob/8b76aea8d8b1b71f6220bc2845abc749f18a19b7/clang/lib/Basic/Targets/CSKY.h
|
//https://github.com/llvm/llvm-project/blob/8b76aea8d8b1b71f6220bc2845abc749f18a19b7/clang/lib/Basic/Targets/CSKY.h
|
||||||
llvm_target: "csky-unknown-linux-gnuabiv2".into(),
|
llvm_target: "csky-unknown-linux-gnuabiv2".into(),
|
||||||
description: None,
|
metadata: crate::spec::TargetMetadata { description:None, tier: None, host_tools: None, std: None },
|
||||||
pointer_width: 32,
|
pointer_width: 32,
|
||||||
data_layout: "e-m:e-S32-p:32:32-i32:32:32-i64:32:32-f32:32:32-f64:32:32-v64:32:32-v128:32:32-a:0:32-Fi32-n32".into(),
|
data_layout: "e-m:e-S32-p:32:32-i32:32:32-i64:32:32-f32:32:32-f64:32:32-v64:32:32-v128:32:32-a:0:32-Fi32-n32".into(),
|
||||||
arch: "csky".into(),
|
arch: "csky".into(),
|
||||||
|
@ -6,7 +6,7 @@ pub fn target() -> Target {
|
|||||||
Target {
|
Target {
|
||||||
//https://github.com/llvm/llvm-project/blob/8b76aea8d8b1b71f6220bc2845abc749f18a19b7/clang/lib/Basic/Targets/CSKY.h
|
//https://github.com/llvm/llvm-project/blob/8b76aea8d8b1b71f6220bc2845abc749f18a19b7/clang/lib/Basic/Targets/CSKY.h
|
||||||
llvm_target: "csky-unknown-linux-gnuabiv2".into(),
|
llvm_target: "csky-unknown-linux-gnuabiv2".into(),
|
||||||
description: None,
|
metadata: crate::spec::TargetMetadata { description:None, tier: None, host_tools: None, std: None },
|
||||||
pointer_width: 32,
|
pointer_width: 32,
|
||||||
data_layout: "e-m:e-S32-p:32:32-i32:32:32-i64:32:32-f32:32:32-f64:32:32-v64:32:32-v128:32:32-a:0:32-Fi32-n32".into(),
|
data_layout: "e-m:e-S32-p:32:32-i32:32:32-i64:32:32-f32:32:32-f64:32:32-v64:32:32-v128:32:32-a:0:32-Fi32-n32".into(),
|
||||||
arch: "csky".into(),
|
arch: "csky".into(),
|
||||||
|
@ -15,7 +15,12 @@ pub fn target() -> Target {
|
|||||||
|
|
||||||
Target {
|
Target {
|
||||||
llvm_target: "hexagon-unknown-linux-musl".into(),
|
llvm_target: "hexagon-unknown-linux-musl".into(),
|
||||||
|
metadata: crate::spec::TargetMetadata {
|
||||||
description: None,
|
description: None,
|
||||||
|
tier: None,
|
||||||
|
host_tools: None,
|
||||||
|
std: None,
|
||||||
|
},
|
||||||
pointer_width: 32,
|
pointer_width: 32,
|
||||||
data_layout: concat!(
|
data_layout: concat!(
|
||||||
"e-m:e-p:32:32:32-a:0-n16:32-i64:64:64-i32:32",
|
"e-m:e-p:32:32:32-a:0-n16:32-i64:64:64-i32:32",
|
||||||
|
@ -3,7 +3,12 @@ use crate::spec::{PanicStrategy, Target, TargetOptions};
|
|||||||
pub fn target() -> Target {
|
pub fn target() -> Target {
|
||||||
Target {
|
Target {
|
||||||
llvm_target: "hexagon-unknown-none-elf".into(),
|
llvm_target: "hexagon-unknown-none-elf".into(),
|
||||||
|
metadata: crate::spec::TargetMetadata {
|
||||||
description: None,
|
description: None,
|
||||||
|
tier: None,
|
||||||
|
host_tools: None,
|
||||||
|
std: None,
|
||||||
|
},
|
||||||
pointer_width: 32,
|
pointer_width: 32,
|
||||||
data_layout: concat!(
|
data_layout: concat!(
|
||||||
"e-m:e-p:32:32:32-a:0-n16:32-i64:64:64-i32:32",
|
"e-m:e-p:32:32:32-a:0-n16:32-i64:64:64-i32:32",
|
||||||
|
@ -11,7 +11,12 @@ pub fn target() -> Target {
|
|||||||
// This is required for the target to pick the right
|
// This is required for the target to pick the right
|
||||||
// MACH-O commands, so we do too.
|
// MACH-O commands, so we do too.
|
||||||
llvm_target: ios_sim_llvm_target(arch).into(),
|
llvm_target: ios_sim_llvm_target(arch).into(),
|
||||||
|
metadata: crate::spec::TargetMetadata {
|
||||||
description: None,
|
description: None,
|
||||||
|
tier: None,
|
||||||
|
host_tools: None,
|
||||||
|
std: None,
|
||||||
|
},
|
||||||
pointer_width: 32,
|
pointer_width: 32,
|
||||||
data_layout: "e-m:o-p:32:32-p270:32:32-p271:32:32-p272:64:64-\
|
data_layout: "e-m:o-p:32:32-p270:32:32-p271:32:32-p272:64:64-\
|
||||||
i128:128-f64:32:64-f80:128-n8:16:32-S128"
|
i128:128-f64:32:64-f80:128-n8:16:32-S128"
|
||||||
|
@ -3,7 +3,12 @@ use crate::spec::{base, Cc, LinkerFlavor, Lld, StackProbeType, Target, TargetOpt
|
|||||||
pub fn target() -> Target {
|
pub fn target() -> Target {
|
||||||
Target {
|
Target {
|
||||||
llvm_target: "i586-pc-unknown".into(),
|
llvm_target: "i586-pc-unknown".into(),
|
||||||
|
metadata: crate::spec::TargetMetadata {
|
||||||
description: None,
|
description: None,
|
||||||
|
tier: None,
|
||||||
|
host_tools: None,
|
||||||
|
std: None,
|
||||||
|
},
|
||||||
pointer_width: 32,
|
pointer_width: 32,
|
||||||
data_layout: "e-m:e-p:32:32-p270:32:32-p271:32:32-p272:64:64-\
|
data_layout: "e-m:e-p:32:32-p270:32:32-p271:32:32-p272:64:64-\
|
||||||
i128:128-f64:32:64-f80:32-n8:16:32-S128"
|
i128:128-f64:32:64-f80:32-n8:16:32-S128"
|
||||||
|
@ -8,7 +8,12 @@ pub fn target() -> Target {
|
|||||||
|
|
||||||
Target {
|
Target {
|
||||||
llvm_target: "i586-unknown-netbsdelf".into(),
|
llvm_target: "i586-unknown-netbsdelf".into(),
|
||||||
|
metadata: crate::spec::TargetMetadata {
|
||||||
description: None,
|
description: None,
|
||||||
|
tier: None,
|
||||||
|
host_tools: None,
|
||||||
|
std: None,
|
||||||
|
},
|
||||||
pointer_width: 32,
|
pointer_width: 32,
|
||||||
data_layout: "e-m:e-p:32:32-p270:32:32-p271:32:32-p272:64:64-\
|
data_layout: "e-m:e-p:32:32-p270:32:32-p271:32:32-p272:64:64-\
|
||||||
i128:128-f64:32:64-f80:32-n8:16:32-S128"
|
i128:128-f64:32:64-f80:32-n8:16:32-S128"
|
||||||
|
@ -16,7 +16,12 @@ pub fn target() -> Target {
|
|||||||
//
|
//
|
||||||
// While ld64 doesn't understand i686, LLVM does.
|
// While ld64 doesn't understand i686, LLVM does.
|
||||||
llvm_target: macos_llvm_target(Arch::I686).into(),
|
llvm_target: macos_llvm_target(Arch::I686).into(),
|
||||||
|
metadata: crate::spec::TargetMetadata {
|
||||||
description: None,
|
description: None,
|
||||||
|
tier: None,
|
||||||
|
host_tools: None,
|
||||||
|
std: None,
|
||||||
|
},
|
||||||
pointer_width: 32,
|
pointer_width: 32,
|
||||||
data_layout: "e-m:o-p:32:32-p270:32:32-p271:32:32-p272:64:64-\
|
data_layout: "e-m:o-p:32:32-p270:32:32-p271:32:32-p272:64:64-\
|
||||||
i128:128-f64:32:64-f80:128-n8:16:32-S128"
|
i128:128-f64:32:64-f80:128-n8:16:32-S128"
|
||||||
|
@ -15,7 +15,12 @@ pub fn target() -> Target {
|
|||||||
|
|
||||||
Target {
|
Target {
|
||||||
llvm_target: "i686-linux-android".into(),
|
llvm_target: "i686-linux-android".into(),
|
||||||
|
metadata: crate::spec::TargetMetadata {
|
||||||
description: None,
|
description: None,
|
||||||
|
tier: None,
|
||||||
|
host_tools: None,
|
||||||
|
std: None,
|
||||||
|
},
|
||||||
pointer_width: 32,
|
pointer_width: 32,
|
||||||
data_layout: "e-m:e-p:32:32-p270:32:32-p271:32:32-p272:64:64-\
|
data_layout: "e-m:e-p:32:32-p270:32:32-p271:32:32-p272:64:64-\
|
||||||
i128:128-f64:32:64-f80:32-n8:16:32-S128"
|
i128:128-f64:32:64-f80:32-n8:16:32-S128"
|
||||||
|
@ -17,7 +17,12 @@ pub fn target() -> Target {
|
|||||||
|
|
||||||
Target {
|
Target {
|
||||||
llvm_target: "i686-pc-windows-gnu".into(),
|
llvm_target: "i686-pc-windows-gnu".into(),
|
||||||
|
metadata: crate::spec::TargetMetadata {
|
||||||
description: None,
|
description: None,
|
||||||
|
tier: None,
|
||||||
|
host_tools: None,
|
||||||
|
std: None,
|
||||||
|
},
|
||||||
pointer_width: 32,
|
pointer_width: 32,
|
||||||
data_layout: "e-m:x-p:32:32-p270:32:32-p271:32:32-p272:64:64-\
|
data_layout: "e-m:x-p:32:32-p270:32:32-p271:32:32-p272:64:64-\
|
||||||
i64:64-i128:128-f80:32-n8:16:32-a:0:32-S32"
|
i64:64-i128:128-f80:32-n8:16:32-a:0:32-S32"
|
||||||
|
@ -16,7 +16,12 @@ pub fn target() -> Target {
|
|||||||
|
|
||||||
Target {
|
Target {
|
||||||
llvm_target: "i686-pc-windows-gnu".into(),
|
llvm_target: "i686-pc-windows-gnu".into(),
|
||||||
|
metadata: crate::spec::TargetMetadata {
|
||||||
description: None,
|
description: None,
|
||||||
|
tier: None,
|
||||||
|
host_tools: None,
|
||||||
|
std: None,
|
||||||
|
},
|
||||||
pointer_width: 32,
|
pointer_width: 32,
|
||||||
data_layout: "e-m:x-p:32:32-p270:32:32-p271:32:32-p272:64:64-\
|
data_layout: "e-m:x-p:32:32-p270:32:32-p271:32:32-p272:64:64-\
|
||||||
i64:64-i128:128-f80:32-n8:16:32-a:0:32-S32"
|
i64:64-i128:128-f80:32-n8:16:32-a:0:32-S32"
|
||||||
|
@ -23,7 +23,12 @@ pub fn target() -> Target {
|
|||||||
|
|
||||||
Target {
|
Target {
|
||||||
llvm_target: "i686-pc-windows-msvc".into(),
|
llvm_target: "i686-pc-windows-msvc".into(),
|
||||||
|
metadata: crate::spec::TargetMetadata {
|
||||||
description: Some("32-bit MSVC (Windows 7+)".into()),
|
description: Some("32-bit MSVC (Windows 7+)".into()),
|
||||||
|
tier: Some(1),
|
||||||
|
host_tools: Some(true),
|
||||||
|
std: Some(true),
|
||||||
|
},
|
||||||
pointer_width: 32,
|
pointer_width: 32,
|
||||||
data_layout: "e-m:x-p:32:32-p270:32:32-p271:32:32-p272:64:64-\
|
data_layout: "e-m:x-p:32:32-p270:32:32-p271:32:32-p272:64:64-\
|
||||||
i64:64-i128:128-f80:128-n8:16:32-a:0:32-S32"
|
i64:64-i128:128-f80:128-n8:16:32-a:0:32-S32"
|
||||||
|
@ -9,7 +9,12 @@ pub fn target() -> Target {
|
|||||||
|
|
||||||
Target {
|
Target {
|
||||||
llvm_target: "i686-unknown-freebsd".into(),
|
llvm_target: "i686-unknown-freebsd".into(),
|
||||||
|
metadata: crate::spec::TargetMetadata {
|
||||||
description: None,
|
description: None,
|
||||||
|
tier: None,
|
||||||
|
host_tools: None,
|
||||||
|
std: None,
|
||||||
|
},
|
||||||
pointer_width: 32,
|
pointer_width: 32,
|
||||||
data_layout: "e-m:e-p:32:32-p270:32:32-p271:32:32-p272:64:64-\
|
data_layout: "e-m:e-p:32:32-p270:32:32-p271:32:32-p272:64:64-\
|
||||||
i128:128-f64:32:64-f80:32-n8:16:32-S128"
|
i128:128-f64:32:64-f80:32-n8:16:32-S128"
|
||||||
|
@ -9,7 +9,12 @@ pub fn target() -> Target {
|
|||||||
|
|
||||||
Target {
|
Target {
|
||||||
llvm_target: "i686-unknown-haiku".into(),
|
llvm_target: "i686-unknown-haiku".into(),
|
||||||
|
metadata: crate::spec::TargetMetadata {
|
||||||
description: None,
|
description: None,
|
||||||
|
tier: None,
|
||||||
|
host_tools: None,
|
||||||
|
std: None,
|
||||||
|
},
|
||||||
pointer_width: 32,
|
pointer_width: 32,
|
||||||
data_layout: "e-m:e-p:32:32-p270:32:32-p271:32:32-p272:64:64-\
|
data_layout: "e-m:e-p:32:32-p270:32:32-p271:32:32-p272:64:64-\
|
||||||
i128:128-f64:32:64-f80:32-n8:16:32-S128"
|
i128:128-f64:32:64-f80:32-n8:16:32-S128"
|
||||||
|
@ -9,7 +9,12 @@ pub fn target() -> Target {
|
|||||||
|
|
||||||
Target {
|
Target {
|
||||||
llvm_target: "i686-unknown-hurd-gnu".into(),
|
llvm_target: "i686-unknown-hurd-gnu".into(),
|
||||||
|
metadata: crate::spec::TargetMetadata {
|
||||||
description: None,
|
description: None,
|
||||||
|
tier: None,
|
||||||
|
host_tools: None,
|
||||||
|
std: None,
|
||||||
|
},
|
||||||
pointer_width: 32,
|
pointer_width: 32,
|
||||||
data_layout: "e-m:e-p:32:32-p270:32:32-p271:32:32-p272:64:64-\
|
data_layout: "e-m:e-p:32:32-p270:32:32-p271:32:32-p272:64:64-\
|
||||||
i128:128-f64:32:64-f80:32-n8:16:32-S128"
|
i128:128-f64:32:64-f80:32-n8:16:32-S128"
|
||||||
|
@ -10,7 +10,12 @@ pub fn target() -> Target {
|
|||||||
|
|
||||||
Target {
|
Target {
|
||||||
llvm_target: "i686-unknown-linux-gnu".into(),
|
llvm_target: "i686-unknown-linux-gnu".into(),
|
||||||
|
metadata: crate::spec::TargetMetadata {
|
||||||
description: None,
|
description: None,
|
||||||
|
tier: None,
|
||||||
|
host_tools: None,
|
||||||
|
std: None,
|
||||||
|
},
|
||||||
pointer_width: 32,
|
pointer_width: 32,
|
||||||
data_layout: "e-m:e-p:32:32-p270:32:32-p271:32:32-p272:64:64-\
|
data_layout: "e-m:e-p:32:32-p270:32:32-p271:32:32-p272:64:64-\
|
||||||
i128:128-f64:32:64-f80:32-n8:16:32-S128"
|
i128:128-f64:32:64-f80:32-n8:16:32-S128"
|
||||||
|
@ -23,7 +23,12 @@ pub fn target() -> Target {
|
|||||||
|
|
||||||
Target {
|
Target {
|
||||||
llvm_target: "i686-unknown-linux-musl".into(),
|
llvm_target: "i686-unknown-linux-musl".into(),
|
||||||
|
metadata: crate::spec::TargetMetadata {
|
||||||
description: None,
|
description: None,
|
||||||
|
tier: None,
|
||||||
|
host_tools: None,
|
||||||
|
std: None,
|
||||||
|
},
|
||||||
pointer_width: 32,
|
pointer_width: 32,
|
||||||
data_layout: "e-m:e-p:32:32-p270:32:32-p271:32:32-p272:64:64-\
|
data_layout: "e-m:e-p:32:32-p270:32:32-p271:32:32-p272:64:64-\
|
||||||
i128:128-f64:32:64-f80:32-n8:16:32-S128"
|
i128:128-f64:32:64-f80:32-n8:16:32-S128"
|
||||||
|
@ -9,7 +9,12 @@ pub fn target() -> Target {
|
|||||||
|
|
||||||
Target {
|
Target {
|
||||||
llvm_target: "i686-unknown-netbsdelf".into(),
|
llvm_target: "i686-unknown-netbsdelf".into(),
|
||||||
|
metadata: crate::spec::TargetMetadata {
|
||||||
description: None,
|
description: None,
|
||||||
|
tier: None,
|
||||||
|
host_tools: None,
|
||||||
|
std: None,
|
||||||
|
},
|
||||||
pointer_width: 32,
|
pointer_width: 32,
|
||||||
data_layout: "e-m:e-p:32:32-p270:32:32-p271:32:32-p272:64:64-\
|
data_layout: "e-m:e-p:32:32-p270:32:32-p271:32:32-p272:64:64-\
|
||||||
i128:128-f64:32:64-f80:32-n8:16:32-S128"
|
i128:128-f64:32:64-f80:32-n8:16:32-S128"
|
||||||
|
@ -9,7 +9,12 @@ pub fn target() -> Target {
|
|||||||
|
|
||||||
Target {
|
Target {
|
||||||
llvm_target: "i686-unknown-openbsd".into(),
|
llvm_target: "i686-unknown-openbsd".into(),
|
||||||
|
metadata: crate::spec::TargetMetadata {
|
||||||
description: None,
|
description: None,
|
||||||
|
tier: None,
|
||||||
|
host_tools: None,
|
||||||
|
std: None,
|
||||||
|
},
|
||||||
pointer_width: 32,
|
pointer_width: 32,
|
||||||
data_layout: "e-m:e-p:32:32-p270:32:32-p271:32:32-p272:64:64-\
|
data_layout: "e-m:e-p:32:32-p270:32:32-p271:32:32-p272:64:64-\
|
||||||
i128:128-f64:32:64-f80:32-n8:16:32-S128"
|
i128:128-f64:32:64-f80:32-n8:16:32-S128"
|
||||||
|
Some files were not shown because too many files have changed in this diff Show More
Loading…
Reference in New Issue
Block a user