Index: src/mips/disasm-mips.cc |
diff --git a/src/mips/disasm-mips.cc b/src/mips/disasm-mips.cc |
index 32dffff1d2945212a8d81997f997980ce3cc21ae..f68876456e1f174c9d954930dc07ed921dda1b13 100644 |
--- a/src/mips/disasm-mips.cc |
+++ b/src/mips/disasm-mips.cc |
@@ -581,6 +581,9 @@ bool Decoder::DecodeTypeRegisterRsType(Instruction* instr) { |
case CEIL_W_D: |
Format(instr, "ceil.w.'t 'fd, 'fs"); |
break; |
+ case CLASS_D: |
+ Format(instr, "class.'t 'fd, 'fs"); |
+ break; |
case CEIL_L_D: |
Format(instr, "ceil.l.'t 'fd, 'fs"); |
break; |
@@ -647,6 +650,9 @@ void Decoder::DecodeTypeRegisterLRsType(Instruction* instr) { |
case CVT_S_L: |
Format(instr, "cvt.s.l 'fd, 'fs"); |
break; |
+ case CMP_AF: |
+ Format(instr, "cmp.af.d 'fd, 'fs, 'ft"); |
+ break; |
case CMP_UN: |
Format(instr, "cmp.un.d 'fd, 'fs, 'ft"); |
break; |
@@ -950,6 +956,14 @@ void Decoder::DecodeTypeRegisterSPECIAL3(Instruction* instr) { |
} |
break; |
} |
+ case BITSWAP: { |
+ if (IsMipsArchVariant(kMips32r6)) { |
+ Format(instr, "bitswap 'rd, 'rt"); |
+ } else { |
+ Unknown(instr); |
+ } |
+ break; |
+ } |
default: |
UNREACHABLE(); |
} |