diff --git a/src/frontend/translate/translate_arm.cpp b/src/frontend/translate/translate_arm.cpp index fc8facf4..a91c6407 100644 --- a/src/frontend/translate/translate_arm.cpp +++ b/src/frontend/translate/translate_arm.cpp @@ -21,7 +21,7 @@ IR::Block TranslateArm(LocationDescriptor descriptor, MemoryRead32FuncType memor bool should_continue = true; while (should_continue && visitor.cond_state == ConditionalState::None) { const u32 arm_pc = visitor.ir.current_location.PC(); - const u32 arm_instruction = (*memory_read_32)(arm_pc); + const u32 arm_instruction = memory_read_32(arm_pc); if (auto vfp_decoder = DecodeVFP2(arm_instruction)) { should_continue = vfp_decoder->call(visitor, arm_instruction); diff --git a/src/frontend/translate/translate_thumb.cpp b/src/frontend/translate/translate_thumb.cpp index 917c284d..e28d72a8 100644 --- a/src/frontend/translate/translate_thumb.cpp +++ b/src/frontend/translate/translate_thumb.cpp @@ -834,7 +834,7 @@ enum class ThumbInstSize { }; std::tuple ReadThumbInstruction(u32 arm_pc, MemoryRead32FuncType memory_read_32) { - u32 first_part = (*memory_read_32)(arm_pc & 0xFFFFFFFC); + u32 first_part = memory_read_32(arm_pc & 0xFFFFFFFC); if ((arm_pc & 0x2) != 0) first_part >>= 16; first_part &= 0xFFFF; @@ -847,7 +847,7 @@ std::tuple ReadThumbInstruction(u32 arm_pc, MemoryRead32Func // 32-bit thumb instruction // These always start with 0b11101, 0b11110 or 0b11111. - u32 second_part = (*memory_read_32)((arm_pc + 2) & 0xFFFFFFFC); + u32 second_part = memory_read_32((arm_pc + 2) & 0xFFFFFFFC); if (((arm_pc + 2) & 0x2) != 0) second_part >>= 16; second_part &= 0xFFFF;