[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[PATCH 1/7] target/mips/translate: Extract DisasContext structure
From: |
Philippe Mathieu-Daudé |
Subject: |
[PATCH 1/7] target/mips/translate: Extract DisasContext structure |
Date: |
Tue, 8 Dec 2020 00:55:33 +0100 |
Extract DisasContext to a new 'translate.h' header so
different translation files (ISA, ASE, extensions)
can use it.
Signed-off-by: Philippe Mathieu-Daudé <f4bug@amsat.org>
---
target/mips/translate.h | 50 +++++++++++++++++++++++++++++++++++++++++
target/mips/translate.c | 38 +------------------------------
2 files changed, 51 insertions(+), 37 deletions(-)
create mode 100644 target/mips/translate.h
diff --git a/target/mips/translate.h b/target/mips/translate.h
new file mode 100644
index 00000000000..fcda1a99001
--- /dev/null
+++ b/target/mips/translate.h
@@ -0,0 +1,50 @@
+/*
+ * MIPS translation routines.
+ *
+ * Copyright (c) 2004-2005 Jocelyn Mayer
+ *
+ * SPDX-License-Identifier: LGPL-2.1-or-later
+ */
+#ifndef TARGET_MIPS_TRANSLATE_H
+#define TARGET_MIPS_TRANSLATE_H
+
+#include "exec/translator.h"
+
+typedef struct DisasContext {
+ DisasContextBase base;
+ target_ulong saved_pc;
+ target_ulong page_start;
+ uint32_t opcode;
+ uint64_t insn_flags;
+ int32_t CP0_Config1;
+ int32_t CP0_Config2;
+ int32_t CP0_Config3;
+ int32_t CP0_Config5;
+ /* Routine used to access memory */
+ int mem_idx;
+ MemOp default_tcg_memop_mask;
+ uint32_t hflags, saved_hflags;
+ target_ulong btarget;
+ bool ulri;
+ int kscrexist;
+ bool rxi;
+ int ie;
+ bool bi;
+ bool bp;
+ uint64_t PAMask;
+ bool mvh;
+ bool eva;
+ bool sc;
+ int CP0_LLAddr_shift;
+ bool ps;
+ bool vp;
+ bool cmgcr;
+ bool mrp;
+ bool nan2008;
+ bool abs2008;
+ bool saar;
+ bool mi;
+ int gi;
+} DisasContext;
+
+#endif
diff --git a/target/mips/translate.c b/target/mips/translate.c
index ee45dce9a50..d7f5a1e8d84 100644
--- a/target/mips/translate.c
+++ b/target/mips/translate.c
@@ -39,6 +39,7 @@
#include "exec/translator.h"
#include "exec/log.h"
#include "qemu/qemu-print.h"
+#include "translate.h"
#define MIPS_DEBUG_DISAS 0
@@ -2557,43 +2558,6 @@ static TCGv mxu_CR;
tcg_temp_free_i32(helper_tmp); \
} while (0)
-typedef struct DisasContext {
- DisasContextBase base;
- target_ulong saved_pc;
- target_ulong page_start;
- uint32_t opcode;
- uint64_t insn_flags;
- int32_t CP0_Config1;
- int32_t CP0_Config2;
- int32_t CP0_Config3;
- int32_t CP0_Config5;
- /* Routine used to access memory */
- int mem_idx;
- MemOp default_tcg_memop_mask;
- uint32_t hflags, saved_hflags;
- target_ulong btarget;
- bool ulri;
- int kscrexist;
- bool rxi;
- int ie;
- bool bi;
- bool bp;
- uint64_t PAMask;
- bool mvh;
- bool eva;
- bool sc;
- int CP0_LLAddr_shift;
- bool ps;
- bool vp;
- bool cmgcr;
- bool mrp;
- bool nan2008;
- bool abs2008;
- bool saar;
- bool mi;
- int gi;
-} DisasContext;
-
#define DISAS_STOP DISAS_TARGET_0
#define DISAS_EXIT DISAS_TARGET_1
--
2.26.2
- [PATCH 0/7] target/mips: Add translate.h and fpu_translate.h headers, Philippe Mathieu-Daudé, 2020/12/07
- [PATCH 1/7] target/mips/translate: Extract DisasContext structure,
Philippe Mathieu-Daudé <=
- [PATCH 2/7] target/mips/translate: Add declarations for generic code, Philippe Mathieu-Daudé, 2020/12/07
- [PATCH 4/7] target/mips: Extract FPU helpers to 'fpu_helper.h', Philippe Mathieu-Daudé, 2020/12/07
- [PATCH 5/7] target/mips/fpu_helper: Remove unused headers, Philippe Mathieu-Daudé, 2020/12/07
- [PATCH 3/7] target/mips: Use FloatRoundMode enum for FCR31 modes conversion, Philippe Mathieu-Daudé, 2020/12/07
- [PATCH 6/7] target/mips: Declare generic FPU functions in 'fpu_translate.h', Philippe Mathieu-Daudé, 2020/12/07