|
From: Florian K. <fk...@so...> - 2025-12-04 20:39:02
|
https://sourceware.org/cgit/valgrind/commit/?id=b08a821fc0b6030f49e80be759cf6907f7a62ce0 commit b08a821fc0b6030f49e80be759cf6907f7a62ce0 Author: Florian Krohm <fl...@ei...> Date: Thu Dec 4 20:38:24 2025 +0000 arm: Remove global arm_hwcaps and one FIXME. Followup to cd9d7d0d2edeef5ef37582c6d6fa55ca3c3bcccd Diff: --- VEX/priv/host_arm_defs.c | 4 +++- VEX/priv/host_arm_defs.h | 3 --- VEX/priv/host_arm_isel.c | 3 --- 3 files changed, 3 insertions(+), 7 deletions(-) diff --git a/VEX/priv/host_arm_defs.c b/VEX/priv/host_arm_defs.c index a838565a20..3ca8b22a5d 100644 --- a/VEX/priv/host_arm_defs.c +++ b/VEX/priv/host_arm_defs.c @@ -39,7 +39,7 @@ #include "host_generic_regs.h" #include "host_arm_defs.h" -UInt arm_hwcaps = 0; +static UInt arm_hwcaps; /* --------- Registers. --------- */ @@ -3080,6 +3080,8 @@ Int emit_ARMInstr ( /*MB_MOD*/Bool* is_profInc, vassert(mode64 == False); vassert(0 == (((HWord)buf) & 3)); + arm_hwcaps = archinfo_host->hwcaps; + switch (i->tag) { case ARMin_Alu: { UInt instr, subopc; diff --git a/VEX/priv/host_arm_defs.h b/VEX/priv/host_arm_defs.h index d6dbc4ee27..b8399075d9 100644 --- a/VEX/priv/host_arm_defs.h +++ b/VEX/priv/host_arm_defs.h @@ -32,9 +32,6 @@ #include "libvex.h" // VexArch #include "host_generic_regs.h" // HReg -extern UInt arm_hwcaps; - - /* --------- Registers. --------- */ #define ST_IN static inline diff --git a/VEX/priv/host_arm_isel.c b/VEX/priv/host_arm_isel.c index 90bc699fc4..71bf871c4f 100644 --- a/VEX/priv/host_arm_isel.c +++ b/VEX/priv/host_arm_isel.c @@ -6553,9 +6553,6 @@ HInstrArray* iselSB_ARM ( const IRSB* bb, /* guard against unexpected space regressions */ vassert(sizeof(ARMInstr) <= 28); - /* hwcaps should not change from one ISEL call to another. */ - arm_hwcaps = hwcaps_host; // JRS 2012 Mar 31: FIXME (RM) - /* Make up an initial environment to use. */ env = LibVEX_Alloc_inline(sizeof(ISelEnv)); env->vreg_ctr = 0; |