tcg: Split out tcg-target-mo.h
Reviewed-by: Philippe Mathieu-Daudé <philmd@linaro.org> Signed-off-by: Richard Henderson <richard.henderson@linaro.org>
This commit is contained in:
parent
93280b6738
commit
12f06532c8
@ -12,6 +12,7 @@
|
||||
#include "exec/exec-all.h"
|
||||
#include "exec/translation-block.h"
|
||||
#include "tb-internal.h"
|
||||
#include "tcg-target-mo.h"
|
||||
|
||||
/*
|
||||
* Access to the various translations structures need to be serialised
|
||||
|
12
tcg/aarch64/tcg-target-mo.h
Normal file
12
tcg/aarch64/tcg-target-mo.h
Normal file
@ -0,0 +1,12 @@
|
||||
/* SPDX-License-Identifier: GPL-2.0-or-later */
|
||||
/*
|
||||
* Define target-specific memory model
|
||||
* Copyright (c) 2013 Huawei Technologies Duesseldorf GmbH
|
||||
*/
|
||||
|
||||
#ifndef TCG_TARGET_MO_H
|
||||
#define TCG_TARGET_MO_H
|
||||
|
||||
#define TCG_TARGET_DEFAULT_MO 0
|
||||
|
||||
#endif
|
@ -47,6 +47,4 @@ typedef enum {
|
||||
|
||||
#define TCG_TARGET_NB_REGS 64
|
||||
|
||||
#define TCG_TARGET_DEFAULT_MO (0)
|
||||
|
||||
#endif /* AARCH64_TCG_TARGET_H */
|
||||
|
13
tcg/arm/tcg-target-mo.h
Normal file
13
tcg/arm/tcg-target-mo.h
Normal file
@ -0,0 +1,13 @@
|
||||
/* SPDX-License-Identifier: MIT */
|
||||
/*
|
||||
* Define target-specific memory model
|
||||
* Copyright (c) 2008 Fabrice Bellard
|
||||
* Copyright (c) 2008 Andrzej Zaborowski
|
||||
*/
|
||||
|
||||
#ifndef TCG_TARGET_MO_H
|
||||
#define TCG_TARGET_MO_H
|
||||
|
||||
#define TCG_TARGET_DEFAULT_MO 0
|
||||
|
||||
#endif
|
@ -70,6 +70,4 @@ typedef enum {
|
||||
|
||||
#define TCG_TARGET_NB_REGS 32
|
||||
|
||||
#define TCG_TARGET_DEFAULT_MO (0)
|
||||
|
||||
#endif
|
||||
|
19
tcg/i386/tcg-target-mo.h
Normal file
19
tcg/i386/tcg-target-mo.h
Normal file
@ -0,0 +1,19 @@
|
||||
/* SPDX-License-Identifier: MIT */
|
||||
/*
|
||||
* Define target-specific memory model
|
||||
* Copyright (c) 2008 Fabrice Bellard
|
||||
*/
|
||||
|
||||
#ifndef TCG_TARGET_MO_H
|
||||
#define TCG_TARGET_MO_H
|
||||
|
||||
/*
|
||||
* This defines the natural memory order supported by this architecture
|
||||
* before guarantees made by various barrier instructions.
|
||||
*
|
||||
* The x86 has a pretty strong memory ordering which only really
|
||||
* allows for some stores to be re-ordered after loads.
|
||||
*/
|
||||
#define TCG_TARGET_DEFAULT_MO (TCG_MO_ALL & ~TCG_MO_ST_LD)
|
||||
|
||||
#endif
|
@ -88,15 +88,4 @@ typedef enum {
|
||||
TCG_REG_CALL_STACK = TCG_REG_ESP
|
||||
} TCGReg;
|
||||
|
||||
/* This defines the natural memory order supported by this
|
||||
* architecture before guarantees made by various barrier
|
||||
* instructions.
|
||||
*
|
||||
* The x86 has a pretty strong memory ordering which only really
|
||||
* allows for some stores to be re-ordered after loads.
|
||||
*/
|
||||
#include "tcg/tcg-mo.h"
|
||||
|
||||
#define TCG_TARGET_DEFAULT_MO (TCG_MO_ALL & ~TCG_MO_ST_LD)
|
||||
|
||||
#endif
|
||||
|
12
tcg/loongarch64/tcg-target-mo.h
Normal file
12
tcg/loongarch64/tcg-target-mo.h
Normal file
@ -0,0 +1,12 @@
|
||||
/* SPDX-License-Identifier: MIT */
|
||||
/*
|
||||
* Define target-specific memory model
|
||||
* Copyright (c) 2021 WANG Xuerui <git@xen0n.name>
|
||||
*/
|
||||
|
||||
#ifndef TCG_TARGET_MO_H
|
||||
#define TCG_TARGET_MO_H
|
||||
|
||||
#define TCG_TARGET_DEFAULT_MO 0
|
||||
|
||||
#endif
|
@ -85,6 +85,4 @@ typedef enum {
|
||||
TCG_VEC_TMP0 = TCG_REG_V23,
|
||||
} TCGReg;
|
||||
|
||||
#define TCG_TARGET_DEFAULT_MO (0)
|
||||
|
||||
#endif /* LOONGARCH_TCG_TARGET_H */
|
||||
|
13
tcg/mips/tcg-target-mo.h
Normal file
13
tcg/mips/tcg-target-mo.h
Normal file
@ -0,0 +1,13 @@
|
||||
/* SPDX-License-Identifier: MIT */
|
||||
/*
|
||||
* Define target-specific memory model
|
||||
* Copyright (c) 2008-2009 Arnaud Patard <arnaud.patard@rtp-net.org>
|
||||
* Copyright (c) 2009 Aurelien Jarno <aurelien@aurel32.net>
|
||||
*/
|
||||
|
||||
#ifndef TCG_TARGET_MO_H
|
||||
#define TCG_TARGET_MO_H
|
||||
|
||||
#define TCG_TARGET_DEFAULT_MO 0
|
||||
|
||||
#endif
|
@ -70,6 +70,4 @@ typedef enum {
|
||||
TCG_AREG0 = TCG_REG_S8,
|
||||
} TCGReg;
|
||||
|
||||
#define TCG_TARGET_DEFAULT_MO 0
|
||||
|
||||
#endif
|
||||
|
12
tcg/ppc/tcg-target-mo.h
Normal file
12
tcg/ppc/tcg-target-mo.h
Normal file
@ -0,0 +1,12 @@
|
||||
/* SPDX-License-Identifier: MIT */
|
||||
/*
|
||||
* Define target-specific memory model
|
||||
* Copyright (c) 2008 Fabrice Bellard
|
||||
*/
|
||||
|
||||
#ifndef TCG_TARGET_MO_H
|
||||
#define TCG_TARGET_MO_H
|
||||
|
||||
#define TCG_TARGET_DEFAULT_MO 0
|
||||
|
||||
#endif
|
@ -53,6 +53,4 @@ typedef enum {
|
||||
TCG_AREG0 = TCG_REG_R27
|
||||
} TCGReg;
|
||||
|
||||
#define TCG_TARGET_DEFAULT_MO (0)
|
||||
|
||||
#endif
|
||||
|
12
tcg/riscv/tcg-target-mo.h
Normal file
12
tcg/riscv/tcg-target-mo.h
Normal file
@ -0,0 +1,12 @@
|
||||
/* SPDX-License-Identifier: MIT */
|
||||
/*
|
||||
* Define target-specific memory model
|
||||
* Copyright (c) 2018 SiFive, Inc
|
||||
*/
|
||||
|
||||
#ifndef TCG_TARGET_MO_H
|
||||
#define TCG_TARGET_MO_H
|
||||
|
||||
#define TCG_TARGET_DEFAULT_MO 0
|
||||
|
||||
#endif
|
@ -57,6 +57,4 @@ typedef enum {
|
||||
TCG_REG_TMP2 = TCG_REG_T4,
|
||||
} TCGReg;
|
||||
|
||||
#define TCG_TARGET_DEFAULT_MO (0)
|
||||
|
||||
#endif
|
||||
|
12
tcg/s390x/tcg-target-mo.h
Normal file
12
tcg/s390x/tcg-target-mo.h
Normal file
@ -0,0 +1,12 @@
|
||||
/* SPDX-License-Identifier: MIT */
|
||||
/*
|
||||
* Define target-specific memory model
|
||||
* Copyright (c) 2009 Ulrich Hecht <uli@suse.de>
|
||||
*/
|
||||
|
||||
#ifndef TCG_TARGET_MO_H
|
||||
#define TCG_TARGET_MO_H
|
||||
|
||||
#define TCG_TARGET_DEFAULT_MO (TCG_MO_ALL & ~TCG_MO_ST_LD)
|
||||
|
||||
#endif
|
@ -51,6 +51,4 @@ typedef enum TCGReg {
|
||||
|
||||
#define TCG_TARGET_NB_REGS 64
|
||||
|
||||
#define TCG_TARGET_DEFAULT_MO (TCG_MO_ALL & ~TCG_MO_ST_LD)
|
||||
|
||||
#endif
|
||||
|
12
tcg/sparc64/tcg-target-mo.h
Normal file
12
tcg/sparc64/tcg-target-mo.h
Normal file
@ -0,0 +1,12 @@
|
||||
/* SPDX-License-Identifier: MIT */
|
||||
/*
|
||||
* Define target-specific memory model
|
||||
* Copyright (c) 2008 Fabrice Bellard
|
||||
*/
|
||||
|
||||
#ifndef TCG_TARGET_MO_H
|
||||
#define TCG_TARGET_MO_H
|
||||
|
||||
#define TCG_TARGET_DEFAULT_MO 0
|
||||
|
||||
#endif
|
@ -66,6 +66,4 @@ typedef enum {
|
||||
|
||||
#define TCG_AREG0 TCG_REG_I0
|
||||
|
||||
#define TCG_TARGET_DEFAULT_MO (0)
|
||||
|
||||
#endif
|
||||
|
@ -31,6 +31,7 @@
|
||||
#include "exec/plugin-gen.h"
|
||||
#include "tcg-internal.h"
|
||||
#include "tcg-has.h"
|
||||
#include "tcg-target-mo.h"
|
||||
|
||||
static void check_max_alignment(unsigned a_bits)
|
||||
{
|
||||
|
17
tcg/tci/tcg-target-mo.h
Normal file
17
tcg/tci/tcg-target-mo.h
Normal file
@ -0,0 +1,17 @@
|
||||
/* SPDX-License-Identifier: MIT */
|
||||
/*
|
||||
* Define target-specific memory model
|
||||
* Copyright (c) 2009, 2011 Stefan Weil
|
||||
*/
|
||||
|
||||
#ifndef TCG_TARGET_MO_H
|
||||
#define TCG_TARGET_MO_H
|
||||
|
||||
/*
|
||||
* We could notice __i386__ or __s390x__ and reduce the barriers depending
|
||||
* on the host. But if you want performance, you use the normal backend.
|
||||
* We prefer consistency across hosts on this.
|
||||
*/
|
||||
#define TCG_TARGET_DEFAULT_MO 0
|
||||
|
||||
#endif
|
@ -74,9 +74,4 @@ typedef enum {
|
||||
#define HAVE_TCG_QEMU_TB_EXEC
|
||||
#define TCG_TARGET_NEED_POOL_LABELS
|
||||
|
||||
/* We could notice __i386__ or __s390x__ and reduce the barriers depending
|
||||
on the host. But if you want performance, you use the normal backend.
|
||||
We prefer consistency across hosts on this. */
|
||||
#define TCG_TARGET_DEFAULT_MO (0)
|
||||
|
||||
#endif /* TCG_TARGET_H */
|
||||
|
Loading…
x
Reference in New Issue
Block a user