From 13427e2ae745f9c5a665174b245d6dcebcf159d9 Mon Sep 17 00:00:00 2001 From: Mark Wielaard Date: Fri, 11 Feb 2022 17:50:47 +0100 Subject: [PATCH] arm64: Mismatch detected between RDMA and atomics features check_hwcaps contains code that tries to enforce Arm architecture's rules for the support of features (FEAT_) on v8.1. Specifically for v8.1 FEAT_RDM and FEAT_LSE (named FEAT_ATOMICS in Valgrind) are mandatory. But an v8.x implementation can implement any of the v8.{x+1} features, or not, as it chooses. Also under QEMU, which tends to implement features on an "as-demanded" basis, you sometimes end up with an odd combination of features, which does not strictly comply with the architecture. So ignore the "v8.x" architecture levels, and look only only at "is feature X present or not". Unless the features are really not independent. https://bugs.kde.org/show_bug.cgi?id=449494 --- VEX/priv/main_main.c | 5 ----- 1 file changed, 5 deletions(-) diff --git a/VEX/priv/main_main.c b/VEX/priv/main_main.c index 1253cf588..482047c7a 100644 --- a/VEX/priv/main_main.c +++ b/VEX/priv/main_main.c @@ -2163,11 +2163,6 @@ static void check_hwcaps ( VexArch arch, UInt hwcaps ) if (have_fp16 != have_vfp16) invalid_hwcaps(arch, hwcaps, "Mismatch detected between scalar and vector FP16 features.\n"); - Bool have_rdm = ((hwcaps & VEX_HWCAPS_ARM64_RDM) != 0); - Bool have_atomics = ((hwcaps & VEX_HWCAPS_ARM64_ATOMICS) != 0); - if (have_rdm != have_atomics) - invalid_hwcaps(arch, hwcaps, - "Mismatch detected between RDMA and atomics features.\n"); return; } -- 2.11.4.GIT