Skip to content

Commit d2bd076

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 d2bd076

File tree

11 files changed

+2
-219
lines changed

11 files changed

+2
-219
lines changed

compiler/rustc_target/src/target_features.rs

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -337,8 +337,6 @@ static AARCH64_FEATURES: &[(&str, Stability, ImpliedFeatures)] = &[
337337
("sve2-sm4", Stable, &["sve2", "sm4"]),
338338
// FEAT_SVE2p1
339339
("sve2p1", Unstable(sym::aarch64_unstable_target_feature), &["sve2"]),
340-
// FEAT_TME
341-
("tme", Stable, &[]),
342340
(
343341
"v8.1a",
344342
Unstable(sym::aarch64_ver_target_feature),

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/arch/aarch64.rs

Lines changed: 0 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -90,7 +90,6 @@ features! {
9090
/// * `"sve2-sha3"` - FEAT_SVE2_SHA3
9191
/// * `"sve2-sm4"` - FEAT_SVE2_SM4
9292
/// * `"sve2p1"` - FEAT_SVE2p1
93-
/// * `"tme"` - FEAT_TME
9493
/// * `"wfxt"` - FEAT_WFxT
9594
///
9695
/// [docs]: https://developer.arm.com/documentation/ddi0487/latest
@@ -257,8 +256,6 @@ features! {
257256
/// FEAT_SVE_SHA3 (SVE2 SHA3 crypto)
258257
@FEATURE: #[stable(feature = "simd_aarch64", since = "1.60.0")] sve2_sm4: "sve2-sm4";
259258
/// FEAT_SVE_SM4 (SVE2 SM4 crypto)
260-
@FEATURE: #[stable(feature = "simd_aarch64", since = "1.60.0")] tme: "tme";
261-
/// FEAT_TME (Transactional Memory Extensions)
262259
@FEATURE: #[unstable(feature = "stdarch_aarch64_feature_detection", issue = "127764")] wfxt: "wfxt";
263260
/// FEAT_WFxT (WFET and WFIT Instructions)
264261
}

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 {

0 commit comments

Comments
 (0)