From d58fe4ccfa6417eb8440f49f487273376cd8560f Mon Sep 17 00:00:00 2001 From: Alexandros Lamprineas Date: Thu, 31 Oct 2024 09:59:16 +0000 Subject: [PATCH] [FMV][AArch64] Remove features which expose non exploitable runtime behavior. Feature dit provides independent timing for data processing instructions according to the value CPSR.DIT of the Current Program Status Register. The runtime detection in FMV does not examine the content of control registers, therefore such features are not suitable for runtime dispatch since they cannot be exploited in a meaningful way. See the ACLE patch for more info: https://github.com/ARM-software/acle/pull/355 Depends on https://github.com/llvm/llvm-project/pull/114387 --- SingleSource/UnitTests/AArch64/acle-fmv-features.c | 7 ------- .../UnitTests/AArch64/acle-fmv-features.reference_output | 1 - 2 files changed, 8 deletions(-) diff --git a/SingleSource/UnitTests/AArch64/acle-fmv-features.c b/SingleSource/UnitTests/AArch64/acle-fmv-features.c index 0385ec1958..dc5919d23b 100644 --- a/SingleSource/UnitTests/AArch64/acle-fmv-features.c +++ b/SingleSource/UnitTests/AArch64/acle-fmv-features.c @@ -162,12 +162,6 @@ CHECK(i8mm, i8mm, i8mm, false, { : : : "v0" ); }) -CHECK(dit, dit, dit, false, { - asm volatile ( - "msr DIT, x0" - : : : "x0" - ); -}) CHECK(fp16, fp16, fp16, false, { asm volatile ( "fmov h0, #0" @@ -409,7 +403,6 @@ int main(int, const char **) { check_dpb2(); check_bf16(); check_i8mm(); - check_dit(); check_fp16(); check_ssbs(); check_bti(); diff --git a/SingleSource/UnitTests/AArch64/acle-fmv-features.reference_output b/SingleSource/UnitTests/AArch64/acle-fmv-features.reference_output index 2c646c696c..40b9b4ce8b 100644 --- a/SingleSource/UnitTests/AArch64/acle-fmv-features.reference_output +++ b/SingleSource/UnitTests/AArch64/acle-fmv-features.reference_output @@ -14,7 +14,6 @@ dpb dpb2 bf16 i8mm -dit fp16 ssbs bti