Skip to content

Commit

Permalink
Rollup merge of rust-lang#136953 - ken-matsui:import-target-metadata,…
Browse files Browse the repository at this point in the history
… r=workingjubilee

rustc_target: import TargetMetadata
  • Loading branch information
workingjubilee authored Feb 16, 2025
2 parents 5c8ccb2 + b660382 commit b044822
Show file tree
Hide file tree
Showing 274 changed files with 679 additions and 568 deletions.
Original file line number Diff line number Diff line change
@@ -1,11 +1,11 @@
use crate::spec::base::apple::{Arch, TargetAbi, base};
use crate::spec::{FramePointer, SanitizerSet, Target, TargetOptions};
use crate::spec::{FramePointer, SanitizerSet, Target, TargetMetadata, TargetOptions};

pub(crate) fn target() -> Target {
let (opts, llvm_target, arch) = base("macos", Arch::Arm64, TargetAbi::Normal);
Target {
llvm_target,
metadata: crate::spec::TargetMetadata {
metadata: TargetMetadata {
description: Some("ARM64 Apple macOS (11.0+, Big Sur+)".into()),
tier: Some(1),
host_tools: Some(true),
Expand Down
4 changes: 2 additions & 2 deletions compiler/rustc_target/src/spec/targets/aarch64_apple_ios.rs
Original file line number Diff line number Diff line change
@@ -1,11 +1,11 @@
use crate::spec::base::apple::{Arch, TargetAbi, base};
use crate::spec::{FramePointer, SanitizerSet, Target, TargetOptions};
use crate::spec::{FramePointer, SanitizerSet, Target, TargetMetadata, TargetOptions};

pub(crate) fn target() -> Target {
let (opts, llvm_target, arch) = base("ios", Arch::Arm64, TargetAbi::Normal);
Target {
llvm_target,
metadata: crate::spec::TargetMetadata {
metadata: TargetMetadata {
description: Some("ARM64 Apple iOS".into()),
tier: Some(2),
host_tools: Some(false),
Expand Down
Original file line number Diff line number Diff line change
@@ -1,11 +1,11 @@
use crate::spec::base::apple::{Arch, TargetAbi, base};
use crate::spec::{FramePointer, SanitizerSet, Target, TargetOptions};
use crate::spec::{FramePointer, SanitizerSet, Target, TargetMetadata, TargetOptions};

pub(crate) fn target() -> Target {
let (opts, llvm_target, arch) = base("ios", Arch::Arm64, TargetAbi::MacCatalyst);
Target {
llvm_target,
metadata: crate::spec::TargetMetadata {
metadata: TargetMetadata {
description: Some("ARM64 Apple Mac Catalyst".into()),
tier: Some(2),
host_tools: Some(false),
Expand Down
Original file line number Diff line number Diff line change
@@ -1,11 +1,11 @@
use crate::spec::base::apple::{Arch, TargetAbi, base};
use crate::spec::{FramePointer, SanitizerSet, Target, TargetOptions};
use crate::spec::{FramePointer, SanitizerSet, Target, TargetMetadata, TargetOptions};

pub(crate) fn target() -> Target {
let (opts, llvm_target, arch) = base("ios", Arch::Arm64, TargetAbi::Simulator);
Target {
llvm_target,
metadata: crate::spec::TargetMetadata {
metadata: TargetMetadata {
description: Some("ARM64 Apple iOS Simulator".into()),
tier: Some(2),
host_tools: Some(false),
Expand Down
4 changes: 2 additions & 2 deletions compiler/rustc_target/src/spec/targets/aarch64_apple_tvos.rs
Original file line number Diff line number Diff line change
@@ -1,11 +1,11 @@
use crate::spec::base::apple::{Arch, TargetAbi, base};
use crate::spec::{FramePointer, Target, TargetOptions};
use crate::spec::{FramePointer, Target, TargetMetadata, TargetOptions};

pub(crate) fn target() -> Target {
let (opts, llvm_target, arch) = base("tvos", Arch::Arm64, TargetAbi::Normal);
Target {
llvm_target,
metadata: crate::spec::TargetMetadata {
metadata: TargetMetadata {
description: Some("ARM64 Apple tvOS".into()),
tier: Some(3),
host_tools: Some(false),
Expand Down
Original file line number Diff line number Diff line change
@@ -1,11 +1,11 @@
use crate::spec::base::apple::{Arch, TargetAbi, base};
use crate::spec::{FramePointer, Target, TargetOptions};
use crate::spec::{FramePointer, Target, TargetMetadata, TargetOptions};

pub(crate) fn target() -> Target {
let (opts, llvm_target, arch) = base("tvos", Arch::Arm64, TargetAbi::Simulator);
Target {
llvm_target,
metadata: crate::spec::TargetMetadata {
metadata: TargetMetadata {
description: Some("ARM64 Apple tvOS Simulator".into()),
tier: Some(3),
host_tools: Some(false),
Expand Down
Original file line number Diff line number Diff line change
@@ -1,11 +1,11 @@
use crate::spec::base::apple::{Arch, TargetAbi, base};
use crate::spec::{FramePointer, SanitizerSet, Target, TargetOptions};
use crate::spec::{FramePointer, SanitizerSet, Target, TargetMetadata, TargetOptions};

pub(crate) fn target() -> Target {
let (opts, llvm_target, arch) = base("visionos", Arch::Arm64, TargetAbi::Normal);
Target {
llvm_target,
metadata: crate::spec::TargetMetadata {
metadata: TargetMetadata {
description: Some("ARM64 Apple visionOS".into()),
tier: Some(3),
host_tools: Some(false),
Expand Down
Original file line number Diff line number Diff line change
@@ -1,11 +1,11 @@
use crate::spec::base::apple::{Arch, TargetAbi, base};
use crate::spec::{FramePointer, SanitizerSet, Target, TargetOptions};
use crate::spec::{FramePointer, SanitizerSet, Target, TargetMetadata, TargetOptions};

pub(crate) fn target() -> Target {
let (opts, llvm_target, arch) = base("visionos", Arch::Arm64, TargetAbi::Simulator);
Target {
llvm_target,
metadata: crate::spec::TargetMetadata {
metadata: TargetMetadata {
description: Some("ARM64 Apple visionOS simulator".into()),
tier: Some(3),
host_tools: Some(false),
Expand Down
Original file line number Diff line number Diff line change
@@ -1,11 +1,11 @@
use crate::spec::base::apple::{Arch, TargetAbi, base};
use crate::spec::{Target, TargetOptions};
use crate::spec::{Target, TargetMetadata, TargetOptions};

pub(crate) fn target() -> Target {
let (opts, llvm_target, arch) = base("watchos", Arch::Arm64, TargetAbi::Normal);
Target {
llvm_target,
metadata: crate::spec::TargetMetadata {
metadata: TargetMetadata {
description: Some("ARM64 Apple watchOS".into()),
tier: Some(3),
host_tools: Some(false),
Expand Down
Original file line number Diff line number Diff line change
@@ -1,11 +1,11 @@
use crate::spec::base::apple::{Arch, TargetAbi, base};
use crate::spec::{FramePointer, Target, TargetOptions};
use crate::spec::{FramePointer, Target, TargetMetadata, TargetOptions};

pub(crate) fn target() -> Target {
let (opts, llvm_target, arch) = base("watchos", Arch::Arm64, TargetAbi::Simulator);
Target {
llvm_target,
metadata: crate::spec::TargetMetadata {
metadata: TargetMetadata {
description: Some("ARM64 Apple watchOS Simulator".into()),
tier: Some(3),
host_tools: Some(false),
Expand Down
Original file line number Diff line number Diff line change
@@ -1,11 +1,11 @@
use rustc_abi::Endian;

use crate::spec::{StackProbeType, Target, TargetOptions, base};
use crate::spec::{StackProbeType, Target, TargetMetadata, TargetOptions, base};

pub(crate) fn target() -> Target {
Target {
llvm_target: "aarch64_be-unknown-linux-gnu".into(),
metadata: crate::spec::TargetMetadata {
metadata: TargetMetadata {
description: Some("ARM64 Linux (big-endian)".into()),
tier: Some(3),
host_tools: Some(true),
Expand Down
Original file line number Diff line number Diff line change
@@ -1,14 +1,14 @@
use rustc_abi::Endian;

use crate::spec::{StackProbeType, Target, TargetOptions, base};
use crate::spec::{StackProbeType, Target, TargetMetadata, TargetOptions, base};

pub(crate) fn target() -> Target {
let mut base = base::linux_gnu::opts();
base.max_atomic_width = Some(128);

Target {
llvm_target: "aarch64_be-unknown-linux-gnu_ilp32".into(),
metadata: crate::spec::TargetMetadata {
metadata: TargetMetadata {
description: Some("ARM64 Linux (big-endian, ILP32 ABI)".into()),
tier: Some(3),
host_tools: Some(true),
Expand Down
Original file line number Diff line number Diff line change
@@ -1,11 +1,11 @@
use rustc_abi::Endian;

use crate::spec::{StackProbeType, Target, TargetOptions, base};
use crate::spec::{StackProbeType, Target, TargetMetadata, TargetOptions, base};

pub(crate) fn target() -> Target {
Target {
llvm_target: "aarch64_be-unknown-netbsd".into(),
metadata: crate::spec::TargetMetadata {
metadata: TargetMetadata {
description: Some("ARM64 NetBSD (big-endian)".into()),
tier: Some(3),
host_tools: Some(true),
Expand Down
Original file line number Diff line number Diff line change
@@ -1,10 +1,10 @@
use crate::spec::{RelocModel, StackProbeType, Target, TargetOptions, base};
use crate::spec::{RelocModel, StackProbeType, Target, TargetMetadata, TargetOptions, base};

pub(crate) fn target() -> Target {
let base = base::solid::opts("asp3");
Target {
llvm_target: "aarch64-unknown-none".into(),
metadata: crate::spec::TargetMetadata {
metadata: TargetMetadata {
description: Some("ARM64 SOLID with TOPPERS/ASP3".into()),
tier: Some(3),
host_tools: Some(false),
Expand Down
Original file line number Diff line number Diff line change
@@ -1,12 +1,12 @@
use crate::spec::{SanitizerSet, StackProbeType, Target, TargetOptions, base};
use crate::spec::{SanitizerSet, StackProbeType, Target, TargetMetadata, TargetOptions, base};

// See https://developer.android.com/ndk/guides/abis.html#arm64-v8a
// for target ABI requirements.

pub(crate) fn target() -> Target {
Target {
llvm_target: "aarch64-linux-android".into(),
metadata: crate::spec::TargetMetadata {
metadata: TargetMetadata {
description: Some("ARM64 Android".into()),
tier: Some(2),
host_tools: Some(false),
Expand Down
Original file line number Diff line number Diff line change
@@ -1,5 +1,6 @@
use crate::spec::{
Cc, LinkerFlavor, Lld, PanicStrategy, RelroLevel, StackProbeType, Target, TargetOptions,
Cc, LinkerFlavor, Lld, PanicStrategy, RelroLevel, StackProbeType, Target, TargetMetadata,
TargetOptions,
};

const LINKER_SCRIPT: &str = include_str!("./aarch64_nintendo_switch_freestanding_linker_script.ld");
Expand All @@ -8,7 +9,7 @@ const LINKER_SCRIPT: &str = include_str!("./aarch64_nintendo_switch_freestanding
pub(crate) fn target() -> Target {
Target {
llvm_target: "aarch64-unknown-none".into(),
metadata: crate::spec::TargetMetadata {
metadata: TargetMetadata {
description: Some("ARM64 Nintendo Switch, Horizon".into()),
tier: Some(3),
host_tools: Some(false),
Expand Down
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
use crate::spec::{Target, base};
use crate::spec::{Target, TargetMetadata, base};

pub(crate) fn target() -> Target {
let mut base = base::windows_gnullvm::opts();
Expand All @@ -8,7 +8,7 @@ pub(crate) fn target() -> Target {

Target {
llvm_target: "aarch64-pc-windows-gnu".into(),
metadata: crate::spec::TargetMetadata {
metadata: TargetMetadata {
description: Some("ARM64 MinGW (Windows 10+), LLVM ABI".into()),
tier: Some(2),
host_tools: Some(false),
Expand Down
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
use crate::spec::{Target, base};
use crate::spec::{Target, TargetMetadata, base};

pub(crate) fn target() -> Target {
let mut base = base::windows_msvc::opts();
Expand All @@ -7,7 +7,7 @@ pub(crate) fn target() -> Target {

Target {
llvm_target: "aarch64-pc-windows-msvc".into(),
metadata: crate::spec::TargetMetadata {
metadata: TargetMetadata {
description: Some("ARM64 Windows MSVC".into()),
tier: Some(2),
host_tools: Some(true),
Expand Down
Original file line number Diff line number Diff line change
@@ -1,9 +1,9 @@
use crate::spec::{SanitizerSet, StackProbeType, Target, TargetOptions, base};
use crate::spec::{SanitizerSet, StackProbeType, Target, TargetMetadata, TargetOptions, base};

pub(crate) fn target() -> Target {
Target {
llvm_target: "aarch64-unknown-freebsd".into(),
metadata: crate::spec::TargetMetadata {
metadata: TargetMetadata {
description: Some("ARM64 FreeBSD".into()),
tier: Some(3),
host_tools: Some(true),
Expand Down
Original file line number Diff line number Diff line change
@@ -1,9 +1,9 @@
use crate::spec::{SanitizerSet, StackProbeType, Target, TargetOptions, base};
use crate::spec::{SanitizerSet, StackProbeType, Target, TargetMetadata, TargetOptions, base};

pub(crate) fn target() -> Target {
Target {
llvm_target: "aarch64-unknown-fuchsia".into(),
metadata: crate::spec::TargetMetadata {
metadata: TargetMetadata {
description: Some("ARM64 Fuchsia".into()),
tier: Some(2),
host_tools: Some(false),
Expand Down
Original file line number Diff line number Diff line change
@@ -1,9 +1,9 @@
use crate::spec::{StackProbeType, Target, TargetOptions, base};
use crate::spec::{StackProbeType, Target, TargetMetadata, TargetOptions, base};

pub(crate) fn target() -> Target {
Target {
llvm_target: "aarch64-unknown-hermit".into(),
metadata: crate::spec::TargetMetadata {
metadata: TargetMetadata {
description: Some("ARM64 Hermit".into()),
tier: Some(3),
host_tools: Some(false),
Expand Down
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
use crate::spec::{Cc, LinkerFlavor, SanitizerSet, Target, base};
use crate::spec::{Cc, LinkerFlavor, SanitizerSet, Target, TargetMetadata, base};

pub(crate) fn target() -> Target {
let mut base = base::illumos::opts();
Expand All @@ -11,7 +11,7 @@ pub(crate) fn target() -> Target {
// LLVM does not currently have a separate illumos target,
// so we still pass Solaris to it
llvm_target: "aarch64-unknown-solaris2.11".into(),
metadata: crate::spec::TargetMetadata {
metadata: TargetMetadata {
description: Some("ARM64 illumos".into()),
tier: Some(3),
host_tools: Some(true),
Expand Down
Original file line number Diff line number Diff line change
@@ -1,9 +1,9 @@
use crate::spec::{SanitizerSet, StackProbeType, Target, TargetOptions, base};
use crate::spec::{SanitizerSet, StackProbeType, Target, TargetMetadata, TargetOptions, base};

pub(crate) fn target() -> Target {
Target {
llvm_target: "aarch64-unknown-linux-gnu".into(),
metadata: crate::spec::TargetMetadata {
metadata: TargetMetadata {
description: Some("ARM64 Linux (kernel 4.1, glibc 2.17+)".into()),
tier: Some(1),
host_tools: Some(true),
Expand Down
Original file line number Diff line number Diff line change
@@ -1,9 +1,9 @@
use crate::spec::{StackProbeType, Target, TargetOptions, base};
use crate::spec::{StackProbeType, Target, TargetMetadata, TargetOptions, base};

pub(crate) fn target() -> Target {
Target {
llvm_target: "aarch64-unknown-linux-gnu_ilp32".into(),
metadata: crate::spec::TargetMetadata {
metadata: TargetMetadata {
description: Some("ARM64 Linux (ILP32 ABI)".into()),
tier: Some(3),
host_tools: Some(true),
Expand Down
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
use crate::spec::{SanitizerSet, StackProbeType, Target, TargetOptions, base};
use crate::spec::{SanitizerSet, StackProbeType, Target, TargetMetadata, TargetOptions, base};

pub(crate) fn target() -> Target {
let mut base = base::linux_musl::opts();
Expand All @@ -17,7 +17,7 @@ pub(crate) fn target() -> Target {

Target {
llvm_target: "aarch64-unknown-linux-musl".into(),
metadata: crate::spec::TargetMetadata {
metadata: TargetMetadata {
description: Some("ARM64 Linux with musl 1.2.3".into()),
tier: Some(2),
host_tools: Some(true),
Expand Down
Original file line number Diff line number Diff line change
@@ -1,12 +1,12 @@
use crate::spec::{SanitizerSet, StackProbeType, Target, TargetOptions, base};
use crate::spec::{SanitizerSet, StackProbeType, Target, TargetMetadata, TargetOptions, base};

pub(crate) fn target() -> Target {
let mut base = base::linux_ohos::opts();
base.max_atomic_width = Some(128);

Target {
llvm_target: "aarch64-unknown-linux-ohos".into(),
metadata: crate::spec::TargetMetadata {
metadata: TargetMetadata {
description: Some("ARM64 OpenHarmony".into()),
tier: Some(2),
host_tools: Some(false),
Expand Down
Original file line number Diff line number Diff line change
@@ -1,9 +1,9 @@
use crate::spec::{StackProbeType, Target, TargetOptions, base};
use crate::spec::{StackProbeType, Target, TargetMetadata, TargetOptions, base};

pub(crate) fn target() -> Target {
Target {
llvm_target: "aarch64-unknown-netbsd".into(),
metadata: crate::spec::TargetMetadata {
metadata: TargetMetadata {
description: Some("ARM64 NetBSD".into()),
tier: Some(3),
host_tools: Some(true),
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,7 @@

use crate::spec::{
Cc, LinkerFlavor, Lld, PanicStrategy, RelocModel, SanitizerSet, StackProbeType, Target,
TargetOptions,
TargetMetadata, TargetOptions,
};

pub(crate) fn target() -> Target {
Expand All @@ -31,7 +31,7 @@ pub(crate) fn target() -> Target {
};
Target {
llvm_target: "aarch64-unknown-none".into(),
metadata: crate::spec::TargetMetadata {
metadata: TargetMetadata {
description: Some("Bare ARM64, hardfloat".into()),
tier: Some(2),
host_tools: Some(false),
Expand Down
Loading

0 comments on commit b044822

Please sign in to comment.