From: "Philippe Mathieu-Daudé" <philmd@linaro.org>
To: qemu-devel@nongnu.org
Cc: "Philippe Mathieu-Daudé" <philmd@linaro.org>,
"Aleksandar Rikalo" <aleksandar.rikalo@syrmia.com>,
"Huacai Chen" <chenhuacai@kernel.org>,
"Stefan Pejic" <stefan.pejic@syrmia.com>,
"Jiaxun Yang" <jiaxun.yang@flygoat.com>,
"Aurelien Jarno" <aurelien@aurel32.net>,
"Paul Burton" <paulburton@kernel.org>,
"Milica Lazarevic" <milica.lazarevic@syrmia.com>,
"Thomas Huth" <thuth@redhat.com>,
"Richard Henderson" <richard.henderson@linaro.org>
Subject: [PULL 16/55] disas/nanomips: Extract enums out of the NMD class
Date: Sun, 30 Oct 2022 23:28:02 +0100 [thread overview]
Message-ID: <20221030222841.42377-17-philmd@linaro.org> (raw)
In-Reply-To: <20221030222841.42377-1-philmd@linaro.org>
From: Milica Lazarevic <milica.lazarevic@syrmia.com>
Definitions of enums TABLE_ENTRY_TYPE and TABLE_ATTRIBUTE_TYPE are moved
out of the NMD class. The main goal is to remove NMD class completely.
Signed-off-by: Milica Lazarevic <milica.lazarevic@syrmia.com>
Reviewed-by: Thomas Huth <thuth@redhat.com>
Reviewed-by: Richard Henderson <richard.henderson@linaro.org>
Message-Id: <20220912122635.74032-3-milica.lazarevic@syrmia.com>
Signed-off-by: Philippe Mathieu-Daudé <philmd@linaro.org>
---
disas/nanomips.cpp | 8 +++----
disas/nanomips.h | 59 +++++++++++++++++++++++-----------------------
2 files changed, 33 insertions(+), 34 deletions(-)
diff --git a/disas/nanomips.cpp b/disas/nanomips.cpp
index 84529685bf..bdc640b38b 100644
--- a/disas/nanomips.cpp
+++ b/disas/nanomips.cpp
@@ -50,8 +50,8 @@ int nanomips_dis(char *buf,
std::string disasm;
uint16 bits[3] = {one, two, three};
- NMD::TABLE_ENTRY_TYPE type;
- NMD d(address, NMD::ALL_ATTRIBUTES);
+ TABLE_ENTRY_TYPE type;
+ NMD d(address, ALL_ATTRIBUTES);
int size = d.Disassemble(bits, disasm, type);
strcpy(buf, disasm.c_str());
@@ -772,7 +772,7 @@ uint64 NMD::extract_op_code_value(const uint16 * data, int size)
int NMD::Disassemble(const uint16 * data, std::string & dis,
- NMD::TABLE_ENTRY_TYPE & type)
+ TABLE_ENTRY_TYPE & type)
{
return Disassemble(data, dis, type, MAJOR, 2);
}
@@ -790,7 +790,7 @@ int NMD::Disassemble(const uint16 * data, std::string & dis,
* disassembly string - on error will constain error string
*/
int NMD::Disassemble(const uint16 * data, std::string & dis,
- NMD::TABLE_ENTRY_TYPE & type, const Pool *table,
+ TABLE_ENTRY_TYPE & type, const Pool *table,
int table_size)
{
try
diff --git a/disas/nanomips.h b/disas/nanomips.h
index 9fe0cc67da..f65a0957b8 100644
--- a/disas/nanomips.h
+++ b/disas/nanomips.h
@@ -31,41 +31,40 @@ typedef uint32_t uint32;
typedef uint16_t uint16;
typedef uint64_t img_address;
+enum TABLE_ENTRY_TYPE {
+ instruction,
+ call_instruction,
+ branch_instruction,
+ return_instruction,
+ reserved_block,
+ pool,
+};
+
+enum TABLE_ATTRIBUTE_TYPE {
+ MIPS64_ = 0x00000001,
+ XNP_ = 0x00000002,
+ XMMS_ = 0x00000004,
+ EVA_ = 0x00000008,
+ DSP_ = 0x00000010,
+ MT_ = 0x00000020,
+ EJTAG_ = 0x00000040,
+ TLBINV_ = 0x00000080,
+ CP0_ = 0x00000100,
+ CP1_ = 0x00000200,
+ CP2_ = 0x00000400,
+ UDI_ = 0x00000800,
+ MCU_ = 0x00001000,
+ VZ_ = 0x00002000,
+ TLB_ = 0x00004000,
+ MVH_ = 0x00008000,
+ ALL_ATTRIBUTES = 0xffffffffull,
+};
+
class NMD
{
public:
- enum TABLE_ENTRY_TYPE {
- instruction,
- call_instruction,
- branch_instruction,
- return_instruction,
- reserved_block,
- pool,
- };
-
- enum TABLE_ATTRIBUTE_TYPE {
- MIPS64_ = 0x00000001,
- XNP_ = 0x00000002,
- XMMS_ = 0x00000004,
- EVA_ = 0x00000008,
- DSP_ = 0x00000010,
- MT_ = 0x00000020,
- EJTAG_ = 0x00000040,
- TLBINV_ = 0x00000080,
- CP0_ = 0x00000100,
- CP1_ = 0x00000200,
- CP2_ = 0x00000400,
- UDI_ = 0x00000800,
- MCU_ = 0x00001000,
- VZ_ = 0x00002000,
- TLB_ = 0x00004000,
- MVH_ = 0x00008000,
- ALL_ATTRIBUTES = 0xffffffffull,
- };
-
-
NMD(img_address pc, TABLE_ATTRIBUTE_TYPE requested_instruction_categories)
: m_pc(pc)
, m_requested_instruction_categories(requested_instruction_categories)
--
2.37.3
next prev parent reply other threads:[~2022-10-30 22:31 UTC|newest]
Thread overview: 61+ messages / expand[flat|nested] mbox.gz Atom feed top
2022-10-30 22:27 [PULL 00/55] MIPS patches for 2022-10-30 Philippe Mathieu-Daudé
2022-10-30 22:27 ` [PULL 01/55] hw/isa/vt82c686: Resolve chip-specific realize methods Philippe Mathieu-Daudé
2022-10-30 22:27 ` [PULL 02/55] hw/isa/vt82c686: Resolve unneeded attribute Philippe Mathieu-Daudé
2022-10-30 22:27 ` [PULL 03/55] hw/isa/vt82c686: Prefer pci_address_space() over get_system_memory() Philippe Mathieu-Daudé
2022-10-30 22:27 ` [PULL 04/55] hw/isa/vt82c686: Reuse errp Philippe Mathieu-Daudé
2022-10-30 22:27 ` [PULL 05/55] hw/isa/vt82c686: Introduce TYPE_VIA_IDE define Philippe Mathieu-Daudé
2022-10-30 22:27 ` [PULL 06/55] hw/isa/vt82c686: Instantiate IDE function in host device Philippe Mathieu-Daudé
2022-10-30 22:27 ` [PULL 07/55] hw/isa/vt82c686: Introduce TYPE_VT82C686B_USB_UHCI define Philippe Mathieu-Daudé
2022-10-30 22:27 ` [PULL 08/55] hw/isa/vt82c686: Instantiate USB functions in host device Philippe Mathieu-Daudé
2022-10-30 22:27 ` [PULL 09/55] hw/isa/vt82c686: Instantiate PM function " Philippe Mathieu-Daudé
2022-10-30 22:27 ` [PULL 10/55] hw/isa/vt82c686: Instantiate AC97 and MC97 functions " Philippe Mathieu-Daudé
2022-10-30 22:27 ` [PULL 11/55] hw/mips/fuloong2e: Inline vt82c686b_southbridge_init() and remove it Philippe Mathieu-Daudé
2022-10-30 22:27 ` [PULL 12/55] hw/isa/vt82c686: Embed RTCState in host device Philippe Mathieu-Daudé
2022-10-30 22:27 ` [PULL 13/55] hw/isa/vt82c686: Create rtc-time alias in boards instead Philippe Mathieu-Daudé
2022-10-30 22:28 ` [PULL 14/55] hw: Remove unused MAX_IDE_BUS define Philippe Mathieu-Daudé
2022-10-30 22:28 ` [PULL 15/55] disas/nanomips: Remove namespace img Philippe Mathieu-Daudé
2022-10-30 22:28 ` Philippe Mathieu-Daudé [this message]
2022-10-30 22:28 ` [PULL 17/55] disas/nanomips: Delete NMD class field Philippe Mathieu-Daudé
2022-10-30 22:28 ` [PULL 18/55] disas/nanomips: Delete NMD class second field Philippe Mathieu-Daudé
2022-10-30 22:28 ` [PULL 19/55] disas/nanomips: Remove helper methods from class Philippe Mathieu-Daudé
2022-10-30 22:28 ` [PULL 20/55] disas/nanomips: Remove __cond " Philippe Mathieu-Daudé
2022-10-30 22:28 ` [PULL 21/55] disas/nanomips: Remove disasm " Philippe Mathieu-Daudé
2022-10-30 22:28 ` [PULL 22/55] disas/nanomips: Remove Pool tables from the class Philippe Mathieu-Daudé
2022-10-30 22:28 ` [PULL 23/55] disas/nanomips: Remove NMD class Philippe Mathieu-Daudé
2022-10-30 22:28 ` [PULL 24/55] disas/nanomips: Move typedefs etc to nanomips.cpp Philippe Mathieu-Daudé
2022-10-30 22:28 ` [PULL 25/55] disas/nanomips: Delete nanomips.h Philippe Mathieu-Daudé
2022-10-30 22:28 ` [PULL 26/55] disas/nanomips: Remove #include <sstream> Philippe Mathieu-Daudé
2022-10-30 22:28 ` [PULL 27/55] disas/nanomips: Delete copy functions Philippe Mathieu-Daudé
2022-10-30 22:28 ` [PULL 28/55] disas/nanomips: Delete wrapper functions Philippe Mathieu-Daudé
2022-10-30 22:28 ` [PULL 29/55] disas/nanomips: Replace std::string type Philippe Mathieu-Daudé
2022-10-30 22:28 ` [PULL 30/55] disas/nanomips: Remove IMMEDIATE functions Philippe Mathieu-Daudé
2022-10-30 22:28 ` [PULL 31/55] disas/nanomips: Remove CPR function Philippe Mathieu-Daudé
2022-10-30 22:28 ` [PULL 32/55] disas/nanomips: Prevent memory leaking Philippe Mathieu-Daudé
2022-10-30 22:28 ` [PULL 33/55] disas/nanomips: Remove function overloading Philippe Mathieu-Daudé
2022-10-30 22:28 ` [PULL 34/55] disas/nanomips: Expand Dis_info struct Philippe Mathieu-Daudé
2022-10-30 22:28 ` [PULL 35/55] disas/nanomips: Replace exception handling Philippe Mathieu-Daudé
2022-10-30 22:28 ` [PULL 36/55] disas/nanomips: Replace Cpp enums for C enums Philippe Mathieu-Daudé
2022-10-30 22:28 ` [PULL 37/55] disas/nanomips: Remove argument passing by ref Philippe Mathieu-Daudé
2022-10-30 22:28 ` [PULL 38/55] disas/nanomips: Rename nanomips.cpp to nanomips.c Philippe Mathieu-Daudé
2022-10-30 22:28 ` [PULL 39/55] disas/mips: Fix branch displacement for BEQZC and BNEZC Philippe Mathieu-Daudé
2022-10-30 22:28 ` [PULL 40/55] hw/i386/pc: Create DMA controllers in south bridges Philippe Mathieu-Daudé
2022-10-30 22:28 ` [PULL 41/55] hw/isa/piix3: Remove extra ';' outside of functions Philippe Mathieu-Daudé
2022-10-30 22:28 ` [PULL 42/55] hw/isa/piix3: Add size constraints to rcr_ops Philippe Mathieu-Daudé
2022-10-30 22:28 ` [PULL 43/55] hw/isa/piix3: Modernize reset handling Philippe Mathieu-Daudé
2022-10-30 22:28 ` [PULL 44/55] hw/isa/piix3: Prefer pci_address_space() over get_system_memory() Philippe Mathieu-Daudé
2022-10-30 22:28 ` [PULL 45/55] hw/isa/piix4: Rename wrongly named method Philippe Mathieu-Daudé
2022-10-30 22:28 ` [PULL 46/55] hw/ide/piix: Introduce TYPE_ macros for PIIX IDE controllers Philippe Mathieu-Daudé
2022-10-30 22:28 ` [PULL 47/55] hw/isa/piix3: Remove unused include Philippe Mathieu-Daudé
2022-10-30 22:28 ` [PULL 48/55] hw/mips/malta: Reuse dev variable Philippe Mathieu-Daudé
2022-10-30 22:28 ` [PULL 49/55] hw/isa/Kconfig: Fix dependencies of piix4 southbridge Philippe Mathieu-Daudé
2022-10-30 22:28 ` [PULL 50/55] hw/isa/piix4: Add missing initialization Philippe Mathieu-Daudé
2022-10-30 22:28 ` [PULL 51/55] hw/isa/piix4: Move pci_ide_create_devs() call to board code Philippe Mathieu-Daudé
2022-10-30 22:28 ` [PULL 52/55] hw/mips/boston: Don't set link_up for xilinx-pcie Philippe Mathieu-Daudé
2022-10-31 12:28 ` [PULL 00/55] MIPS patches for 2022-10-30 Philippe Mathieu-Daudé
2022-10-31 18:39 ` Stefan Hajnoczi
2022-11-08 13:59 ` Peter Maydell
2022-11-08 14:23 ` Philippe Mathieu-Daudé
2022-11-08 15:09 ` Thomas Huth
2022-11-08 15:23 ` Philippe Mathieu-Daudé
2022-11-08 17:56 ` Konstantin Kostiuk
2022-11-08 18:39 ` Paolo Bonzini
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20221030222841.42377-17-philmd@linaro.org \
--to=philmd@linaro.org \
--cc=aleksandar.rikalo@syrmia.com \
--cc=aurelien@aurel32.net \
--cc=chenhuacai@kernel.org \
--cc=jiaxun.yang@flygoat.com \
--cc=milica.lazarevic@syrmia.com \
--cc=paulburton@kernel.org \
--cc=qemu-devel@nongnu.org \
--cc=richard.henderson@linaro.org \
--cc=stefan.pejic@syrmia.com \
--cc=thuth@redhat.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).