mirror of
https://github.com/Motorhead1991/qemu.git
synced 2025-08-03 07:43:54 -06:00
tcg: Remove the TCG_GUEST_DEFAULT_MO definition globally
By directly using TCGCPUOps::guest_default_memory_order, we don't need the TCG_GUEST_DEFAULT_MO definition anymore. Signed-off-by: Philippe Mathieu-Daudé <philmd@linaro.org> Reviewed-by: Anton Johansson <anjo@rev.ng> Reviewed-by: Richard Henderson <richard.henderson@linaro.org> Reviewed-by: Pierrick Bouvier <pierrick.bouvier@linaro.org> Signed-off-by: Richard Henderson <richard.henderson@linaro.org>
This commit is contained in:
parent
0eca13c29a
commit
8201f1a29c
40 changed files with 66 additions and 101 deletions
|
@ -23,27 +23,4 @@
|
|||
|
||||
#define TARGET_INSN_START_EXTRA_WORDS 1
|
||||
|
||||
/*
|
||||
* From Oracle SPARC Architecture 2015:
|
||||
*
|
||||
* Compatibility notes: The PSO memory model described in SPARC V8 and
|
||||
* SPARC V9 compatibility architecture specifications was never implemented
|
||||
* in a SPARC V9 implementation and is not included in the Oracle SPARC
|
||||
* Architecture specification.
|
||||
*
|
||||
* The RMO memory model described in the SPARC V9 specification was
|
||||
* implemented in some non-Sun SPARC V9 implementations, but is not
|
||||
* directly supported in Oracle SPARC Architecture 2015 implementations.
|
||||
*
|
||||
* Therefore always use TSO in QEMU.
|
||||
*
|
||||
* D.5 Specification of Partial Store Order (PSO)
|
||||
* ... [loads] are followed by an implied MEMBAR #LoadLoad | #LoadStore.
|
||||
*
|
||||
* D.6 Specification of Total Store Order (TSO)
|
||||
* ... PSO with the additional requirement that all [stores] are followed
|
||||
* by an implied MEMBAR #StoreStore.
|
||||
*/
|
||||
#define TCG_GUEST_DEFAULT_MO (TCG_MO_LD_LD | TCG_MO_LD_ST | TCG_MO_ST_ST)
|
||||
|
||||
#endif
|
||||
|
|
|
@ -1001,7 +1001,28 @@ static const struct SysemuCPUOps sparc_sysemu_ops = {
|
|||
#include "accel/tcg/cpu-ops.h"
|
||||
|
||||
static const TCGCPUOps sparc_tcg_ops = {
|
||||
.guest_default_memory_order = TCG_GUEST_DEFAULT_MO,
|
||||
/*
|
||||
* From Oracle SPARC Architecture 2015:
|
||||
*
|
||||
* Compatibility notes: The PSO memory model described in SPARC V8 and
|
||||
* SPARC V9 compatibility architecture specifications was never
|
||||
* implemented in a SPARC V9 implementation and is not included in the
|
||||
* Oracle SPARC Architecture specification.
|
||||
*
|
||||
* The RMO memory model described in the SPARC V9 specification was
|
||||
* implemented in some non-Sun SPARC V9 implementations, but is not
|
||||
* directly supported in Oracle SPARC Architecture 2015 implementations.
|
||||
*
|
||||
* Therefore always use TSO in QEMU.
|
||||
*
|
||||
* D.5 Specification of Partial Store Order (PSO)
|
||||
* ... [loads] are followed by an implied MEMBAR #LoadLoad | #LoadStore.
|
||||
*
|
||||
* D.6 Specification of Total Store Order (TSO)
|
||||
* ... PSO with the additional requirement that all [stores] are followed
|
||||
* by an implied MEMBAR #StoreStore.
|
||||
*/
|
||||
.guest_default_memory_order = TCG_MO_LD_LD | TCG_MO_LD_ST | TCG_MO_ST_ST,
|
||||
|
||||
.initialize = sparc_tcg_init,
|
||||
.translate_code = sparc_translate_code,
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue