Skip to content

Commit 5efe6d6

Browse files
committed
rustc_target: aarch64: Remove deprecated FEAT_TME
ARM has withdrawn FEAT_TME https://developer.arm.com/documentation/102105/lb-05/ LLVM has dropped support for it recently as a result.
1 parent 42f4793 commit 5efe6d6

File tree

10 files changed

+3
-214
lines changed

10 files changed

+3
-214
lines changed

compiler/rustc_codegen_llvm/src/llvm_util.rs

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -243,6 +243,7 @@ pub(crate) fn to_llvm_features<'a>(sess: &Session, s: &'a str) -> Option<LLVMFea
243243
"fp16" => Some(LLVMFeature::new("fullfp16")),
244244
// Filter out features that are not supported by the current LLVM version
245245
"fpmr" => None, // only existed in 18
246+
"tme" => None, // Withdrawn by ARM; removed from LLVM
246247
s => Some(LLVMFeature::new(s)),
247248
}
248249
}

library/std/tests/run-time-detect.rs

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -106,7 +106,6 @@ fn aarch64_linux() {
106106
println!("sve2: {}", is_aarch64_feature_detected!("sve2"));
107107
println!("sve2p1: {}", is_aarch64_feature_detected!("sve2p1"));
108108
println!("sve: {}", is_aarch64_feature_detected!("sve"));
109-
println!("tme: {}", is_aarch64_feature_detected!("tme"));
110109
println!("wfxt: {}", is_aarch64_feature_detected!("wfxt"));
111110
// tidy-alphabetical-end
112111
}

library/std_detect/src/detect/os/aarch64.rs

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -84,7 +84,6 @@ pub(crate) fn parse_system_registers(
8484

8585
// ID_AA64ISAR0_EL1 - Instruction Set Attribute Register 0
8686
enable_feature(Feature::pmull, bits_shift(aa64isar0, 7, 4) >= 2);
87-
enable_feature(Feature::tme, bits_shift(aa64isar0, 27, 24) == 1);
8887
enable_feature(Feature::lse, bits_shift(aa64isar0, 23, 20) >= 2);
8988
enable_feature(Feature::crc, bits_shift(aa64isar0, 19, 16) >= 1);
9089

library/std_detect/tests/cpu-detection.rs

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -85,7 +85,6 @@ fn aarch64_linux() {
8585
println!("rcpc2: {}", is_aarch64_feature_detected!("rcpc2"));
8686
println!("rcpc3: {}", is_aarch64_feature_detected!("rcpc3"));
8787
println!("dotprod: {}", is_aarch64_feature_detected!("dotprod"));
88-
println!("tme: {}", is_aarch64_feature_detected!("tme"));
8988
println!("fhm: {}", is_aarch64_feature_detected!("fhm"));
9089
println!("dit: {}", is_aarch64_feature_detected!("dit"));
9190
println!("flagm: {}", is_aarch64_feature_detected!("flagm"));
@@ -175,7 +174,6 @@ fn aarch64_bsd() {
175174
println!("rdm: {:?}", is_aarch64_feature_detected!("rdm"));
176175
println!("rcpc: {:?}", is_aarch64_feature_detected!("rcpc"));
177176
println!("dotprod: {:?}", is_aarch64_feature_detected!("dotprod"));
178-
println!("tme: {:?}", is_aarch64_feature_detected!("tme"));
179177
println!("paca: {:?}", is_aarch64_feature_detected!("paca"));
180178
println!("pacg: {:?}", is_aarch64_feature_detected!("pacg"));
181179
println!("aes: {:?}", is_aarch64_feature_detected!("aes"));

library/stdarch/ci/docker/aarch64-unknown-linux-gnu/Dockerfile

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -15,5 +15,4 @@ RUN apt-get update && apt-get install -y --no-install-recommends \
1515

1616
ENV CARGO_TARGET_AARCH64_UNKNOWN_LINUX_GNU_LINKER=aarch64-linux-gnu-gcc \
1717
CARGO_TARGET_AARCH64_UNKNOWN_LINUX_GNU_RUNNER="qemu-aarch64 -cpu max -L /usr/aarch64-linux-gnu" \
18-
OBJDUMP=aarch64-linux-gnu-objdump \
19-
STDARCH_TEST_SKIP_FEATURE=tme
18+
OBJDUMP=aarch64-linux-gnu-objdump

library/stdarch/ci/docker/aarch64_be-unknown-linux-gnu/Dockerfile

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -27,4 +27,3 @@ ENV AARCH64_BE_LIBC="${AARCH64_BE_TOOLCHAIN}/aarch64_be-none-linux-gnu/libc"
2727
ENV CARGO_TARGET_AARCH64_BE_UNKNOWN_LINUX_GNU_LINKER="${AARCH64_BE_TOOLCHAIN}/bin/aarch64_be-none-linux-gnu-gcc"
2828
ENV CARGO_TARGET_AARCH64_BE_UNKNOWN_LINUX_GNU_RUNNER="qemu-aarch64_be -cpu max -L ${AARCH64_BE_LIBC}"
2929
ENV OBJDUMP="${AARCH64_BE_TOOLCHAIN}/bin/aarch64_be-none-linux-gnu-objdump"
30-
ENV STDARCH_TEST_SKIP_FEATURE=tme

library/stdarch/crates/core_arch/src/aarch64/mod.rs

Lines changed: 0 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -21,10 +21,6 @@ mod neon;
2121
#[stable(feature = "neon_intrinsics", since = "1.59.0")]
2222
pub use self::neon::*;
2323

24-
mod tme;
25-
#[unstable(feature = "stdarch_aarch64_tme", issue = "117216")]
26-
pub use self::tme::*;
27-
2824
mod prefetch;
2925
#[unstable(feature = "stdarch_aarch64_prefetch", issue = "117217")]
3026
pub use self::prefetch::*;

library/stdarch/crates/core_arch/src/aarch64/tme.rs

Lines changed: 0 additions & 201 deletions
This file was deleted.

library/stdarch/crates/stdarch-test/src/disassembly.rs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -78,7 +78,7 @@ pub(crate) fn disassemble_myself() -> HashSet<Function> {
7878
let objdump = env::var("OBJDUMP").unwrap_or_else(|_| "objdump".to_string());
7979
let add_args = if cfg!(target_vendor = "apple") && cfg!(target_arch = "aarch64") {
8080
// Target features need to be enabled for LLVM objdump on Darwin ARM64
81-
vec!["--mattr=+v8.6a,+crypto,+tme"]
81+
vec!["--mattr=+v8.6a,+crypto"]
8282
} else if cfg!(any(target_arch = "riscv32", target_arch = "riscv64")) {
8383
vec!["--mattr=+zk,+zks,+zbc,+zbb"]
8484
} else {

library/stdarch/crates/stdarch-verify/tests/arm.rs

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -444,7 +444,6 @@ fn verify_all_signatures() {
444444
&& !rust.file.ends_with("v6.rs\"")
445445
&& !rust.file.ends_with("v7.rs\"")
446446
&& !rust.file.ends_with("v8.rs\"")
447-
&& !rust.file.ends_with("tme.rs\"")
448447
&& !rust.file.ends_with("mte.rs\"")
449448
&& !rust.file.ends_with("ex.rs\"")
450449
&& !skip_intrinsic_verify.contains(&rust.name)

0 commit comments

Comments
 (0)