summaryrefslogtreecommitdiffstats
path: root/disas/nanomips.h
diff options
context:
space:
mode:
authorMilica Lazarevic2022-09-12 14:26:17 +0200
committerPhilippe Mathieu-Daudé2022-10-31 11:32:07 +0100
commit655fc22f1bc7a16d9da6bd44c43e763bc27d0b8a (patch)
tree17be9ab070db48f67acee63ce7e689c1d70dd165 /disas/nanomips.h
parentdisas/nanomips: Remove helper methods from class (diff)
downloadqemu-655fc22f1bc7a16d9da6bd44c43e763bc27d0b8a.tar.gz
qemu-655fc22f1bc7a16d9da6bd44c43e763bc27d0b8a.tar.xz
qemu-655fc22f1bc7a16d9da6bd44c43e763bc27d0b8a.zip
disas/nanomips: Remove __cond methods from class
NMD class methods with the conditional_function type like NMD::ADDIU_32__cond, NMD::ADDIU_RS5__cond, etc. are removed from the NMD class. They're now declared global static functions. Therefore, typedef of the function pointer, conditional_function is defined outside of the class. Now that conditional_function type functions are not part of the NMD class we can't access them using the this pointer. Thus, the use of the this pointer has been deleted. Signed-off-by: Milica Lazarevic <milica.lazarevic@syrmia.com> Reviewed-by: Philippe Mathieu-Daudé <f4bug@amsat.org> Reviewed-by: Richard Henderson <richard.henderson@linaro.org> Message-Id: <20220912122635.74032-7-milica.lazarevic@syrmia.com> Signed-off-by: Philippe Mathieu-Daudé <philmd@linaro.org>
Diffstat (limited to 'disas/nanomips.h')
-rw-r--r--disas/nanomips.h14
1 files changed, 2 insertions, 12 deletions
diff --git a/disas/nanomips.h b/disas/nanomips.h
index 8eca843ef0..af803f4cc0 100644
--- a/disas/nanomips.h
+++ b/disas/nanomips.h
@@ -64,6 +64,8 @@ typedef struct Dis_info {
img_address m_pc;
} Dis_info;
+typedef bool (*conditional_function)(uint64 instruction);
+
class NMD
{
public:
@@ -75,7 +77,6 @@ private:
typedef std::string(NMD:: *disassembly_function)(uint64 instruction,
Dis_info *info);
- typedef bool(NMD:: *conditional_function)(uint64 instruction);
struct Pool {
TABLE_ENTRY_TYPE type;
@@ -94,17 +95,6 @@ private:
TABLE_ENTRY_TYPE & type, const Pool *table, int table_size,
Dis_info *info);
- bool ADDIU_32__cond(uint64 instruction);
- bool ADDIU_RS5__cond(uint64 instruction);
- bool BALRSC_cond(uint64 instruction);
- bool BEQC_16__cond(uint64 instruction);
- bool BNEC_16__cond(uint64 instruction);
- bool MOVE_cond(uint64 instruction);
- bool P16_BR1_cond(uint64 instruction);
- bool PREF_S9__cond(uint64 instruction);
- bool PREFE_cond(uint64 instruction);
- bool SLTU_cond(uint64 instruction);
-
std::string ABS_D(uint64 instruction, Dis_info *info);
std::string ABS_S(uint64 instruction, Dis_info *info);
std::string ABSQ_S_PH(uint64 instruction, Dis_info *info);