From 89540ea7618fbaca1c9cd332b24aff7f2865d324 Mon Sep 17 00:00:00 2001 From: Lioncash Date: Mon, 27 Jul 2015 23:45:24 -0400 Subject: dyncom: Use enum class for instruction decoding results --- src/core/arm/dyncom/arm_dyncom_thumb.h | 13 +++++++------ 1 file changed, 7 insertions(+), 6 deletions(-) (limited to 'src/core/arm/dyncom/arm_dyncom_thumb.h') diff --git a/src/core/arm/dyncom/arm_dyncom_thumb.h b/src/core/arm/dyncom/arm_dyncom_thumb.h index 74e69e13..44797436 100644 --- a/src/core/arm/dyncom/arm_dyncom_thumb.h +++ b/src/core/arm/dyncom/arm_dyncom_thumb.h @@ -28,14 +28,15 @@ #include "common/common_types.h" -enum tdstate { - t_undefined, // Undefined Thumb instruction - t_decoded, // Instruction decoded to ARM equivalent - t_branch, // Thumb branch (already processed) - t_uninitialized, +enum class ThumbDecodeStatus { + UNDEFINED, // Undefined Thumb instruction + DECODED, // Instruction decoded to ARM equivalent + BRANCH, // Thumb branch (already processed) + UNINITIALIZED, }; -tdstate thumb_translate(u32 addr, u32 instr, u32* ainstr, u32* inst_size); +// Translates a Thumb mode instruction into its ARM equivalent. +ThumbDecodeStatus TranslateThumbInstruction(u32 addr, u32 instr, u32* ainstr, u32* inst_size); static inline u32 GetThumbInstruction(u32 instr, u32 address) { // Normally you would need to handle instruction endianness, -- cgit v1.2.3