Skip to content

Commit

Permalink
Browse files Browse the repository at this point in the history
tcg: Split out tcg/oversized-guest.h
Move a use of TARGET_LONG_BITS out of tcg/tcg.h.
Include the new file only where required.

Reviewed-by: Philippe Mathieu-Daudé <philmd@linaro.org>
Signed-off-by: Richard Henderson <richard.henderson@linaro.org>
  • Loading branch information
rth7680 committed Jun 5, 2023
1 parent d3ae5f5 commit 70f168f
Show file tree
Hide file tree
Showing 7 changed files with 28 additions and 11 deletions.
1 change: 1 addition & 0 deletions accel/tcg/cputlb.c
Expand Up @@ -40,6 +40,7 @@
#include "qemu/plugin-memory.h"
#endif
#include "tcg/tcg-ldst.h"
#include "tcg/oversized-guest.h"
#include "exec/helper-proto.h"

/* DEBUG defines, enable DEBUG_TLB_LOG to log to the CPU_LOG_MMU target */
Expand Down
1 change: 1 addition & 0 deletions accel/tcg/tcg-all.c
Expand Up @@ -28,6 +28,7 @@
#include "exec/replay-core.h"
#include "sysemu/cpu-timers.h"
#include "tcg/tcg.h"
#include "tcg/oversized-guest.h"
#include "qapi/error.h"
#include "qemu/error-report.h"
#include "qemu/accel.h"
Expand Down
3 changes: 1 addition & 2 deletions include/exec/cpu_ldst.h
Expand Up @@ -326,8 +326,7 @@ static inline void clear_helper_retaddr(void)

#else

/* Needed for TCG_OVERSIZED_GUEST */
#include "tcg/tcg.h"
#include "tcg/oversized-guest.h"

static inline target_ulong tlb_read_idx(const CPUTLBEntry *entry,
MMUAccessType access_type)
Expand Down
23 changes: 23 additions & 0 deletions include/tcg/oversized-guest.h
@@ -0,0 +1,23 @@
/* SPDX-License-Identifier: MIT */
/*
* Define TCG_OVERSIZED_GUEST
* Copyright (c) 2008 Fabrice Bellard
*/

#ifndef EXEC_TCG_OVERSIZED_GUEST_H
#define EXEC_TCG_OVERSIZED_GUEST_H

#include "tcg-target-reg-bits.h"
#include "cpu-param.h"

/*
* Oversized TCG guests make things like MTTCG hard
* as we can't use atomics for cputlb updates.
*/
#if TARGET_LONG_BITS > TCG_TARGET_REG_BITS
#define TCG_OVERSIZED_GUEST 1
#else
#define TCG_OVERSIZED_GUEST 0
#endif

#endif
9 changes: 0 additions & 9 deletions include/tcg/tcg.h
Expand Up @@ -59,15 +59,6 @@ typedef uint64_t tcg_target_ulong;
#error unsupported
#endif

/* Oversized TCG guests make things like MTTCG hard
* as we can't use atomics for cputlb updates.
*/
#if TARGET_LONG_BITS > TCG_TARGET_REG_BITS
#define TCG_OVERSIZED_GUEST 1
#else
#define TCG_OVERSIZED_GUEST 0
#endif

#if TCG_TARGET_NB_REGS <= 32
typedef uint32_t TCGRegSet;
#elif TCG_TARGET_NB_REGS <= 64
Expand Down
1 change: 1 addition & 0 deletions target/arm/ptw.c
Expand Up @@ -14,6 +14,7 @@
#include "cpu.h"
#include "internals.h"
#include "idau.h"
#include "tcg/oversized-guest.h"


typedef struct S1Translate {
Expand Down
1 change: 1 addition & 0 deletions target/riscv/cpu_helper.c
Expand Up @@ -31,6 +31,7 @@
#include "sysemu/cpu-timers.h"
#include "cpu_bits.h"
#include "debug.h"
#include "tcg/oversized-guest.h"

int riscv_cpu_mmu_index(CPURISCVState *env, bool ifetch)
{
Expand Down

0 comments on commit 70f168f

Please sign in to comment.