|
|
|
@ -236,11 +236,6 @@ switch((insn.bits >> 0x19) & 0x7f) |
|
|
|
#include "insns/truncu_l_d.h" |
|
|
|
break; |
|
|
|
} |
|
|
|
if((insn.bits & 0xfe007fe0) == 0xd0006040) |
|
|
|
{ |
|
|
|
#include "insns/mul_d.h" |
|
|
|
break; |
|
|
|
} |
|
|
|
if((insn.bits & 0xfe007fe0) == 0xd0006020) |
|
|
|
{ |
|
|
|
#include "insns/sub_d.h" |
|
|
|
@ -266,6 +261,11 @@ switch((insn.bits >> 0x19) & 0x7f) |
|
|
|
#include "insns/truncu_w_d.h" |
|
|
|
break; |
|
|
|
} |
|
|
|
if((insn.bits & 0xfe007fe0) == 0xd0006040) |
|
|
|
{ |
|
|
|
#include "insns/mul_d.h" |
|
|
|
break; |
|
|
|
} |
|
|
|
if((insn.bits & 0xfe007fe0) == 0xd0006840) |
|
|
|
{ |
|
|
|
#include "insns/c_lt_d.h" |
|
|
|
@ -317,14 +317,14 @@ switch((insn.bits >> 0x19) & 0x7f) |
|
|
|
{ |
|
|
|
case 0x0: |
|
|
|
{ |
|
|
|
if((insn.bits & 0xfe0fffe0) == 0xd4000800) |
|
|
|
if((insn.bits & 0xfe0fffe0) == 0xd4000000) |
|
|
|
{ |
|
|
|
#include "insns/mtf_s.h" |
|
|
|
#include "insns/mff_s.h" |
|
|
|
break; |
|
|
|
} |
|
|
|
if((insn.bits & 0xfe0fffe0) == 0xd4000000) |
|
|
|
if((insn.bits & 0xfe0fffe0) == 0xd4000800) |
|
|
|
{ |
|
|
|
#include "insns/mff_s.h" |
|
|
|
#include "insns/mtf_s.h" |
|
|
|
break; |
|
|
|
} |
|
|
|
#include "insns/unimp.h" |
|
|
|
@ -371,14 +371,14 @@ switch((insn.bits >> 0x19) & 0x7f) |
|
|
|
#include "insns/nmadd_s.h" |
|
|
|
break; |
|
|
|
} |
|
|
|
if((insn.bits & 0xfe007c00) == 0xd6000400) |
|
|
|
if((insn.bits & 0xfe007c00) == 0xd6000c00) |
|
|
|
{ |
|
|
|
#include "insns/msub_s.h" |
|
|
|
#include "insns/nmsub_s.h" |
|
|
|
break; |
|
|
|
} |
|
|
|
if((insn.bits & 0xfe007c00) == 0xd6000c00) |
|
|
|
if((insn.bits & 0xfe007c00) == 0xd6000400) |
|
|
|
{ |
|
|
|
#include "insns/nmsub_s.h" |
|
|
|
#include "insns/msub_s.h" |
|
|
|
break; |
|
|
|
} |
|
|
|
if((insn.bits & 0xfe007c00) == 0xd6000000) |
|
|
|
@ -541,6 +541,11 @@ switch((insn.bits >> 0x19) & 0x7f) |
|
|
|
#include "insns/nor.h" |
|
|
|
break; |
|
|
|
} |
|
|
|
if((insn.bits & 0xfe007fe0) == 0xea000060) |
|
|
|
{ |
|
|
|
#include "insns/sltu.h" |
|
|
|
break; |
|
|
|
} |
|
|
|
if((insn.bits & 0xfe007fe0) == 0xea0000c0) |
|
|
|
{ |
|
|
|
#include "insns/xor.h" |
|
|
|
@ -561,11 +566,6 @@ switch((insn.bits >> 0x19) & 0x7f) |
|
|
|
#include "insns/slt.h" |
|
|
|
break; |
|
|
|
} |
|
|
|
if((insn.bits & 0xfe007fe0) == 0xea000060) |
|
|
|
{ |
|
|
|
#include "insns/sltu.h" |
|
|
|
break; |
|
|
|
} |
|
|
|
if((insn.bits & 0xfe007fe0) == 0xea000080) |
|
|
|
{ |
|
|
|
#include "insns/and.h" |
|
|
|
@ -614,19 +614,19 @@ switch((insn.bits >> 0x19) & 0x7f) |
|
|
|
} |
|
|
|
case 0x7: |
|
|
|
{ |
|
|
|
if((insn.bits & 0xfe007fe0) == 0xea007080) |
|
|
|
if((insn.bits & 0xfe007fe0) == 0xea0070c0) |
|
|
|
{ |
|
|
|
#include "insns/srlv.h" |
|
|
|
#include "insns/sra.h" |
|
|
|
break; |
|
|
|
} |
|
|
|
if((insn.bits & 0xfe007fe0) == 0xea0070c0) |
|
|
|
if((insn.bits & 0xfe007fe0) == 0xea007080) |
|
|
|
{ |
|
|
|
#include "insns/srav.h" |
|
|
|
#include "insns/srl.h" |
|
|
|
break; |
|
|
|
} |
|
|
|
if((insn.bits & 0xfe007fe0) == 0xea007040) |
|
|
|
{ |
|
|
|
#include "insns/sllv.h" |
|
|
|
#include "insns/sll.h" |
|
|
|
break; |
|
|
|
} |
|
|
|
#include "insns/unimp.h" |
|
|
|
@ -732,19 +732,19 @@ switch((insn.bits >> 0x19) & 0x7f) |
|
|
|
} |
|
|
|
case 0x7: |
|
|
|
{ |
|
|
|
if((insn.bits & 0xfe007fe0) == 0xee0070c0) |
|
|
|
if((insn.bits & 0xfe007fe0) == 0xee007080) |
|
|
|
{ |
|
|
|
#include "insns/sravw.h" |
|
|
|
#include "insns/srlw.h" |
|
|
|
break; |
|
|
|
} |
|
|
|
if((insn.bits & 0xfe007fe0) == 0xee007040) |
|
|
|
if((insn.bits & 0xfe007fe0) == 0xee0070c0) |
|
|
|
{ |
|
|
|
#include "insns/sllvw.h" |
|
|
|
#include "insns/sraw.h" |
|
|
|
break; |
|
|
|
} |
|
|
|
if((insn.bits & 0xfe007fe0) == 0xee007080) |
|
|
|
if((insn.bits & 0xfe007fe0) == 0xee007040) |
|
|
|
{ |
|
|
|
#include "insns/srlvw.h" |
|
|
|
#include "insns/sllw.h" |
|
|
|
break; |
|
|
|
} |
|
|
|
#include "insns/unimp.h" |
|
|
|
|