|
|
|
@ -5,7 +5,7 @@
|
|
|
|
|
#include "core/arm/dyncom/arm_dyncom_dec.h"
|
|
|
|
|
#include "core/arm/skyeye_common/armsupp.h"
|
|
|
|
|
|
|
|
|
|
const ISEITEM arm_instruction[] = {
|
|
|
|
|
const InstructionSetEncodingItem arm_instruction[] = {
|
|
|
|
|
{ "vmla", 4, ARMVFP2, { 23, 27, 0x1C, 20, 21, 0x0, 9, 11, 0x5, 4, 4, 0 }},
|
|
|
|
|
{ "vmls", 7, ARMVFP2, { 28, 31, 0xF, 25, 27, 0x1, 23, 23, 1, 11, 11, 0, 8, 9, 0x2, 6, 6, 1, 4, 4, 0 }},
|
|
|
|
|
{ "vnmla", 4, ARMVFP2, { 23, 27, 0x1C, 20, 21, 0x1, 9, 11, 0x5, 4, 4, 0 }},
|
|
|
|
@ -207,7 +207,7 @@ const ISEITEM arm_instruction[] = {
|
|
|
|
|
{ "bbl", 1, 0, { 25, 27, 0x00000005 }},
|
|
|
|
|
};
|
|
|
|
|
|
|
|
|
|
const ISEITEM arm_exclusion_code[] = {
|
|
|
|
|
const InstructionSetEncodingItem arm_exclusion_code[] = {
|
|
|
|
|
{ "vmla", 0, ARMVFP2, { 0 }},
|
|
|
|
|
{ "vmls", 0, ARMVFP2, { 0 }},
|
|
|
|
|
{ "vnmla", 0, ARMVFP2, { 0 }},
|
|
|
|
@ -417,7 +417,7 @@ const ISEITEM arm_exclusion_code[] = {
|
|
|
|
|
ARMDecodeStatus DecodeARMInstruction(u32 instr, s32* idx) {
|
|
|
|
|
int n = 0;
|
|
|
|
|
int base = 0;
|
|
|
|
|
int instr_slots = sizeof(arm_instruction) / sizeof(ISEITEM);
|
|
|
|
|
int instr_slots = sizeof(arm_instruction) / sizeof(InstructionSetEncodingItem);
|
|
|
|
|
ARMDecodeStatus ret = ARMDecodeStatus::FAILURE;
|
|
|
|
|
|
|
|
|
|
for (int i = 0; i < instr_slots; i++) {
|
|
|
|
|