From af6c47e192a085b889a96b88e82c6e029407da77 Mon Sep 17 00:00:00 2001 From: Richard Henderson Date: Tue, 23 Oct 2018 15:26:54 -0400 Subject: [PATCH] target/arm: Check HAVE_CMPXCHG128 at translate time Backports part of commit 62823083b8a2da8e126bb82b7b70f68eaa27b338 from qemu --- qemu/target/arm/helper-a64.c | 8 ++------ 1 file changed, 2 insertions(+), 6 deletions(-) diff --git a/qemu/target/arm/helper-a64.c b/qemu/target/arm/helper-a64.c index 5d812ea1..13b46cdd 100644 --- a/qemu/target/arm/helper-a64.c +++ b/qemu/target/arm/helper-a64.c @@ -686,9 +686,7 @@ void HELPER(casp_le_parallel)(CPUARMState *env, uint32_t rs, uint64_t addr, int mem_idx; TCGMemOpIdx oi; - if (!HAVE_CMPXCHG128) { - cpu_loop_exit_atomic(ENV_GET_CPU(env), ra); - } + assert(HAVE_CMPXCHG128); mem_idx = cpu_mmu_index(env, false); oi = make_memop_idx(MO_LEQ | MO_ALIGN_16, mem_idx); @@ -710,9 +708,7 @@ void HELPER(casp_be_parallel)(CPUARMState *env, uint32_t rs, uint64_t addr, int mem_idx; TCGMemOpIdx oi; - if (!HAVE_CMPXCHG128) { - cpu_loop_exit_atomic(ENV_GET_CPU(env), ra); - } + assert(HAVE_CMPXCHG128); mem_idx = cpu_mmu_index(env, false); oi = make_memop_idx(MO_LEQ | MO_ALIGN_16, mem_idx);