[llvm] r330315 - [mips] Guard some macro expansions properly

Simon Dardis via llvm-commits llvm-commits at lists.llvm.org
Thu Apr 19 02:45:05 PDT 2018


Author: sdardis
Date: Thu Apr 19 02:45:04 2018
New Revision: 330315

URL: http://llvm.org/viewvc/llvm-project?rev=330315&view=rev
Log:
[mips] Guard some macro expansions properly

Reviewers: atanasyan, abeserminji

Differential Revision: https://reviews.llvm.org/D45565

Modified:
    llvm/trunk/lib/Target/Mips/MicroMipsInstrInfo.td
    llvm/trunk/lib/Target/Mips/Mips64InstrInfo.td
    llvm/trunk/lib/Target/Mips/MipsInstrInfo.td
    llvm/trunk/test/MC/Mips/instalias-imm-expanding.s

Modified: llvm/trunk/lib/Target/Mips/MicroMipsInstrInfo.td
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/Target/Mips/MicroMipsInstrInfo.td?rev=330315&r1=330314&r2=330315&view=diff
==============================================================================
--- llvm/trunk/lib/Target/Mips/MicroMipsInstrInfo.td (original)
+++ llvm/trunk/lib/Target/Mips/MicroMipsInstrInfo.td Thu Apr 19 02:45:04 2018
@@ -1202,28 +1202,32 @@ let Predicates = [InMicroMips] in {
                       (ROTR_MM GPR32Opnd:$rt, GPR32Opnd:$rt, uimm5:$imm), 0>;
   def : MipsInstAlias<"syscall", (SYSCALL_MM 0), 1>;
 
-  defm : OneOrTwoOperandMacroImmediateAlias<"add", ADDi_MM>;
+  defm : OneOrTwoOperandMacroImmediateAlias<"add", ADDi_MM>, ISA_MICROMIPS;
 
-  defm : OneOrTwoOperandMacroImmediateAlias<"addu", ADDiu_MM>;
+  defm : OneOrTwoOperandMacroImmediateAlias<"addu", ADDiu_MM>, ISA_MICROMIPS;
 
-  defm : OneOrTwoOperandMacroImmediateAlias<"and", ANDi_MM>;
+  defm : OneOrTwoOperandMacroImmediateAlias<"and", ANDi_MM>, ISA_MICROMIPS;
 
-  defm : OneOrTwoOperandMacroImmediateAlias<"or", ORi_MM>;
+  defm : OneOrTwoOperandMacroImmediateAlias<"or", ORi_MM>, ISA_MICROMIPS;
 
-  defm : OneOrTwoOperandMacroImmediateAlias<"xor", XORi_MM>;
+  defm : OneOrTwoOperandMacroImmediateAlias<"xor", XORi_MM>, ISA_MICROMIPS;
 
-  defm : OneOrTwoOperandMacroImmediateAlias<"slt", SLTi_MM>;
+  defm : OneOrTwoOperandMacroImmediateAlias<"slt", SLTi_MM>, ISA_MICROMIPS;
 
-  defm : OneOrTwoOperandMacroImmediateAlias<"sltu", SLTiu_MM>;
+  defm : OneOrTwoOperandMacroImmediateAlias<"sltu", SLTiu_MM>, ISA_MICROMIPS;
 
   def : MipsInstAlias<"not $rt, $rs",
-                      (NOR_MM GPR32Opnd:$rt, GPR32Opnd:$rs, ZERO), 0>;
+                      (NOR_MM GPR32Opnd:$rt, GPR32Opnd:$rs, ZERO), 0>,
+        ISA_MICROMIPS;
   def : MipsInstAlias<"not $rt",
-                      (NOR_MM GPR32Opnd:$rt, GPR32Opnd:$rt, ZERO), 0>;
+                      (NOR_MM GPR32Opnd:$rt, GPR32Opnd:$rt, ZERO), 0>,
+        ISA_MICROMIPS;
   def : MipsInstAlias<"bnez $rs,$offset",
-                      (BNE_MM GPR32Opnd:$rs, ZERO, brtarget:$offset), 0>;
+                      (BNE_MM GPR32Opnd:$rs, ZERO, brtarget:$offset), 0>,
+        ISA_MICROMIPS;
   def : MipsInstAlias<"beqz $rs,$offset",
-                      (BEQ_MM GPR32Opnd:$rs, ZERO, brtarget:$offset), 0>;
+                      (BEQ_MM GPR32Opnd:$rs, ZERO, brtarget:$offset), 0>,
+        ISA_MICROMIPS;
   def : MipsInstAlias<"seh $rd", (SEH_MM GPR32Opnd:$rd, GPR32Opnd:$rd), 0>,
                      ISA_MIPS32R2_NOT_32R6_64R6;
   def : MipsInstAlias<"seb $rd", (SEB_MM GPR32Opnd:$rd, GPR32Opnd:$rd), 0>,

Modified: llvm/trunk/lib/Target/Mips/Mips64InstrInfo.td
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/Target/Mips/Mips64InstrInfo.td?rev=330315&r1=330314&r2=330315&view=diff
==============================================================================
--- llvm/trunk/lib/Target/Mips/Mips64InstrInfo.td (original)
+++ llvm/trunk/lib/Target/Mips/Mips64InstrInfo.td Thu Apr 19 02:45:04 2018
@@ -792,13 +792,13 @@ let AdditionalPredicates = [NotInMicroMi
                       0>, ISA_MIPS3;
 
   defm : OneOrTwoOperandMacroImmediateAlias<"and", ANDi64, GPR64Opnd, imm64>,
-         GPR_64;
+         ISA_MIPS3, GPR_64;
 
   defm : OneOrTwoOperandMacroImmediateAlias<"or", ORi64, GPR64Opnd, imm64>,
-         GPR_64;
+         ISA_MIPS3, GPR_64;
 
   defm : OneOrTwoOperandMacroImmediateAlias<"xor", XORi64, GPR64Opnd, imm64>,
-         GPR_64;
+         ISA_MIPS3, GPR_64;
 }
 let AdditionalPredicates = [NotInMicroMips] in {
   def : MipsInstAlias<"dneg $rt, $rs",

Modified: llvm/trunk/lib/Target/Mips/MipsInstrInfo.td
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/Target/Mips/MipsInstrInfo.td?rev=330315&r1=330314&r2=330315&view=diff
==============================================================================
--- llvm/trunk/lib/Target/Mips/MipsInstrInfo.td (original)
+++ llvm/trunk/lib/Target/Mips/MipsInstrInfo.td Thu Apr 19 02:45:04 2018
@@ -2555,17 +2555,17 @@ let AdditionalPredicates = [NotInMicroMi
 
   defm : OneOrTwoOperandMacroImmediateAlias<"add", ADDi>, ISA_MIPS1_NOT_32R6_64R6;
 
-  defm : OneOrTwoOperandMacroImmediateAlias<"addu", ADDiu>;
+  defm : OneOrTwoOperandMacroImmediateAlias<"addu", ADDiu>, ISA_MIPS1;
 
-  defm : OneOrTwoOperandMacroImmediateAlias<"and", ANDi>, GPR_32;
+  defm : OneOrTwoOperandMacroImmediateAlias<"and", ANDi>, ISA_MIPS1, GPR_32;
 
-  defm : OneOrTwoOperandMacroImmediateAlias<"or", ORi>, GPR_32;
+  defm : OneOrTwoOperandMacroImmediateAlias<"or", ORi>, ISA_MIPS1, GPR_32;
 
-  defm : OneOrTwoOperandMacroImmediateAlias<"xor", XORi>, GPR_32;
+  defm : OneOrTwoOperandMacroImmediateAlias<"xor", XORi>, ISA_MIPS1, GPR_32;
 
-  defm : OneOrTwoOperandMacroImmediateAlias<"slt", SLTi>, GPR_32;
+  defm : OneOrTwoOperandMacroImmediateAlias<"slt", SLTi>, ISA_MIPS1, GPR_32;
 
-  defm : OneOrTwoOperandMacroImmediateAlias<"sltu", SLTiu>, GPR_32;
+  defm : OneOrTwoOperandMacroImmediateAlias<"sltu", SLTiu>, ISA_MIPS1, GPR_32;
 }
 def : MipsInstAlias<"mfc0 $rt, $rd", (MFC0 GPR32Opnd:$rt, COP0Opnd:$rd, 0), 0>;
 def : MipsInstAlias<"mtc0 $rt, $rd", (MTC0 COP0Opnd:$rd, GPR32Opnd:$rt, 0), 0>;

Modified: llvm/trunk/test/MC/Mips/instalias-imm-expanding.s
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/test/MC/Mips/instalias-imm-expanding.s?rev=330315&r1=330314&r2=330315&view=diff
==============================================================================
--- llvm/trunk/test/MC/Mips/instalias-imm-expanding.s (original)
+++ llvm/trunk/test/MC/Mips/instalias-imm-expanding.s Thu Apr 19 02:45:04 2018
@@ -1,343 +1,790 @@
-# RUN: llvm-mc  %s -triple=mipsel-unknown-linux -mcpu=mips32r2 -show-encoding | FileCheck %s
+# RUN: llvm-mc  %s -triple=mipsel-unknown-linux -mcpu=mips32r2 -show-encoding -show-inst | FileCheck --check-prefix=MIPS %s
+# RUN: llvm-mc  %s -triple=mipsel-unknown-linux -mcpu=mips32r2 -show-encoding -show-inst -mattr=+micromips | FileCheck --check-prefix=MICROMIPS %s
 
 
   .text
 text_label:
 
   add $4, -0x80000000
-# CHECK: lui    $1, 32768               # encoding: [0x00,0x80,0x01,0x3c]
-# CHECK: add    $4, $4, $1              # encoding: [0x20,0x20,0x81,0x00]
+# MIPS: lui   $1, 32768               # encoding: [0x00,0x80,0x01,0x3c]
+# MIPS: add   $4, $4, $1              # encoding: [0x20,0x20,0x81,0x00]
+# MIPS-NEXT:                          # <MCInst #{{[0-9]+}} ADD
+# MICROMIPS: lui $1, 32768            # encoding: [0xa1,0x41,0x00,0x80]
+# MICROMIPS: add $4, $4, $1           # encoding: [0x24,0x00,0x10,0x21]
+# MICROMIPS-NEXT:                     # <MCInst #{{[0-9]+}} ADD_MM
   add $4, -0x8001
-# CHECK: lui    $1, 65535               # encoding: [0xff,0xff,0x01,0x3c]
-# CHECK: ori    $1, $1, 32767           # encoding: [0xff,0x7f,0x21,0x34]
-# CHECK: add    $4, $4, $1              # encoding: [0x20,0x20,0x81,0x00]
+# MIPS: lui   $1, 65535               # encoding: [0xff,0xff,0x01,0x3c]
+# MIPS: ori   $1, $1, 32767           # encoding: [0xff,0x7f,0x21,0x34]
+# MIPS: add   $4, $4, $1              # encoding: [0x20,0x20,0x81,0x00]
+# MIPS-NEXT:                          # <MCInst #{{[0-9]+}} ADD
+# MICROMIPS: lui $1, 65535            # encoding: [0xa1,0x41,0xff,0xff]
+# MICROMIPS: ori $1, $1, 32767        # encoding: [0x21,0x50,0xff,0x7f]
+# MICROMIPS: add $4, $4, $1           # encoding: [0x24,0x00,0x10,0x21]
+# MICROMIPS-NEXT:                     # <MCInst #{{[0-9]+}} ADD_MM
   add $4, -0x8000
-# CHECK: addi   $4, $4, -32768          # encoding: [0x00,0x80,0x84,0x20]
+# MIPS: addi  $4, $4, -32768          # encoding: [0x00,0x80,0x84,0x20]
+# MIPS-NEXT:                          # <MCInst #{{[0-9]+}} ADDi
+# MICROMIPS: addi $4, $4, -32768      # encoding: [0x84,0x10,0x00,0x80]
+# MICROMIPS-NEXT:                     # <MCInst #{{[0-9]+}} ADDi_MM
   add $4, 0
-# CHECK: addi   $4, $4, 0               # encoding: [0x00,0x00,0x84,0x20]
+# MIPS: addi  $4, $4, 0               # encoding: [0x00,0x00,0x84,0x20]
+# MIPS-NEXT:                          # <MCInst #{{[0-9]+}} ADDi
+# MICROMIPS: addi $4, $4, 0           # encoding: [0x84,0x10,0x00,0x00]
+# MICROMIPS-NEXT:                     # <MCInst #{{[0-9]+}} ADDi_MM
   add $4, 0xFFFF
-# CHECK: ori    $1, $zero, 65535        # encoding: [0xff,0xff,0x01,0x34]
-# CHECK: add    $4, $4, $1              # encoding: [0x20,0x20,0x81,0x00]
+# MIPS: ori   $1, $zero, 65535        # encoding: [0xff,0xff,0x01,0x34]
+# MIPS: add   $4, $4, $1              # encoding: [0x20,0x20,0x81,0x00]
+# MIPS-NEXT:                          # <MCInst #{{[0-9]+}} ADD
+# MICROMIPS: ori $1, $zero, 65535     # encoding: [0x20,0x50,0xff,0xff]
+# MICROMIPS: add $4, $4, $1           # encoding: [0x24,0x00,0x10,0x21]
+# MICROMIPS-NEXT:                     # <MCInst #{{[0-9]+}} ADD_MM
   add $4, 0x10000
-# CHECK: lui    $1, 1                   # encoding: [0x01,0x00,0x01,0x3c]
-# CHECK: add    $4, $4, $1              # encoding: [0x20,0x20,0x81,0x00]
+# MIPS: lui   $1, 1                   # encoding: [0x01,0x00,0x01,0x3c]
+# MIPS: add   $4, $4, $1              # encoding: [0x20,0x20,0x81,0x00]
+# MIPS-NEXT:                          # <MCInst #{{[0-9]+}} ADD
+# MICROMIPS: lui $1, 1                # encoding: [0xa1,0x41,0x01,0x00]
+# MICROMIPS: add $4, $4, $1           # encoding: [0x24,0x00,0x10,0x21]
+# MICROMIPS-NEXT:                     # <MCInst #{{[0-9]+}} ADD_MM
   add $4, 0xFFFFFFFF
-# CHECK: addi   $4, $4, -1              # encoding: [0xff,0xff,0x84,0x20]
+# MIPS: addi  $4, $4, -1              # encoding: [0xff,0xff,0x84,0x20]
+# MIPS-NEXT:                          # <MCInst #{{[0-9]+}} ADD
+# MICROMIPS: addi $4, $4, -1          # encoding: [0x84,0x10,0xff,0xff]
+# MICROMIPS-NEXT:                     # <MCInst #{{[0-9]+}} ADDi_MM
   add $5, ~(0xf0000000|0x0f000000|0x000000f0)
-# CHECK: lui    $1, 255                 # encoding: [0xff,0x00,0x01,0x3c]
-# CHECK: ori    $1, $1, 65295           # encoding: [0x0f,0xff,0x21,0x34]
-# CHECK: add    $5, $5, $1              # encoding: [0x20,0x28,0xa1,0x00]
-
+# MIPS: lui   $1, 255                 # encoding: [0xff,0x00,0x01,0x3c]
+# MIPS: ori   $1, $1, 65295           # encoding: [0x0f,0xff,0x21,0x34]
+# MIPS: add   $5, $5, $1              # encoding: [0x20,0x28,0xa1,0x00]
+# MIPS-NEXT:                          # <MCInst #{{[0-9]+}} ADD
+# MICROMIPS: lui $1, 255              # encoding: [0xa1,0x41,0xff,0x00]
+# MICROMIPS: ori $1, $1, 65295        # encoding: [0x21,0x50,0x0f,0xff]
+# MICROMIPS: add $5, $5, $1           # encoding: [0x25,0x00,0x10,0x29]
+# MICROMIPS-NEXT:                     # <MCInst #{{[0-9]+}} ADD_MM
   add $4, $5, -0x80000000
-# CHECK: lui    $4, 32768               # encoding: [0x00,0x80,0x04,0x3c]
-# CHECK: add    $4, $4, $5              # encoding: [0x20,0x20,0x85,0x00]
+# MIPS: lui   $4, 32768               # encoding: [0x00,0x80,0x04,0x3c]
+# MIPS: add   $4, $4, $5              # encoding: [0x20,0x20,0x85,0x00]
+# MIPS-NEXT:                          # <MCInst #{{[0-9]+}} ADD
+# MICROMIPS: lui $4, 32768            # encoding: [0xa4,0x41,0x00,0x80]
+# MICROMIPS: add $4, $4, $5           # encoding: [0xa4,0x00,0x10,0x21]
+# MICROMIPS-NEXT:                     # <MCInst #{{[0-9]+}} ADD_MM
   add $4, $5, -0x8001
-# CHECK: lui    $4, 65535               # encoding: [0xff,0xff,0x04,0x3c]
-# CHECK: ori    $4, $4, 32767           # encoding: [0xff,0x7f,0x84,0x34]
-# CHECK: add    $4, $4, $5              # encoding: [0x20,0x20,0x85,0x00]
+# MIPS: lui   $4, 65535               # encoding: [0xff,0xff,0x04,0x3c]
+# MIPS: ori   $4, $4, 32767           # encoding: [0xff,0x7f,0x84,0x34]
+# MIPS: add   $4, $4, $5              # encoding: [0x20,0x20,0x85,0x00]
+# MIPS-NEXT:                          # <MCInst #{{[0-9]+}} ADD
+# MICROMIPS: lui $4, 65535            # encoding: [0xa4,0x41,0xff,0xff]
+# MICROMIPS: ori $4, $4, 32767        # encoding: [0x84,0x50,0xff,0x7f]
+# MICROMIPS: add $4, $4, $5           # encoding: [0xa4,0x00,0x10,0x21]
+# MICROMIPS-NEXT:                     # <MCInst #{{[0-9]+}} ADD_MM
   add $4, $5, -0x8000
-# CHECK: addi   $4, $5, -32768          # encoding: [0x00,0x80,0xa4,0x20]
+# MIPS: addi  $4, $5, -32768          # encoding: [0x00,0x80,0xa4,0x20]
+# MIPS-NEXT:                          # <MCInst #{{[0-9]+}} ADDi
+# MICROMIPS: addi $4, $5, -32768      # encoding: [0x85,0x10,0x00,0x80]
+# MICROMIPS-NEXT:                     # <MCInst #{{[0-9]+}} ADDi_MM
   add $4, $5, 0
-# CHECK: addi   $4, $5, 0               # encoding: [0x00,0x00,0xa4,0x20]
+# MIPS: addi  $4, $5, 0               # encoding: [0x00,0x00,0xa4,0x20]
+# MIPS-NEXT:                          # <MCInst #{{[0-9]+}} ADDi
+# MICROMIPS: addi $4, $5, 0           # encoding: [0x85,0x10,0x00,0x00]
+# MICROMIPS-NEXT:                     # <MCInst #{{[0-9]+}} ADDi_MM
   add $4, $5, 0xFFFF
-# CHECK: ori    $4, $zero, 65535        # encoding: [0xff,0xff,0x04,0x34]
-# CHECK: add    $4, $4, $5              # encoding: [0x20,0x20,0x85,0x00]
+# MIPS: ori   $4, $zero, 65535        # encoding: [0xff,0xff,0x04,0x34]
+# MIPS: add   $4, $4, $5              # encoding: [0x20,0x20,0x85,0x00]
+# MIPS-NEXT:                          # <MCInst #{{[0-9]+}} ADD
+# MICROMIPS: ori $4, $zero, 65535     # encoding: [0x80,0x50,0xff,0xff]
+# MICROMIPS: add $4, $4, $5           # encoding: [0xa4,0x00,0x10,0x21]
+# MICROMIPS-NEXT:                     # <MCInst #{{[0-9]+}} ADD_MM
   add $4, $5, 0x10000
-# CHECK: lui    $4, 1                   # encoding: [0x01,0x00,0x04,0x3c]
-# CHECK: add    $4, $4, $5              # encoding: [0x20,0x20,0x85,0x00]
+# MIPS: lui   $4, 1                   # encoding: [0x01,0x00,0x04,0x3c]
+# MIPS: add   $4, $4, $5              # encoding: [0x20,0x20,0x85,0x00]
+# MIPS-NEXT:                          # <MCInst #{{[0-9]+}} ADD
+# MICROMIPS: lui $4, 1                # encoding: [0xa4,0x41,0x01,0x00]
+# MICROMIPS: add $4, $4, $5           # encoding: [0xa4,0x00,0x10,0x21]
+# MICROMIPS-NEXT:                     # <MCInst #{{[0-9]+}} ADD_MM
   add $4, $5, 0xFFFFFFFF
-# CHECK: addi   $4, $5, -1              # encoding: [0xff,0xff,0xa4,0x20]
+# MIPS: addi  $4, $5, -1              # encoding: [0xff,0xff,0xa4,0x20]
+# MIPS-NEXT:                          # <MCInst #{{[0-9]+}} ADDi
+# MICROMIPS: addi $4, $5, -1          # encoding: [0x85,0x10,0xff,0xff]
+# MICROMIPS-NEXT:                     # <MCInst #{{[0-9]+}} ADDi_MM
   add $4, $5, ~(0xf0000000|0x0f000000|0x000000f0)
-# CHECK: lui    $4, 255                 # encoding: [0xff,0x00,0x04,0x3c]
-# CHECK: ori    $4, $4, 65295           # encoding: [0x0f,0xff,0x84,0x34]
-# CHECK: add    $4, $4, $5              # encoding: [0x20,0x20,0x85,0x00]
+# MIPS: lui   $4, 255                 # encoding: [0xff,0x00,0x04,0x3c]
+# MIPS: ori   $4, $4, 65295           # encoding: [0x0f,0xff,0x84,0x34]
+# MIPS: add   $4, $4, $5              # encoding: [0x20,0x20,0x85,0x00]
+# MIPS-NEXT:                          # <MCInst #{{[0-9]+}} ADD
+# MICROMIPS: lui $4, 255              # encoding: [0xa4,0x41,0xff,0x00]
+# MICROMIPS: ori $4, $4, 65295        # encoding: [0x84,0x50,0x0f,0xff]
+# MICROMIPS: add $4, $4, $5           # encoding: [0xa4,0x00,0x10,0x21]
+# MICROMIPS-NEXT:                     # <MCInst #{{[0-9]+}} ADD_MM
 
   addu $4, -0x80000000
-# CHECK: lui    $1, 32768               # encoding: [0x00,0x80,0x01,0x3c]
-# CHECK: addu   $4, $4, $1              # encoding: [0x21,0x20,0x81,0x00]
+# MIPS: lui   $1, 32768               # encoding: [0x00,0x80,0x01,0x3c]
+# MIPS: addu  $4, $4, $1              # encoding: [0x21,0x20,0x81,0x00]
+# MIPS-NEXT:                          # <MCInst #{{[0-9]+}} ADDu
+# MICROMIPS: lui $1, 32768            # encoding: [0xa1,0x41,0x00,0x80]
+# MICROMIPS: addu $4, $4, $1          # encoding: [0x24,0x00,0x50,0x21]
+# MICROMIPS-NEXT:                     # <MCInst #{{[0-9]+}} ADDu_MM
   addu $4, -0x8001
-# CHECK: lui    $1, 65535               # encoding: [0xff,0xff,0x01,0x3c]
-# CHECK: ori    $1, $1, 32767           # encoding: [0xff,0x7f,0x21,0x34]
-# CHECK: addu   $4, $4, $1              # encoding: [0x21,0x20,0x81,0x00]
+# MIPS: lui   $1, 65535               # encoding: [0xff,0xff,0x01,0x3c]
+# MIPS: ori   $1, $1, 32767           # encoding: [0xff,0x7f,0x21,0x34]
+# MIPS: addu  $4, $4, $1              # encoding: [0x21,0x20,0x81,0x00]
+# MIPS-NEXT:                          # <MCInst #{{[0-9]+}} ADDu
+# MICROMIPS: lui $1, 65535            # encoding: [0xa1,0x41,0xff,0xff]
+# MICROMIPS: ori $1, $1, 32767        # encoding: [0x21,0x50,0xff,0x7f]
+# MICROMIPS: addu $4, $4, $1          # encoding: [0x24,0x00,0x50,0x21]
+# MICROMIPS-NEXT:                     # <MCInst #{{[0-9]+}} ADDu_MM
   addu $4, -0x8000
-# CHECK: addiu  $4, $4, -32768          # encoding: [0x00,0x80,0x84,0x24]
+# MIPS: addiu $4, $4, -32768          # encoding: [0x00,0x80,0x84,0x24]
+# MIPS-NEXT:                          # <MCInst #{{[0-9]+}} ADDiu
+# MICROMIPS: addiu $4, $4, -32768     # encoding: [0x84,0x30,0x00,0x80]
+# MICROMIPS-NEXT:                     # <MCInst #{{[0-9]+}} ADDiu_MM
   addu $4, 0
-# CHECK: addiu  $4, $4, 0               # encoding: [0x00,0x00,0x84,0x24]
+# MIPS: addiu $4, $4, 0               # encoding: [0x00,0x00,0x84,0x24]
+# MIPS-NEXT:                          # <MCInst #{{[0-9]+}} ADDiu
+# MICROMIPS: addiu $4, $4, 0          # encoding: [0x84,0x30,0x00,0x00]
+# MICROMIPS-NEXT:                     # <MCInst #{{[0-9]+}} ADDiu_MM
   addu $4, 0xFFFF
-# CHECK: ori    $1, $zero, 65535        # encoding: [0xff,0xff,0x01,0x34]
-# CHECK: addu   $4, $4, $1              # encoding: [0x21,0x20,0x81,0x00]
+# MIPS: ori   $1, $zero, 65535        # encoding: [0xff,0xff,0x01,0x34]
+# MIPS: addu  $4, $4, $1              # encoding: [0x21,0x20,0x81,0x00]
+# MIPS-NEXT:                          # <MCInst #{{[0-9]+}} ADDu
+# MICROMIPS: ori $1, $zero, 65535     # encoding: [0x20,0x50,0xff,0xff]
+# MICROMIPS: addu $4, $4, $1          # encoding: [0x24,0x00,0x50,0x21]
+# MICROMIPS-NEXT:                     # <MCInst #{{[0-9]+}} ADDu_MM
   addu $4, 0x10000
-# CHECK: lui    $1, 1                   # encoding: [0x01,0x00,0x01,0x3c]
-# CHECK: addu   $4, $4, $1              # encoding: [0x21,0x20,0x81,0x00]
+# MIPS: lui   $1, 1                   # encoding: [0x01,0x00,0x01,0x3c]
+# MIPS: addu  $4, $4, $1              # encoding: [0x21,0x20,0x81,0x00]
+# MIPS-NEXT:                          # <MCInst #{{[0-9]+}} ADDu
+# MICROMIPS: lui $1, 1                # encoding: [0xa1,0x41,0x01,0x00]
+# MICROMIPS: addu $4, $4, $1          # encoding: [0x24,0x00,0x50,0x21]
+# MICROMIPS-NEXT:                     # <MCInst #{{[0-9]+}} ADDu_MM
   addu $4, 0xFFFFFFFF
-# CHECK: addiu  $4, $4, -1              # encoding: [0xff,0xff,0x84,0x24]
+# MIPS: addiu $4, $4, -1              # encoding: [0xff,0xff,0x84,0x24]
+# MIPS-NEXT:                          # <MCInst #{{[0-9]+}} ADDiu
+# MICROMIPS: addiu $4, $4, -1         # encoding: [0x84,0x30,0xff,0xff]
+# MICROMIPS-NEXT:                     # <MCInst #{{[0-9]+}} ADDiu_MM
   addu $5, ~(0xf0000000|0x0f000000|0x000000f0)
-# CHECK: lui    $1, 255                 # encoding: [0xff,0x00,0x01,0x3c]
-# CHECK: ori    $1, $1, 65295           # encoding: [0x0f,0xff,0x21,0x34]
-# CHECK: addu    $5, $5, $1              # encoding: [0x21,0x28,0xa1,0x00]
+# MIPS: lui   $1, 255                 # encoding: [0xff,0x00,0x01,0x3c]
+# MIPS: ori   $1, $1, 65295           # encoding: [0x0f,0xff,0x21,0x34]
+# MIPS: addu  $5, $5, $1              # encoding: [0x21,0x28,0xa1,0x00]
+# MIPS-NEXT:                          # <MCInst #{{[0-9]+}} ADDu
+# MICROMIPS: lui $1, 255              # encoding: [0xa1,0x41,0xff,0x00]
+# MICROMIPS: ori $1, $1, 65295        # encoding: [0x21,0x50,0x0f,0xff]
+# MICROMIPS: addu $5, $5, $1          # encoding: [0x25,0x00,0x50,0x29]
+# MICROMIPS-NEXT:                     # <MCInst #{{[0-9]+}} ADDu_MM
 
   addu $4, $5, -0x80000000
-# CHECK: lui    $4, 32768               # encoding: [0x00,0x80,0x04,0x3c]
-# CHECK: addu   $4, $4, $5              # encoding: [0x21,0x20,0x85,0x00]
+# MIPS: lui   $4, 32768               # encoding: [0x00,0x80,0x04,0x3c]
+# MIPS: addu  $4, $4, $5              # encoding: [0x21,0x20,0x85,0x00]
+# MIPS-NEXT:                          # <MCInst #{{[0-9]+}} ADDu
+# MICROMIPS: lui $4, 32768            # encoding: [0xa4,0x41,0x00,0x80]
+# MICROMIPS: addu $4, $4, $5          # encoding: [0xa4,0x00,0x50,0x21]
+# MICROMIPS-NEXT:                     # <MCInst #{{[0-9]+}} ADDu_MM
   addu $4, $5, -0x8001
-# CHECK: lui    $4, 65535               # encoding: [0xff,0xff,0x04,0x3c]
-# CHECK: ori    $4, $4, 32767           # encoding: [0xff,0x7f,0x84,0x34]
-# CHECK: addu   $4, $4, $5              # encoding: [0x21,0x20,0x85,0x00]
+# MIPS: lui   $4, 65535               # encoding: [0xff,0xff,0x04,0x3c]
+# MIPS: ori   $4, $4, 32767           # encoding: [0xff,0x7f,0x84,0x34]
+# MIPS: addu  $4, $4, $5              # encoding: [0x21,0x20,0x85,0x00]
+# MIPS-NEXT:                          # <MCInst #{{[0-9]+}} ADDu
+# MICROMIPS: lui $4, 65535            # encoding: [0xa4,0x41,0xff,0xff]
+# MICROMIPS: ori $4, $4, 32767        # encoding: [0x84,0x50,0xff,0x7f]
+# MICROMIPS: addu $4, $4, $5          # encoding: [0xa4,0x00,0x50,0x21]
+# MICROMIPS-NEXT:                     # <MCInst #{{[0-9]+}} ADDu_MM
   addu $4, $5, -0x8000
-# CHECK: addiu  $4, $5, -32768          # encoding: [0x00,0x80,0xa4,0x24]
+# MIPS: addiu $4, $5, -32768          # encoding: [0x00,0x80,0xa4,0x24]
+# MIPS-NEXT:                          # <MCInst #{{[0-9]+}} ADDiu
+# MICROMIPS: addiu $4, $5, -32768     # encoding: [0x85,0x30,0x00,0x80]
+# MICROMIPS-NEXT:                     # <MCInst #{{[0-9]+}} ADDiu_MM
   addu $4, $5, 0
-# CHECK: addiu  $4, $5, 0               # encoding: [0x00,0x00,0xa4,0x24]
+# MIPS: addiu $4, $5, 0               # encoding: [0x00,0x00,0xa4,0x24]
+# MIPS-NEXT:                          # <MCInst #{{[0-9]+}} ADDiu
+# MICROMIPS: addiu $4, $5, 0          # encoding: [0x85,0x30,0x00,0x00]
+# MICROMIPS-NEXT:                     # <MCInst #{{[0-9]+}} ADDiu_MM
   addu $4, $5, 0xFFFF
-# CHECK: ori    $4, $zero, 65535        # encoding: [0xff,0xff,0x04,0x34]
-# CHECK: addu   $4, $4, $5              # encoding: [0x21,0x20,0x85,0x00]
+# MIPS: ori   $4, $zero, 65535        # encoding: [0xff,0xff,0x04,0x34]
+# MIPS: addu  $4, $4, $5              # encoding: [0x21,0x20,0x85,0x00]
+# MIPS-NEXT:                          # <MCInst #{{[0-9]+}} ADDu
+# MICROMIPS: ori $4, $zero, 65535     # encoding: [0x80,0x50,0xff,0xff]
+# MICROMIPS: addu $4, $4, $5          # encoding: [0xa4,0x00,0x50,0x21]
+# MICROMIPS-NEXT:                     # <MCInst #{{[0-9]+}} ADDu_MM
   addu $4, $5, 0x10000
-# CHECK: lui    $4, 1                   # encoding: [0x01,0x00,0x04,0x3c]
-# CHECK: addu   $4, $4, $5              # encoding: [0x21,0x20,0x85,0x00]
+# MIPS: lui   $4, 1                   # encoding: [0x01,0x00,0x04,0x3c]
+# MIPS: addu  $4, $4, $5              # encoding: [0x21,0x20,0x85,0x00]
+# MIPS-NEXT:                          # <MCInst #{{[0-9]+}} ADDu
+# MICROMIPS: lui $4, 1                # encoding: [0xa4,0x41,0x01,0x00]
+# MICROMIPS: addu $4, $4, $5          # encoding: [0xa4,0x00,0x50,0x21]
+# MICROMIPS-NEXT:                     # <MCInst #{{[0-9]+}} ADDu_MM
   addu $4, $5, 0xFFFFFFFF
-# CHECK: addiu  $4, $5, -1              # encoding: [0xff,0xff,0xa4,0x24]
+# MIPS: addiu  $4, $5, -1              # encoding: [0xff,0xff,0xa4,0x24]
+# MIPS-NEXT:                          # <MCInst #{{[0-9]+}} ADDiu
+# MICROMIPS: addiu $4, $5, -1         # encoding: [0x85,0x30,0xff,0xff]
+# MICROMIPS-NEXT:                     # <MCInst #{{[0-9]+}} ADDiu_MM
   addu $4, $5, ~(0xf0000000|0x0f000000|0x000000f0)
-# CHECK: lui    $4, 255                 # encoding: [0xff,0x00,0x04,0x3c]
-# CHECK: ori    $4, $4, 65295           # encoding: [0x0f,0xff,0x84,0x34]
-# CHECK: addu    $4, $4, $5              # encoding: [0x21,0x20,0x85,0x00]
+# MIPS: lui   $4, 255                 # encoding: [0xff,0x00,0x04,0x3c]
+# MIPS: ori   $4, $4, 65295           # encoding: [0x0f,0xff,0x84,0x34]
+# MIPS: addu  $4, $4, $5              # encoding: [0x21,0x20,0x85,0x00]
+# MIPS-NEXT:                          # <MCInst #{{[0-9]+}} ADDu
+# MICROMIPS: lui $4, 255              # encoding: [0xa4,0x41,0xff,0x00]
+# MICROMIPS: ori $4, $4, 65295        # encoding: [0x84,0x50,0x0f,0xff]
+# MICROMIPS: addu $4, $4, $5          # encoding: [0xa4,0x00,0x50,0x21]
+# MICROMIPS-NEXT:                     # <MCInst #{{[0-9]+}} ADDu_MM
 
   and $4, -0x80000000
-# CHECK: lui    $1, 32768               # encoding: [0x00,0x80,0x01,0x3c]
-# CHECK: and    $4, $4, $1              # encoding: [0x24,0x20,0x81,0x00]
+# MIPS: lui   $1, 32768               # encoding: [0x00,0x80,0x01,0x3c]
+# MIPS: and   $4, $4, $1              # encoding: [0x24,0x20,0x81,0x00]
+# MIPS-NEXT:                          # <MCInst #{{[0-9]+}} AND
+# MICROMIPS: lui $1, 32768            # encoding: [0xa1,0x41,0x00,0x80]
+# MICROMIPS: and $4, $4, $1           # encoding: [0x24,0x00,0x50,0x22]
+# MICROMIPS-NEXT:                     # <MCInst #{{[0-9]+}} AND_MM
   and $4, -0x8001
-# CHECK: lui    $1, 65535               # encoding: [0xff,0xff,0x01,0x3c]
-# CHECK: ori    $1, $1, 32767           # encoding: [0xff,0x7f,0x21,0x34]
-# CHECK: and    $4, $4, $1              # encoding: [0x24,0x20,0x81,0x00]
+# MIPS: lui   $1, 65535               # encoding: [0xff,0xff,0x01,0x3c]
+# MIPS: ori   $1, $1, 32767           # encoding: [0xff,0x7f,0x21,0x34]
+# MIPS: and   $4, $4, $1              # encoding: [0x24,0x20,0x81,0x00]
+# MIPS-NEXT:                          # <MCInst #{{[0-9]+}} AND
+# MICROMIPS: lui $1, 65535            # encoding: [0xa1,0x41,0xff,0xff]
+# MICROMIPS: ori $1, $1, 32767        # encoding: [0x21,0x50,0xff,0x7f]
+# MICROMIPS: and $4, $4, $1           # encoding: [0x24,0x00,0x50,0x22]
+# MICROMIPS-NEXT:                     # <MCInst #{{[0-9]+}} AND_MM
   and $4, -0x8000
-# CHECK: addiu  $1, $zero, -32768       # encoding: [0x00,0x80,0x01,0x24]
+# MIPS: addiu $1, $zero, -32768       # encoding: [0x00,0x80,0x01,0x24]
+# MIPS: and   $4, $4, $1              # encoding: [0x24,0x20,0x81,0x00]
+# MIPS-NEXT:                          # <MCInst #{{[0-9]+}} AND
+# MICROMIPS: addiu $1, $zero, -32768  # encoding: [0x20,0x30,0x00,0x80]
+# MICROMIPS: and $4, $4, $1           # encoding: [0x24,0x00,0x50,0x22]
+# MICROMIPS-NEXT:                     # <MCInst #{{[0-9]+}} AND_MM
   and $4, 0
-# CHECK: andi   $4, $4, 0               # encoding: [0x00,0x00,0x84,0x30]
+# MIPS: andi  $4, $4, 0               # encoding: [0x00,0x00,0x84,0x30]
+# MIPS-NEXT:                          # <MCInst #{{[0-9]+}} ANDi
+# MICROMIPS: andi $4, $4, 0           # encoding: [0x84,0xd0,0x00,0x00]
+# MICROMIPS-NEXT:                     # <MCInst #{{[0-9]+}} ANDi_MM
   and $4, 0xFFFF
-# CHECK: andi   $4, $4, 65535           # encoding: [0xff,0xff,0x84,0x30]
+# MIPS: andi  $4, $4, 65535           # encoding: [0xff,0xff,0x84,0x30]
+# MIPS-NEXT:                          # <MCInst #{{[0-9]+}} ANDi
+# MICROMIPS: andi $4, $4, 65535       # encoding: [0x84,0xd0,0xff,0xff]
+# MICROMIPS-NEXT:                     # <MCInst #{{[0-9]+}} ANDi_MM
   and $4, 0x10000
-# CHECK: lui    $1, 1                   # encoding: [0x01,0x00,0x01,0x3c]
-# CHECK: and    $4, $4, $1              # encoding: [0x24,0x20,0x81,0x00]
+# MIPS: lui   $1, 1                   # encoding: [0x01,0x00,0x01,0x3c]
+# MIPS: and   $4, $4, $1              # encoding: [0x24,0x20,0x81,0x00]
+# MIPS-NEXT:                          # <MCInst #{{[0-9]+}} AND
+# MICROMIPS: lui $1, 1                # encoding: [0xa1,0x41,0x01,0x00]
+# MICROMIPS: and $4, $4, $1           # encoding: [0x24,0x00,0x50,0x22]
+# MICROMIPS-NEXT:                     # <MCInst #{{[0-9]+}} AND_MM
   and $4, 0xFFFFFFFF
-# CHECK: addiu  $1, $zero, -1           # encoding: [0xff,0xff,0x01,0x24]
-# CHECK: and    $4, $4, $1              # encoding: [0x24,0x20,0x81,0x00]
+# MIPS: addiu $1, $zero, -1           # encoding: [0xff,0xff,0x01,0x24]
+# MIPS: and   $4, $4, $1              # encoding: [0x24,0x20,0x81,0x00]
+# MIPS-NEXT:                          # <MCInst #{{[0-9]+}} AND
+# MICROMIPS: addiu $1, $zero, -1      # encoding: [0x20,0x30,0xff,0xff]
+# MICROMIPS: and $4, $4, $1           # encoding: [0x24,0x00,0x50,0x22]
+# MICROMIPS-NEXT:                     # <MCInst #{{[0-9]+}} AND_MM
   and $5, ~(0xf0000000|0x0f000000|0x000000f0)
-# CHECK: lui    $1, 255                 # encoding: [0xff,0x00,0x01,0x3c]
-# CHECK: ori    $1, $1, 65295           # encoding: [0x0f,0xff,0x21,0x34]
-# CHECK: and    $5, $5, $1              # encoding: [0x24,0x28,0xa1,0x00]
+# MIPS: lui   $1, 255                 # encoding: [0xff,0x00,0x01,0x3c]
+# MIPS: ori   $1, $1, 65295           # encoding: [0x0f,0xff,0x21,0x34]
+# MIPS: and   $5, $5, $1              # encoding: [0x24,0x28,0xa1,0x00]
+# MIPS-NEXT:                          # <MCInst #{{[0-9]+}} AND
+# MICROMIPS: lui $1, 255              # encoding: [0xa1,0x41,0xff,0x00]
+# MICROMIPS: ori $1, $1, 65295        # encoding: [0x21,0x50,0x0f,0xff]
+# MICROMIPS: and $5, $5, $1           # encoding: [0x25,0x00,0x50,0x2a]
+# MICROMIPS-NEXT:                     # <MCInst #{{[0-9]+}} AND_MM
 
   and $4, $5, -0x80000000
-# CHECK: lui    $4, 32768               # encoding: [0x00,0x80,0x04,0x3c]
-# CHECK: and    $4, $4, $5              # encoding: [0x24,0x20,0x85,0x00]
+# MIPS: lui   $4, 32768               # encoding: [0x00,0x80,0x04,0x3c]
+# MIPS: and   $4, $4, $5              # encoding: [0x24,0x20,0x85,0x00]
+# MIPS-NEXT:                          # <MCInst #{{[0-9]+}} AND
+# MICROMIPS: lui $4, 32768            # encoding: [0xa4,0x41,0x00,0x80]
+# MICROMIPS: and $4, $4, $5           # encoding: [0xa4,0x00,0x50,0x22]
+# MICROMIPS-NEXT:                     # <MCInst #{{[0-9]+}} AND_MM
   and $4, $5, -0x8001
-# CHECK: lui    $4, 65535               # encoding: [0xff,0xff,0x04,0x3c]
-# CHECK: ori    $4, $4, 32767           # encoding: [0xff,0x7f,0x84,0x34]
-# CHECK: and    $4, $4, $5              # encoding: [0x24,0x20,0x85,0x00]
+# MIPS: lui   $4, 65535               # encoding: [0xff,0xff,0x04,0x3c]
+# MIPS: ori   $4, $4, 32767           # encoding: [0xff,0x7f,0x84,0x34]
+# MIPS: and   $4, $4, $5              # encoding: [0x24,0x20,0x85,0x00]
+# MIPS-NEXT:                          # <MCInst #{{[0-9]+}} AND
+# MICROMIPS: lui $4, 65535            # encoding: [0xa4,0x41,0xff,0xff]
+# MICROMIPS: ori $4, $4, 32767        # encoding: [0x84,0x50,0xff,0x7f]
+# MICROMIPS: and $4, $4, $5           # encoding: [0xa4,0x00,0x50,0x22]
+# MICROMIPS-NEXT:                     # <MCInst #{{[0-9]+}} AND_MM
   and $4, $5, -0x8000
-# CHECK: addiu  $4, $zero, -32768       # encoding: [0x00,0x80,0x04,0x24]
-# CHECK: and    $4, $4, $5              # encoding: [0x24,0x20,0x85,0x00]
+# MIPS: addiu $4, $zero, -32768       # encoding: [0x00,0x80,0x04,0x24]
+# MIPS: and   $4, $4, $5              # encoding: [0x24,0x20,0x85,0x00]
+# MIPS-NEXT:                          # <MCInst #{{[0-9]+}} AND
+# MICROMIPS: addiu $4, $zero, -32768  # encoding: [0x80,0x30,0x00,0x80]
+# MICROMIPS: and $4, $4, $5           # encoding: [0xa4,0x00,0x50,0x22]
+# MICROMIPS-NEXT:                     # <MCInst #{{[0-9]+}} AND_MM
   and $4, $5, 0
-# CHECK: andi   $4, $5, 0               # encoding: [0x00,0x00,0xa4,0x30]
+# MIPS: andi  $4, $5, 0               # encoding: [0x00,0x00,0xa4,0x30]
+# MIPS-NEXT:                          # <MCInst #{{[0-9]+}} ANDi
+# MICROMIPS: andi $4, $5, 0           # encoding: [0x85,0xd0,0x00,0x00]
+# MICROMIPS-NEXT:                     # <MCInst #{{[0-9]+}} ANDi_MM
   and $4, $5, 0xFFFF
-# CHECK: andi   $4, $5, 65535           # encoding: [0xff,0xff,0xa4,0x30]
+# MIPS: andi  $4, $5, 65535           # encoding: [0xff,0xff,0xa4,0x30]
+# MIPS-NEXT:                          # <MCInst #{{[0-9]+}} ANDi
+# MICROMIPS: andi $4, $5, 65535       # encoding: [0x85,0xd0,0xff,0xff]
+# MICROMIPS-NEXT:                     # <MCInst #{{[0-9]+}} ANDi_MM
   and $4, $5, 0x10000
-# CHECK: lui    $4, 1                   # encoding: [0x01,0x00,0x04,0x3c]
-# CHECK: and    $4, $4, $5              # encoding: [0x24,0x20,0x85,0x00]
+# MIPS: lui   $4, 1                   # encoding: [0x01,0x00,0x04,0x3c]
+# MIPS: and   $4, $4, $5              # encoding: [0x24,0x20,0x85,0x00]
+# MIPS-NEXT:                          # <MCInst #{{[0-9]+}} AND
+# MICROMIPS: lui $4, 1                # encoding: [0xa4,0x41,0x01,0x00]
+# MICROMIPS: and $4, $4, $5           # encoding: [0xa4,0x00,0x50,0x22]
+# MICROMIPS-NEXT:                     # <MCInst #{{[0-9]+}} AND_MM
   and $4, $5, 0xFFFFFFFF
-# CHECK: addiu  $4, $zero, -1           # encoding: [0xff,0xff,0x04,0x24]
-# CHECK: and    $4, $4, $5              # encoding: [0x24,0x20,0x85,0x00]
+# MIPS: addiu $4, $zero, -1           # encoding: [0xff,0xff,0x04,0x24]
+# MIPS: and   $4, $4, $5              # encoding: [0x24,0x20,0x85,0x00]
+# MIPS-NEXT:                          # <MCInst #{{[0-9]+}} AND
+# MICROMIPS: addiu $4, $zero, -1      # encoding: [0x80,0x30,0xff,0xff]
+# MICROMIPS: and $4, $4, $5           # encoding: [0xa4,0x00,0x50,0x22]
+# MICROMIPS-NEXT:                     # <MCInst #{{[0-9]+}} AND_MM
   and $4, $5, ~(0xf0000000|0x0f000000|0x000000f0)
-# CHECK: lui    $4, 255                 # encoding: [0xff,0x00,0x04,0x3c]
-# CHECK: ori    $4, $4, 65295           # encoding: [0x0f,0xff,0x84,0x34]
-# CHECK: and    $4, $4, $5              # encoding: [0x24,0x20,0x85,0x00]
+# MIPS: lui   $4, 255                 # encoding: [0xff,0x00,0x04,0x3c]
+# MIPS: ori   $4, $4, 65295           # encoding: [0x0f,0xff,0x84,0x34]
+# MIPS: and   $4, $4, $5              # encoding: [0x24,0x20,0x85,0x00]
+# MIPS-NEXT:                          # <MCInst #{{[0-9]+}} AND
+# MICROMIPS: lui $4, 255              # encoding: [0xa4,0x41,0xff,0x00]
+# MICROMIPS: ori $4, $4, 65295        # encoding: [0x84,0x50,0x0f,0xff]
+# MICROMIPS: and $4, $4, $5           # encoding: [0xa4,0x00,0x50,0x22]
+# MICROMIPS-NEXT:                     # <MCInst #{{[0-9]+}} AND_MM
 
   nor $4, $5, 0
-# CHECK: addiu  $4, $zero, 0            # encoding: [0x00,0x00,0x04,0x24]
-# CHECK: nor    $4, $4, $5              # encoding: [0x27,0x20,0x85,0x00]
+# MIPS: addiu $4, $zero, 0            # encoding: [0x00,0x00,0x04,0x24]
+# MIPS: nor   $4, $4, $5              # encoding: [0x27,0x20,0x85,0x00]
+# MIPS-NEXT:                          # <MCInst #{{[0-9]+}} NOR
+# MICROMIPS: addiu $4, $zero, 0       # encoding: [0x80,0x30,0x00,0x00]
+# MICROMIPS: nor $4, $4, $5           # encoding: [0xa4,0x00,0xd0,0x22]
+# MICROMIPS-NEXT:                     # <MCInst #{{[0-9]+}} NOR
   nor $4, $5, 1
-# CHECK: addiu  $4, $zero, 1            # encoding: [0x01,0x00,0x04,0x24]
-# CHECK: nor    $4, $4, $5              # encoding: [0x27,0x20,0x85,0x00]
+# MIPS: addiu $4, $zero, 1            # encoding: [0x01,0x00,0x04,0x24]
+# MIPS: nor   $4, $4, $5              # encoding: [0x27,0x20,0x85,0x00]
+# MIPS-NEXT:                          # <MCInst #{{[0-9]+}} NOR
+# MICROMIPS: addiu $4, $zero, 1       # encoding: [0x80,0x30,0x01,0x00]
+# MICROMIPS: nor $4, $4, $5           # encoding: [0xa4,0x00,0xd0,0x22]
+# MICROMIPS-NEXT:                     # <MCInst #{{[0-9]+}} NOR
   nor $4, $5, 0x8000
-# CHECK: ori    $4, $zero, 32768        # encoding: [0x00,0x80,0x04,0x34]
-# CHECK: nor    $4, $4, $5              # encoding: [0x27,0x20,0x85,0x00]
+# MIPS: ori   $4, $zero, 32768        # encoding: [0x00,0x80,0x04,0x34]
+# MIPS: nor   $4, $4, $5              # encoding: [0x27,0x20,0x85,0x00]
+# MIPS-NEXT:                          # <MCInst #{{[0-9]+}} NOR
+# MICROMIPS: ori $4, $zero, 32768     # encoding: [0x80,0x50,0x00,0x80]
+# MICROMIPS: nor $4, $4, $5           # encoding: [0xa4,0x00,0xd0,0x22]
+# MICROMIPS-NEXT:                     # <MCInst #{{[0-9]+}} NOR
   nor $4, $5, -0x8000
-# CHECK: addiu  $4, $zero, -32768       # encoding: [0x00,0x80,0x04,0x24]
-# CHECK: nor    $4, $4, $5              # encoding: [0x27,0x20,0x85,0x00]
+# MIPS: addiu $4, $zero, -32768       # encoding: [0x00,0x80,0x04,0x24]
+# MIPS: nor   $4, $4, $5              # encoding: [0x27,0x20,0x85,0x00]
+# MIPS-NEXT:                          # <MCInst #{{[0-9]+}} NOR
+# MICROMIPS: addiu $4, $zero, -32768  # encoding: [0x80,0x30,0x00,0x80]
+# MICROMIPS: nor $4, $4, $5           # encoding: [0xa4,0x00,0xd0,0x22]
+# MICROMIPS-NEXT:                     # <MCInst #{{[0-9]+}} NOR
   nor $4, $5, 0x10000
-# CHECK: lui    $4, 1                   # encoding: [0x01,0x00,0x04,0x3c]
-# CHECK: nor    $4, $4, $5              # encoding: [0x27,0x20,0x85,0x00]
+# MIPS: lui   $4, 1                   # encoding: [0x01,0x00,0x04,0x3c]
+# MIPS: nor   $4, $4, $5              # encoding: [0x27,0x20,0x85,0x00]
+# MIPS-NEXT:                          # <MCInst #{{[0-9]+}} NOR
+# MICROMIPS: lui $4, 1                # encoding: [0xa4,0x41,0x01,0x00]
+# MICROMIPS: nor $4, $4, $5           # encoding: [0xa4,0x00,0xd0,0x22]
+# MICROMIPS-NEXT:                     # <MCInst #{{[0-9]+}} NOR
   nor $4, $5, 0x1a5a5
-# CHECK: lui    $4, 1                   # encoding: [0x01,0x00,0x04,0x3c]
-# CHECK: ori    $4, $4, 42405           # encoding: [0xa5,0xa5,0x84,0x34]
-# CHECK: nor    $4, $4, $5              # encoding: [0x27,0x20,0x85,0x00]
+# MIPS: lui   $4, 1                   # encoding: [0x01,0x00,0x04,0x3c]
+# MIPS: ori   $4, $4, 42405           # encoding: [0xa5,0xa5,0x84,0x34]
+# MIPS: nor   $4, $4, $5              # encoding: [0x27,0x20,0x85,0x00]
+# MIPS-NEXT:                          # <MCInst #{{[0-9]+}} NOR
+# MICROMIPS: lui $4, 1                # encoding: [0xa4,0x41,0x01,0x00]
+# MICROMIPS: ori $4, $4, 42405        # encoding: [0x84,0x50,0xa5,0xa5]
+# MICROMIPS: nor $4, $4, $5           # encoding: [0xa4,0x00,0xd0,0x22]
+# MICROMIPS-NEXT:                     # <MCInst #{{[0-9]+}} NOR
   nor $4, ~(0xf0000000|0x0f000000|0x000000f0)
-# CHECK: lui    $1, 255                 # encoding: [0xff,0x00,0x01,0x3c]
-# CHECK: ori    $1, $1, 65295           # encoding: [0x0f,0xff,0x21,0x34]
-# CHECK: nor    $4, $4, $1              # encoding: [0x27,0x20,0x81,0x00]
+# MIPS: lui   $1, 255                 # encoding: [0xff,0x00,0x01,0x3c]
+# MIPS: ori   $1, $1, 65295           # encoding: [0x0f,0xff,0x21,0x34]
+# MIPS: nor   $4, $4, $1              # encoding: [0x27,0x20,0x81,0x00]
+# MIPS-NEXT:                          # <MCInst #{{[0-9]+}} NOR
+# MICROMIPS: lui $1, 255              # encoding: [0xa1,0x41,0xff,0x00]
+# MICROMIPS: ori $1, $1, 65295        # encoding: [0x21,0x50,0x0f,0xff]
+# MICROMIPS: nor $4, $4, $1           # encoding: [0x24,0x00,0xd0,0x22]
+# MICROMIPS-NEXT:                     # <MCInst #{{[0-9]+}} NOR
 
   nor $4, 0
-# CHECK: addiu  $1, $zero, 0            # encoding: [0x00,0x00,0x01,0x24]
-# CHECK: nor    $4, $4, $1              # encoding: [0x27,0x20,0x81,0x00]
+# MIPS: addiu $1, $zero, 0            # encoding: [0x00,0x00,0x01,0x24]
+# MIPS: nor   $4, $4, $1              # encoding: [0x27,0x20,0x81,0x00]
+# MIPS-NEXT:                          # <MCInst #{{[0-9]+}} NOR
+# MICROMIPS: addiu $1, $zero, 0       # encoding: [0x20,0x30,0x00,0x00]
+# MICROMIPS: nor $4, $4, $1           # encoding: [0x24,0x00,0xd0,0x22]
+# MICROMIPS-NEXT:                     # <MCInst #{{[0-9]+}} NOR
   nor $4, 1
-# CHECK: addiu  $1, $zero, 1            # encoding: [0x01,0x00,0x01,0x24]
-# CHECK: nor    $4, $4, $1              # encoding: [0x27,0x20,0x81,0x00]
+# MIPS: addiu $1, $zero, 1            # encoding: [0x01,0x00,0x01,0x24]
+# MIPS: nor   $4, $4, $1              # encoding: [0x27,0x20,0x81,0x00]
+# MIPS-NEXT:                          # <MCInst #{{[0-9]+}} NOR
+# MICROMIPS: addiu $1, $zero, 1       # encoding: [0x20,0x30,0x01,0x00]
+# MICROMIPS: nor $4, $4, $1           # encoding: [0x24,0x00,0xd0,0x22]
+# MICROMIPS-NEXT:                     # <MCInst #{{[0-9]+}} NOR
   nor $4, 0x8000
-# CHECK: ori    $1, $zero, 32768        # encoding: [0x00,0x80,0x01,0x34]
-# CHECK: nor    $4, $4, $1              # encoding: [0x27,0x20,0x81,0x00]
+# MIPS: ori   $1, $zero, 32768        # encoding: [0x00,0x80,0x01,0x34]
+# MIPS: nor   $4, $4, $1              # encoding: [0x27,0x20,0x81,0x00]
+# MIPS-NEXT:                          # <MCInst #{{[0-9]+}} NOR
+# MICROMIPS: ori $1, $zero, 32768     # encoding: [0x20,0x50,0x00,0x80]
+# MICROMIPS: nor $4, $4, $1           # encoding: [0x24,0x00,0xd0,0x22]
+# MICROMIPS-NEXT:                     # <MCInst #{{[0-9]+}} NOR
   nor $4, -0x8000
-# CHECK: addiu  $1, $zero, -32768       # encoding: [0x00,0x80,0x01,0x24]
-# CHECK: nor    $4, $4, $1              # encoding: [0x27,0x20,0x81,0x00]
+# MIPS: addiu $1, $zero, -32768       # encoding: [0x00,0x80,0x01,0x24]
+# MIPS: nor   $4, $4, $1              # encoding: [0x27,0x20,0x81,0x00]
+# MIPS-NEXT:                          # <MCInst #{{[0-9]+}} NOR
+# MICROMIPS: addiu $1, $zero, -32768  # encoding: [0x20,0x30,0x00,0x80]
+# MICROMIPS: nor $4, $4, $1           # encoding: [0x24,0x00,0xd0,0x22]
+# MICROMIPS-NEXT:                     # <MCInst #{{[0-9]+}} NOR
   nor $4, 0x10000
-# CHECK: lui    $1, 1                   # encoding: [0x01,0x00,0x01,0x3c]
-# CHECK: nor    $4, $4, $1              # encoding: [0x27,0x20,0x81,0x00]
+# MIPS: lui   $1, 1                   # encoding: [0x01,0x00,0x01,0x3c]
+# MIPS: nor   $4, $4, $1              # encoding: [0x27,0x20,0x81,0x00]
+# MIPS-NEXT:                          # <MCInst #{{[0-9]+}} NOR
+# MICROMIPS: lui $1, 1                # encoding: [0xa1,0x41,0x01,0x00]
+# MICROMIPS: nor $4, $4, $1           # encoding: [0x24,0x00,0xd0,0x22]
+# MICROMIPS-NEXT:                     # <MCInst #{{[0-9]+}} NOR
   nor $4, 0x1a5a5
-# CHECK: lui    $1, 1                   # encoding: [0x01,0x00,0x01,0x3c]
-# CHECK: ori    $1, $1, 42405           # encoding: [0xa5,0xa5,0x21,0x34]
-# CHECK: nor    $4, $4, $1              # encoding: [0x27,0x20,0x81,0x00]
+# MIPS: lui   $1, 1                   # encoding: [0x01,0x00,0x01,0x3c]
+# MIPS: ori   $1, $1, 42405           # encoding: [0xa5,0xa5,0x21,0x34]
+# MIPS: nor   $4, $4, $1              # encoding: [0x27,0x20,0x81,0x00]
+# MIPS-NEXT:                          # <MCInst #{{[0-9]+}} NOR
+# MICROMIPS: lui $1, 1                # encoding: [0xa1,0x41,0x01,0x00]
+# MICROMIPS: ori $1, $1, 42405        # encoding: [0x21,0x50,0xa5,0xa5]
+# MICROMIPS: nor $4, $4, $1           # encoding: [0x24,0x00,0xd0,0x22]
+# MICROMIPS-NEXT:                     # <MCInst #{{[0-9]+}} NOR
   nor $4, ~(0xf0000000|0x0f000000|0x000000f0)
-# CHECK: lui    $1, 255                 # encoding: [0xff,0x00,0x01,0x3c]
-# CHECK: ori    $1, $1, 65295           # encoding: [0x0f,0xff,0x21,0x34]
-# CHECK: nor    $4, $4, $1              # encoding: [0x27,0x20,0x81,0x00]
+# MIPS: lui   $1, 255                 # encoding: [0xff,0x00,0x01,0x3c]
+# MIPS: ori   $1, $1, 65295           # encoding: [0x0f,0xff,0x21,0x34]
+# MIPS: nor   $4, $4, $1              # encoding: [0x27,0x20,0x81,0x00]
+# MIPS-NEXT:                          # <MCInst #{{[0-9]+}} NOR
+# MICROMIPS: lui $1, 255              # encoding: [0xa1,0x41,0xff,0x00]
+# MICROMIPS: ori $1, $1, 65295        # encoding: [0x21,0x50,0x0f,0xff]
+# MICROMIPS: nor $4, $4, $1           # encoding: [0x24,0x00,0xd0,0x22]
+# MICROMIPS-NEXT:                     # <MCInst #{{[0-9]+}} NOR
 
   or $4, -0x80000000
-# CHECK: lui    $1, 32768               # encoding: [0x00,0x80,0x01,0x3c]
-# CHECK: or     $4, $4, $1              # encoding: [0x25,0x20,0x81,0x00]
+# MIPS: lui   $1, 32768               # encoding: [0x00,0x80,0x01,0x3c]
+# MIPS: or    $4, $4, $1              # encoding: [0x25,0x20,0x81,0x00]
+# MIPS-NEXT:                          # <MCInst #{{[0-9]+}} OR
+# MICROMIPS: lui $1, 32768            # encoding: [0xa1,0x41,0x00,0x80]
+# MICROMIPS: or $4, $4, $1            # encoding: [0x24,0x00,0x90,0x22]
+# MICROMIPS-NEXT:                     # <MCInst #{{[0-9]+}} OR_MM
   or $4, -0x8001
-# CHECK: lui    $1, 65535               # encoding: [0xff,0xff,0x01,0x3c]
-# CHECK: ori    $1, $1, 32767           # encoding: [0xff,0x7f,0x21,0x34]
-# CHECK: or     $4, $4, $1              # encoding: [0x25,0x20,0x81,0x00]
+# MIPS: lui   $1, 65535               # encoding: [0xff,0xff,0x01,0x3c]
+# MIPS: ori   $1, $1, 32767           # encoding: [0xff,0x7f,0x21,0x34]
+# MIPS: or    $4, $4, $1              # encoding: [0x25,0x20,0x81,0x00]
+# MIPS-NEXT:                          # <MCInst #{{[0-9]+}} OR
+# MICROMIPS: lui $1, 65535            # encoding: [0xa1,0x41,0xff,0xff]
+# MICROMIPS: ori $1, $1, 32767        # encoding: [0x21,0x50,0xff,0x7f]
+# MICROMIPS: or $4, $4, $1            # encoding: [0x24,0x00,0x90,0x22]
+# MICROMIPS-NEXT:                     # <MCInst #{{[0-9]+}} OR_MM
   or $4, -0x8000
-# CHECK: addiu  $1, $zero, -32768       # encoding: [0x00,0x80,0x01,0x24]
-# CHECK: or     $4, $4, $1              # encoding: [0x25,0x20,0x81,0x00]
+# MIPS: addiu $1, $zero, -32768       # encoding: [0x00,0x80,0x01,0x24]
+# MIPS: or    $4, $4, $1              # encoding: [0x25,0x20,0x81,0x00]
+# MIPS-NEXT:                          # <MCInst #{{[0-9]+}} OR
+# MICROMIPS: addiu $1, $zero, -32768  # encoding: [0x20,0x30,0x00,0x80]
+# MICROMIPS: or $4, $4, $1            # encoding: [0x24,0x00,0x90,0x22]
+# MICROMIPS-NEXT:                     # <MCInst #{{[0-9]+}} OR_MM
   or $4, 0
-# CHECK: ori    $4, $4, 0               # encoding: [0x00,0x00,0x84,0x34]
+# MIPS: ori   $4, $4, 0               # encoding: [0x00,0x00,0x84,0x34]
+# MIPS-NEXT:                          # <MCInst #{{[0-9]+}} ORi
+# MICROMIPS: ori $4, $4, 0            # encoding: [0x84,0x50,0x00,0x00]
+# MICROMIPS-NEXT:                     # <MCInst #{{[0-9]+}} ORi_MM
   or $4, 0xFFFF
-# CHECK: ori    $4, $4, 65535           # encoding: [0xff,0xff,0x84,0x34]
+# MIPS: ori   $4, $4, 65535           # encoding: [0xff,0xff,0x84,0x34]
+# MIPS-NEXT:                          # <MCInst #{{[0-9]+}} ORi
+# MICROMIPS: ori $4, $4, 65535        # encoding: [0x84,0x50,0xff,0xff]
+# MICROMIPS-NEXT:                     # <MCInst #{{[0-9]+}} ORi_MM
   or $4, 0x10000
-# CHECK: lui    $1, 1                   # encoding: [0x01,0x00,0x01,0x3c]
-# CHECK: or     $4, $4, $1              # encoding: [0x25,0x20,0x81,0x00]
+# MIPS: lui   $1, 1                   # encoding: [0x01,0x00,0x01,0x3c]
+# MIPS: or    $4, $4, $1              # encoding: [0x25,0x20,0x81,0x00]
+# MIPS-NEXT:                          # <MCInst #{{[0-9]+}} OR
+# MICROMIPS: lui $1, 1                # encoding: [0xa1,0x41,0x01,0x00]
+# MICROMIPS: or $4, $4, $1            # encoding: [0x24,0x00,0x90,0x22]
+# MICROMIPS-NEXT:                     # <MCInst #{{[0-9]+}} OR_MM
   or $4, 0xFFFFFFFF
-# CHECK: addiu  $1, $zero, -1           # encoding: [0xff,0xff,0x01,0x24]
-# CHECK: or     $4, $4, $1              # encoding: [0x25,0x20,0x81,0x00]
+# MIPS: addiu $1, $zero, -1           # encoding: [0xff,0xff,0x01,0x24]
+# MIPS: or    $4, $4, $1              # encoding: [0x25,0x20,0x81,0x00]
+# MIPS-NEXT:                          # <MCInst #{{[0-9]+}} OR
+# MICROMIPS: addiu $1, $zero, -1      # encoding: [0x20,0x30,0xff,0xff]
+# MICROMIPS: or $4, $4, $1            # encoding: [0x24,0x00,0x90,0x22]
+# MICROMIPS-NEXT:                     # <MCInst #{{[0-9]+}} OR_MM
   or $5, ~(0xf0000000|0x0f000000|0x000000f0)
-# CHECK: lui    $1, 255                 # encoding: [0xff,0x00,0x01,0x3c]
-# CHECK: ori    $1, $1, 65295           # encoding: [0x0f,0xff,0x21,0x34]
-# CHECK: or     $5, $5, $1              # encoding: [0x25,0x28,0xa1,0x00]
+# MIPS: lui   $1, 255                 # encoding: [0xff,0x00,0x01,0x3c]
+# MIPS: ori   $1, $1, 65295           # encoding: [0x0f,0xff,0x21,0x34]
+# MIPS: or    $5, $5, $1              # encoding: [0x25,0x28,0xa1,0x00]
+# MIPS-NEXT:                          # <MCInst #{{[0-9]+}} OR
+# MICROMIPS: lui $1, 255              # encoding: [0xa1,0x41,0xff,0x00]
+# MICROMIPS: ori $1, $1, 65295        # encoding: [0x21,0x50,0x0f,0xff]
+# MICROMIPS: or $5, $5, $1            # encoding: [0x25,0x00,0x90,0x2a]
+# MICROMIPS-NEXT:                     # <MCInst #{{[0-9]+}} OR_MM
 
   or $4, $5, -0x80000000
-# CHECK: lui    $4, 32768               # encoding: [0x00,0x80,0x04,0x3c]
-# CHECK: or     $4, $4, $5              # encoding: [0x25,0x20,0x85,0x00]
+# MIPS: lui   $4, 32768               # encoding: [0x00,0x80,0x04,0x3c]
+# MIPS: or    $4, $4, $5              # encoding: [0x25,0x20,0x85,0x00]
+# MIPS-NEXT:                          # <MCInst #{{[0-9]+}} OR
+# MICROMIPS: lui $4, 32768            # encoding: [0xa4,0x41,0x00,0x80]
+# MICROMIPS: or $4, $4, $5            # encoding: [0xa4,0x00,0x90,0x22]
+# MICROMIPS-NEXT:                     # <MCInst #{{[0-9]+}} OR_MM
   or $4, $5, -0x8001
-# CHECK: lui    $4, 65535               # encoding: [0xff,0xff,0x04,0x3c]
-# CHECK: ori    $4, $4, 32767           # encoding: [0xff,0x7f,0x84,0x34]
-# CHECK: or     $4, $4, $5              # encoding: [0x25,0x20,0x85,0x00]
+# MIPS: lui   $4, 65535               # encoding: [0xff,0xff,0x04,0x3c]
+# MIPS: ori   $4, $4, 32767           # encoding: [0xff,0x7f,0x84,0x34]
+# MIPS: or    $4, $4, $5              # encoding: [0x25,0x20,0x85,0x00]
+# MIPS-NEXT:                          # <MCInst #{{[0-9]+}} OR
+# MICROMIPS: lui $4, 65535            # encoding: [0xa4,0x41,0xff,0xff]
+# MICROMIPS: ori $4, $4, 32767        # encoding: [0x84,0x50,0xff,0x7f]
+# MICROMIPS: or $4, $4, $5            # encoding: [0xa4,0x00,0x90,0x22]
+# MICROMIPS-NEXT:                     # <MCInst #{{[0-9]+}} OR_MM
   or $4, $5, -0x8000
-# CHECK: addiu  $4, $zero, -32768       # encoding: [0x00,0x80,0x04,0x24]
-# CHECK: or     $4, $4, $5              # encoding: [0x25,0x20,0x85,0x00]
+# MIPS: addiu $4, $zero, -32768       # encoding: [0x00,0x80,0x04,0x24]
+# MIPS: or    $4, $4, $5              # encoding: [0x25,0x20,0x85,0x00]
+# MIPS-NEXT:                          # <MCInst #{{[0-9]+}} OR
+# MICROMIPS: addiu $4, $zero, -32768  # encoding: [0x80,0x30,0x00,0x80]
+# MICROMIPS: or $4, $4, $5            # encoding: [0xa4,0x00,0x90,0x22]
+# MICROMIPS-NEXT:                     # <MCInst #{{[0-9]+}} OR_MM
   or $4, $5, 0
-# CHECK: ori    $4, $5, 0               # encoding: [0x00,0x00,0xa4,0x34]
+# MIPS: ori   $4, $5, 0               # encoding: [0x00,0x00,0xa4,0x34]
+# MIPS-NEXT:                          # <MCInst #{{[0-9]+}} ORi
+# MICROMIPS: ori $4, $5, 0            # encoding: [0x85,0x50,0x00,0x00]
+# MICROMIPS-NEXT:                     # <MCInst #{{[0-9]+}} ORi_MM
   or $4, $5, 0xFFFF
-# CHECK: ori    $4, $5, 65535           # encoding: [0xff,0xff,0xa4,0x34]
+# MIPS: ori   $4, $5, 65535           # encoding: [0xff,0xff,0xa4,0x34]
+# MIPS-NEXT:                          # <MCInst #{{[0-9]+}} ORi
+# MICROMIPS: ori $4, $5, 65535        # encoding: [0x85,0x50,0xff,0xff]
+# MICROMIPS-NEXT:                     # <MCInst #{{[0-9]+}} ORi_MM
   or $4, $5, 0x10000
-# CHECK: lui    $4, 1                   # encoding: [0x01,0x00,0x04,0x3c]
-# CHECK: or     $4, $4, $5              # encoding: [0x25,0x20,0x85,0x00]
+# MIPS: lui   $4, 1                   # encoding: [0x01,0x00,0x04,0x3c]
+# MIPS: or    $4, $4, $5              # encoding: [0x25,0x20,0x85,0x00]
+# MIPS-NEXT:                          # <MCInst #{{[0-9]+}} OR
+# MICROMIPS: lui $4, 1                # encoding: [0xa4,0x41,0x01,0x00]
+# MICROMIPS: or $4, $4, $5            # encoding: [0xa4,0x00,0x90,0x22]
+# MICROMIPS-NEXT:                     # <MCInst #{{[0-9]+}} OR_MM
   or $4, $5, 0xFFFFFFFF
-# CHECK: addiu  $4, $zero, -1           # encoding: [0xff,0xff,0x04,0x24]
-# CHECK: or     $4, $4, $5              # encoding: [0x25,0x20,0x85,0x00]
+# MIPS: addiu  $4, $zero, -1          # encoding: [0xff,0xff,0x04,0x24]
+# MIPS: or    $4, $4, $5              # encoding: [0x25,0x20,0x85,0x00]
+# MIPS-NEXT:                          # <MCInst #{{[0-9]+}} OR
+# MICROMIPS: addiu $4, $zero, -1      # encoding: [0x80,0x30,0xff,0xff]
+# MICROMIPS: or $4, $4, $5            # encoding: [0xa4,0x00,0x90,0x22]
+# MICROMIPS-NEXT:                     # <MCInst #{{[0-9]+}} OR_MM
   or $4, $5, ~(0xF0000000|0x0F000000|0x000000F0)
-# CHECK: lui    $4, 255                 # encoding: [0xff,0x00,0x04,0x3c]
-# CHECK: ori    $4, $4, 65295           # encoding: [0x0f,0xff,0x84,0x34]
-# CHECK: or     $4, $4, $5              # encoding: [0x25,0x20,0x85,0x00]
+# MIPS: lui   $4, 255                 # encoding: [0xff,0x00,0x04,0x3c]
+# MIPS: ori   $4, $4, 65295           # encoding: [0x0f,0xff,0x84,0x34]
+# MIPS: or    $4, $4, $5              # encoding: [0x25,0x20,0x85,0x00]
+# MIPS-NEXT:                          # <MCInst #{{[0-9]+}} OR
+# MICROMIPS: lui $4, 255              # encoding: [0xa4,0x41,0xff,0x00]
+# MICROMIPS: ori $4, $4, 65295        # encoding: [0x84,0x50,0x0f,0xff]
+# MICROMIPS: or $4, $4, $5            # encoding: [0xa4,0x00,0x90,0x22]
+# MICROMIPS-NEXT:                     # <MCInst #{{[0-9]+}} OR_MM
 
   slt $4, $5, -0x80000000
-# CHECK: lui    $4, 32768               # encoding: [0x00,0x80,0x04,0x3c]
-# CHECK: slt    $4, $4, $5              # encoding: [0x2a,0x20,0x85,0x00]
+# MIPS: lui   $4, 32768               # encoding: [0x00,0x80,0x04,0x3c]
+# MIPS: slt   $4, $4, $5              # encoding: [0x2a,0x20,0x85,0x00]
+# MIPS-NEXT:                          # <MCInst #{{[0-9]+}} SLT
+# MICROMIPS: lui $4, 32768            # encoding: [0xa4,0x41,0x00,0x80]
+# MICROMIPS: slt $4, $4, $5           # encoding: [0xa4,0x00,0x50,0x23]
+# MICROMIPS-NEXT:                     # <MCInst #{{[0-9]+}} SLT_MM
   slt $4, $5, -0x8001
-# CHECK: lui    $4, 65535               # encoding: [0xff,0xff,0x04,0x3c]
-# CHECK: ori    $4, $4, 32767           # encoding: [0xff,0x7f,0x84,0x34]
-# CHECK: slt    $4, $4, $5              # encoding: [0x2a,0x20,0x85,0x00]
+# MIPS: lui   $4, 65535               # encoding: [0xff,0xff,0x04,0x3c]
+# MIPS: ori   $4, $4, 32767           # encoding: [0xff,0x7f,0x84,0x34]
+# MIPS: slt   $4, $4, $5              # encoding: [0x2a,0x20,0x85,0x00]
+# MIPS-NEXT:                          # <MCInst #{{[0-9]+}} SLT
+# MICROMIPS: lui $4, 65535            # encoding: [0xa4,0x41,0xff,0xff]
+# MICROMIPS: ori $4, $4, 32767        # encoding: [0x84,0x50,0xff,0x7f]
+# MICROMIPS: slt $4, $4, $5           # encoding: [0xa4,0x00,0x50,0x23]
+# MICROMIPS-NEXT:                     # <MCInst #{{[0-9]+}} SLT_MM
   slt $4, $5, -0x8000
-# CHECK: slti   $4, $5, -32768          # encoding: [0x00,0x80,0xa4,0x28]
+# MIPS: slti  $4, $5, -32768          # encoding: [0x00,0x80,0xa4,0x28]
+# MIPS-NEXT:                          # <MCInst #{{[0-9]+}} SLTi
+# MICROMIPS: slti $4, $5, -32768      # encoding: [0x85,0x90,0x00,0x80]
+# MICROMIPS-NEXT:                     # <MCInst #{{[0-9]+}} SLTi_MM
   slt $4, $5, 0
-# CHECK: slti   $4, $5, 0               # encoding: [0x00,0x00,0xa4,0x28]
+# MIPS: slti  $4, $5, 0               # encoding: [0x00,0x00,0xa4,0x28]
+# MIPS-NEXT:                          # <MCInst #{{[0-9]+}} SLTi
+# MICROMIPS: slti $4, $5, 0           # encoding: [0x85,0x90,0x00,0x00]
+# MICROMIPS-NEXT:                     # <MCInst #{{[0-9]+}} SLTi_MM
   slt $4, $5, 0xFFFF
-# CHECK: ori    $4, $zero, 65535        # encoding: [0xff,0xff,0x04,0x34]
+# MIPS: ori   $4, $zero, 65535        # encoding: [0xff,0xff,0x04,0x34]
+# MIPS: slt   $4, $4, $5              # encoding: [0x2a,0x20,0x85,0x00]
+# MIPS-NEXT:                          # <MCInst #{{[0-9]+}} SLT
+# MICROMIPS: ori $4, $zero, 65535     # encoding: [0x80,0x50,0xff,0xff]
+# MICROMIPS-NEXT:                     # <MCInst #{{[0-9]+}} ORi
+# MICROMIPS: slt $4, $4, $5           # encoding: [0xa4,0x00,0x50,0x23]
+# MICROMIPS-NEXT:                     # <MCInst #{{[0-9]+}} SLT_MM
   slt $4, $5, 0x10000
-# CHECK: lui    $4, 1                   # encoding: [0x01,0x00,0x04,0x3c]
-# CHECK: slt    $4, $4, $5              # encoding: [0x2a,0x20,0x85,0x00]
+# MIPS: lui   $4, 1                   # encoding: [0x01,0x00,0x04,0x3c]
+# MIPS: slt   $4, $4, $5              # encoding: [0x2a,0x20,0x85,0x00]
+# MIPS-NEXT:                          # <MCInst #{{[0-9]+}} SLT
+# MICROMIPS: lui $4, 1                # encoding: [0xa4,0x41,0x01,0x00]
+# MICROMIPS: slt $4, $4, $5           # encoding: [0xa4,0x00,0x50,0x23]
+# MICROMIPS-NEXT:                     # <MCInst #{{[0-9]+}} SLT_MM
   slt $4, $5, 0xFFFFFFFF
-# CHECK: slti   $4, $5, -1              # encoding: [0xff,0xff,0xa4,0x28]
+# MIPS: slti   $4, $5, -1             # encoding: [0xff,0xff,0xa4,0x28]
+# MIPS-NEXT:                          # <MCInst #{{[0-9]+}} SLT
+# MICROMIPS: slti $4, $5, -1          # encoding: [0x85,0x90,0xff,0xff]
+# MICROMIPS-NEXT:                     # <MCInst #{{[0-9]+}} SLTi_MM
   slt $4, $5, ~(0xf0000000|0x0f000000|0x000000f0)
-# CHECK: lui    $4, 255                 # encoding: [0xff,0x00,0x04,0x3c]
-# CHECK: ori    $4, $4, 65295           # encoding: [0x0f,0xff,0x84,0x34]
-# CHECK: slt    $4, $4, $5              # encoding: [0x2a,0x20,0x85,0x00]
+# MIPS: lui   $4, 255                 # encoding: [0xff,0x00,0x04,0x3c]
+# MIPS: ori   $4, $4, 65295           # encoding: [0x0f,0xff,0x84,0x34]
+# MIPS: slt   $4, $4, $5              # encoding: [0x2a,0x20,0x85,0x00]
+# MIPS-NEXT:                          # <MCInst #{{[0-9]+}} SLT
+# MICROMIPS: lui $4, 255              # encoding: [0xa4,0x41,0xff,0x00]
+# MICROMIPS: ori $4, $4, 65295        # encoding: [0x84,0x50,0x0f,0xff]
+# MICROMIPS: slt $4, $4, $5           # encoding: [0xa4,0x00,0x50,0x23]
+# MICROMIPS-NEXT:                     # <MCInst #{{[0-9]+}} SLT_MM
 
   sltu $4, $5, -0x80000000
-# CHECK: lui    $4, 32768               # encoding: [0x00,0x80,0x04,0x3c]
-# CHECK: sltu   $4, $4, $5              # encoding: [0x2b,0x20,0x85,0x00]
+# MIPS: lui   $4, 32768               # encoding: [0x00,0x80,0x04,0x3c]
+# MIPS: sltu  $4, $4, $5              # encoding: [0x2b,0x20,0x85,0x00]
+# MIPS-NEXT:                          # <MCInst #{{[0-9]+}} SLTu
+# MICROMIPS: lui $4, 32768            # encoding: [0xa4,0x41,0x00,0x80]
+# MICROMIPS: sltu $4, $4, $5          # encoding: [0xa4,0x00,0x90,0x23]
+# MICROMIPS-NEXT:                     # <MCInst #{{[0-9]+}} SLTu_MM
   sltu $4, $5, -0x8001
-# CHECK: lui    $4, 65535               # encoding: [0xff,0xff,0x04,0x3c]
-# CHECK: ori    $4, $4, 32767           # encoding: [0xff,0x7f,0x84,0x34]
-# CHECK: sltu   $4, $4, $5              # encoding: [0x2b,0x20,0x85,0x00]
+# MIPS: lui   $4, 65535               # encoding: [0xff,0xff,0x04,0x3c]
+# MIPS: ori   $4, $4, 32767           # encoding: [0xff,0x7f,0x84,0x34]
+# MIPS: sltu  $4, $4, $5              # encoding: [0x2b,0x20,0x85,0x00]
+# MIPS-NEXT:                          # <MCInst #{{[0-9]+}} SLTu
+# MICROMIPS: lui $4, 65535            # encoding: [0xa4,0x41,0xff,0xff]
+# MICROMIPS: ori $4, $4, 32767        # encoding: [0x84,0x50,0xff,0x7f]
+# MICROMIPS-NEXT:                     # <MCInst #{{[0-9]+}} ORi
+# MICROMIPS: sltu $4, $4, $5          # encoding: [0xa4,0x00,0x90,0x23]
+# MICROMIPS-NEXT:                     # <MCInst #{{[0-9]+}} SLTu_MM
   sltu $4, $5, -0x8000
-# CHECK: sltiu  $4, $5, -32768          # encoding: [0x00,0x80,0xa4,0x2c]
+# MIPS: sltiu  $4, $5, -32768         # encoding: [0x00,0x80,0xa4,0x2c]
+# MIPS-NEXT:                          # <MCInst #{{[0-9]+}} SLTiu
+# MICROMIPS: sltiu $4, $5, -32768     # encoding: [0x85,0xb0,0x00,0x80]
+# MICROMIPS-NEXT:                     # <MCInst #{{[0-9]+}} SLTiu_MM
   sltu $4, $5, 0
-# CHECK: sltiu  $4, $5, 0               # encoding: [0x00,0x00,0xa4,0x2c]
+# MIPS: sltiu  $4, $5, 0              # encoding: [0x00,0x00,0xa4,0x2c]
+# MIPS-NEXT:                          # <MCInst #{{[0-9]+}} SLTiu
+# MICROMIPS: sltiu $4, $5, 0          # encoding: [0x85,0xb0,0x00,0x00]
+# MICROMIPS-NEXT:                     # <MCInst #{{[0-9]+}} SLTiu_MM
   sltu $4, $5, 0xFFFF
-# CHECK: ori    $4, $zero, 65535        # encoding: [0xff,0xff,0x04,0x34]
+# MIPS: ori   $4, $zero, 65535        # encoding: [0xff,0xff,0x04,0x34]
+# MIPS: sltu  $4, $4, $5              # encoding: [0x2b,0x20,0x85,0x00]
+# MIPS-NEXT:                          # <MCInst #{{[0-9]+}} SLTu
+# MICROMIPS: ori $4, $zero, 65535     # encoding: [0x80,0x50,0xff,0xff]
+# MICROMIPS: sltu $4, $4, $5          # encoding: [0xa4,0x00,0x90,0x23]
+# MICROMIPS-NEXT:                     # <MCInst #{{[0-9]+}} SLTu_MM
   sltu $4, $5, 0x10000
-# CHECK: lui    $4, 1                   # encoding: [0x01,0x00,0x04,0x3c]
-# CHECK: sltu   $4, $4, $5              # encoding: [0x2b,0x20,0x85,0x00]
+# MIPS: lui   $4, 1                   # encoding: [0x01,0x00,0x04,0x3c]
+# MIPS: sltu  $4, $4, $5              # encoding: [0x2b,0x20,0x85,0x00]
+# MIPS-NEXT:                          # <MCInst #{{[0-9]+}} SLTu
+# MICROMIPS: lui $4, 1                # encoding: [0xa4,0x41,0x01,0x00]
+# MICROMIPS: sltu $4, $4, $5          # encoding: [0xa4,0x00,0x90,0x23]
+# MICROMIPS-NEXT:                     # <MCInst #{{[0-9]+}} SLTu_MM
   sltu $4, $5, 0xFFFFFFFF
-# CHECK: sltiu  $4, $5, -1              # encoding: [0xff,0xff,0xa4,0x2c]
+# MIPS: sltiu $4, $5, -1              # encoding: [0xff,0xff,0xa4,0x2c]
+# MIPS-NEXT:                          # <MCInst #{{[0-9]+}} SLTiu
+# MICROMIPS: sltiu $4, $5, -1         # encoding: [0x85,0xb0,0xff,0xff]
+# MICROMIPS-NEXT:                     # <MCInst #{{[0-9]+}} SLTiu_MM
   sltu $4, $5, ~(0xf0000000|0x0f000000|0x000000f0)
-# CHECK: lui    $4, 255                 # encoding: [0xff,0x00,0x04,0x3c]
-# CHECK: ori    $4, $4, 65295           # encoding: [0x0f,0xff,0x84,0x34]
-# CHECK: sltu   $4, $4, $5              # encoding: [0x2b,0x20,0x85,0x00]
+# MIPS: lui   $4, 255                 # encoding: [0xff,0x00,0x04,0x3c]
+# MIPS: ori   $4, $4, 65295           # encoding: [0x0f,0xff,0x84,0x34]
+# MIPS: sltu  $4, $4, $5              # encoding: [0x2b,0x20,0x85,0x00]
+# MIPS-NEXT:                          # <MCInst #{{[0-9]+}} SLTu
+# MICROMIPS: lui $4, 255              # encoding: [0xa4,0x41,0xff,0x00]
+# MICROMIPS: ori $4, $4, 65295        # encoding: [0x84,0x50,0x0f,0xff]
+# MICROMIPS: sltu $4, $4, $5          # encoding: [0xa4,0x00,0x90,0x23]
+# MICROMIPS-NEXT:                     # <MCInst #{{[0-9]+}} SLTu_MM
 
   xor $4, -0x80000000
-# CHECK: lui    $1, 32768               # encoding: [0x00,0x80,0x01,0x3c]
-# CHECK: xor    $4, $4, $1              # encoding: [0x26,0x20,0x81,0x00]
+# MIPS: lui   $1, 32768               # encoding: [0x00,0x80,0x01,0x3c]
+# MIPS: xor   $4, $4, $1              # encoding: [0x26,0x20,0x81,0x00]
+# MIPS-NEXT:                          # <MCInst #{{[0-9]+}} XOR
+# MICROMIPS: lui $1, 32768            # encoding: [0xa1,0x41,0x00,0x80]
+# MICROMIPS: xor $4, $4, $1           # encoding: [0x24,0x00,0x10,0x23]
+# MICROMIPS-NEXT:                     # <MCInst #{{[0-9]+}} XOR_MM
   xor $4, -0x8001
-# CHECK: lui    $1, 65535               # encoding: [0xff,0xff,0x01,0x3c]
-# CHECK: ori    $1, $1, 32767           # encoding: [0xff,0x7f,0x21,0x34]
-# CHECK: xor    $4, $4, $1              # encoding: [0x26,0x20,0x81,0x00]
+# MIPS: lui   $1, 65535               # encoding: [0xff,0xff,0x01,0x3c]
+# MIPS: ori   $1, $1, 32767           # encoding: [0xff,0x7f,0x21,0x34]
+# MIPS: xor   $4, $4, $1              # encoding: [0x26,0x20,0x81,0x00]
+# MIPS-NEXT:                          # <MCInst #{{[0-9]+}} XOR
+# MICROMIPS: lui $1, 65535            # encoding: [0xa1,0x41,0xff,0xff]
+# MICROMIPS: ori $1, $1, 32767        # encoding: [0x21,0x50,0xff,0x7f]
+# MICROMIPS: xor $4, $4, $1           # encoding: [0x24,0x00,0x10,0x23]
+# MICROMIPS-NEXT:                     # <MCInst #{{[0-9]+}} XOR_MM
   xor $4, -0x8000
-# CHECK: addiu  $1, $zero, -32768       # encoding: [0x00,0x80,0x01,0x24]
+# MIPS: addiu $1, $zero, -32768       # encoding: [0x00,0x80,0x01,0x24]
+# MIPS: xor   $4, $4, $1              # encoding: [0x26,0x20,0x81,0x00]
+# MIPS-NEXT:                          # <MCInst #{{[0-9]+}} XOR
+# MICROMIPS: addiu $1, $zero, -32768  # encoding: [0x20,0x30,0x00,0x80]
+# MICROMIPS: xor $4, $4, $1           # encoding: [0x24,0x00,0x10,0x23]
+# MICROMIPS-NEXT:                     # <MCInst #{{[0-9]+}} XOR_MM
   xor $4, 0
-# CHECK: xori   $4, $4, 0               # encoding: [0x00,0x00,0x84,0x38]
+# MIPS: xori  $4, $4, 0               # encoding: [0x00,0x00,0x84,0x38]
+# MIPS-NEXT:                          # <MCInst #{{[0-9]+}} XORi
+# MICROMIPS: xori $4, $4, 0           # encoding: [0x84,0x70,0x00,0x00]
+# MICROMIPS-NEXT:                     # <MCInst #{{[0-9]+}} XORi_MM
   xor $4, 0xFFFF
-# CHECK: xori   $4, $4, 65535           # encoding: [0xff,0xff,0x84,0x38]
+# MIPS: xori  $4, $4, 65535           # encoding: [0xff,0xff,0x84,0x38]
+# MIPS-NEXT:                          # <MCInst #{{[0-9]+}} XORi
+# MICROMIPS: xori $4, $4, 65535       # encoding: [0x84,0x70,0xff,0xff]
+# MICROMIPS-NEXT:                     # <MCInst #{{[0-9]+}} XORi_MM
   xor $4, 0x10000
-# CHECK: lui    $1, 1                   # encoding: [0x01,0x00,0x01,0x3c]
-# CHECK: xor    $4, $4, $1              # encoding: [0x26,0x20,0x81,0x00]
+# MIPS: lui   $1, 1                   # encoding: [0x01,0x00,0x01,0x3c]
+# MIPS: xor   $4, $4, $1              # encoding: [0x26,0x20,0x81,0x00]
+# MIPS-NEXT:                          # <MCInst #{{[0-9]+}} XOR
+# MICROMIPS: lui $1, 1                # encoding: [0xa1,0x41,0x01,0x00]
+# MICROMIPS: xor $4, $4, $1           # encoding: [0x24,0x00,0x10,0x23]
+# MICROMIPS-NEXT:                     # <MCInst #{{[0-9]+}} XOR_MM
   xor $4, 0xFFFFFFFF
-# CHECK: addiu  $1, $zero, -1           # encoding: [0xff,0xff,0x01,0x24]
-# CHECK: xor    $4, $4, $1              # encoding: [0x26,0x20,0x81,0x00]
+# MIPS: addiu $1, $zero, -1           # encoding: [0xff,0xff,0x01,0x24]
+# MIPS: xor   $4, $4, $1              # encoding: [0x26,0x20,0x81,0x00]
+# MIPS-NEXT:                          # <MCInst #{{[0-9]+}} XOR
+# MICROMIPS: addiu $1, $zero, -1      # encoding: [0x20,0x30,0xff,0xff]
+# MICROMIPS: xor $4, $4, $1           # encoding: [0x24,0x00,0x10,0x23]
+# MICROMIPS-NEXT:                     # <MCInst #{{[0-9]+}} XOR_MM
   xor $4, ~(0xf0000000|0x0f000000|0x000000f0)
-# CHECK: lui    $1, 255                 # encoding: [0xff,0x00,0x01,0x3c]
-# CHECK: ori    $1, $1, 65295           # encoding: [0x0f,0xff,0x21,0x34]
-# CHECK: xor    $4, $4, $1              # encoding: [0x26,0x20,0x81,0x00]
+# MIPS: lui   $1, 255                 # encoding: [0xff,0x00,0x01,0x3c]
+# MIPS: ori   $1, $1, 65295           # encoding: [0x0f,0xff,0x21,0x34]
+# MIPS: xor   $4, $4, $1              # encoding: [0x26,0x20,0x81,0x00]
+# MIPS-NEXT:                          # <MCInst #{{[0-9]+}} XOR
+# MICROMIPS: lui $1, 255              # encoding: [0xa1,0x41,0xff,0x00]
+# MICROMIPS: ori $1, $1, 65295        # encoding: [0x21,0x50,0x0f,0xff]
+# MICROMIPS: xor $4, $4, $1           # encoding: [0x24,0x00,0x10,0x23]
+# MICROMIPS-NEXT:                     # <MCInst #{{[0-9]+}} XOR_MM
 
   xor $4, $5, -0x80000000
-# CHECK: lui    $4, 32768               # encoding: [0x00,0x80,0x04,0x3c]
-# CHECK: xor    $4, $4, $5              # encoding: [0x26,0x20,0x85,0x00]
+# MIPS: lui   $4, 32768               # encoding: [0x00,0x80,0x04,0x3c]
+# MIPS: xor   $4, $4, $5              # encoding: [0x26,0x20,0x85,0x00]
+# MIPS-NEXT:                          # <MCInst #{{[0-9]+}} XOR
+# MICROMIPS: lui $4, 32768            # encoding: [0xa4,0x41,0x00,0x80]
+# MICROMIPS: xor $4, $4, $5           # encoding: [0xa4,0x00,0x10,0x23]
+# MICROMIPS-NEXT:                     # <MCInst #{{[0-9]+}} XOR_MM
   xor $4, $5, -0x8001
-# CHECK: lui    $4, 65535               # encoding: [0xff,0xff,0x04,0x3c]
-# CHECK: ori    $4, $4, 32767           # encoding: [0xff,0x7f,0x84,0x34]
-# CHECK: xor    $4, $4, $5              # encoding: [0x26,0x20,0x85,0x00]
+# MIPS: lui   $4, 65535               # encoding: [0xff,0xff,0x04,0x3c]
+# MIPS: ori   $4, $4, 32767           # encoding: [0xff,0x7f,0x84,0x34]
+# MIPS: xor   $4, $4, $5              # encoding: [0x26,0x20,0x85,0x00]
+# MIPS-NEXT:                          # <MCInst #{{[0-9]+}} XOR
+# MICROMIPS: lui $4, 65535            # encoding: [0xa4,0x41,0xff,0xff]
+# MICROMIPS: ori $4, $4, 32767        # encoding: [0x84,0x50,0xff,0x7f]
+# MICROMIPS-NEXT:                     # <MCInst #{{[0-9]+}} ORi
+# MICROMIPS: xor $4, $4, $5           # encoding: [0xa4,0x00,0x10,0x23]
+# MICROMIPS-NEXT:                     # <MCInst #{{[0-9]+}} XOR_MM
   xor $4, $5, -0x8000
-# CHECK: addiu  $4, $zero, -32768       # encoding: [0x00,0x80,0x04,0x24]
-# CHECK: xor    $4, $4, $5              # encoding: [0x26,0x20,0x85,0x00]
+# MIPS: addiu $4, $zero, -32768       # encoding: [0x00,0x80,0x04,0x24]
+# MIPS: xor   $4, $4, $5              # encoding: [0x26,0x20,0x85,0x00]
+# MIPS-NEXT:                          # <MCInst #{{[0-9]+}} XOR
+# MICROMIPS: addiu $4, $zero, -32768  # encoding: [0x80,0x30,0x00,0x80]
+# MICROMIPS: xor $4, $4, $5           # encoding: [0xa4,0x00,0x10,0x23]
+# MICROMIPS-NEXT:                     # <MCInst #{{[0-9]+}} XOR_MM
   xor $4, $5, 0
-# CHECK: xori   $4, $5, 0               # encoding: [0x00,0x00,0xa4,0x38]
+# MIPS: xori  $4, $5, 0               # encoding: [0x00,0x00,0xa4,0x38]
+# MIPS-NEXT:                          # <MCInst #{{[0-9]+}} XORi
+# MICROMIPS: xori $4, $5, 0           # encoding: [0x85,0x70,0x00,0x00]
+# MICROMIPS-NEXT:                     # <MCInst #{{[0-9]+}} XORi_MM
   xor $4, $5, 0xFFFF
-# CHECK: xori   $4, $5, 65535           # encoding: [0xff,0xff,0xa4,0x38]
+# MIPS: xori  $4, $5, 65535           # encoding: [0xff,0xff,0xa4,0x38]
+# MIPS-NEXT:                          # <MCInst #{{[0-9]+}} XORi
+# MICROMIPS: xori $4, $5, 65535       # encoding: [0x85,0x70,0xff,0xff]
+# MICROMIPS-NEXT:                     # <MCInst #{{[0-9]+}} XORi_MM
   xor $4, $5, 0x10000
-# CHECK: lui    $4, 1                   # encoding: [0x01,0x00,0x04,0x3c]
-# CHECK: xor    $4, $4, $5              # encoding: [0x26,0x20,0x85,0x00]
+# MIPS: lui   $4, 1                   # encoding: [0x01,0x00,0x04,0x3c]
+# MIPS: xor   $4, $4, $5              # encoding: [0x26,0x20,0x85,0x00]
+# MIPS-NEXT:                          # <MCInst #{{[0-9]+}} XOR
+# MICROMIPS: lui $4, 1                # encoding: [0xa4,0x41,0x01,0x00]
+# MICROMIPS: xor $4, $4, $5           # encoding: [0xa4,0x00,0x10,0x23]
+# MICROMIPS-NEXT:                     # <MCInst #{{[0-9]+}} XOR_MM
   xor $4, $5, 0xFFFFFFFF
-# CHECK: addiu  $4, $zero, -1           # encoding: [0xff,0xff,0x04,0x24]
-# CHECK: xor    $4, $4, $5              # encoding: [0x26,0x20,0x85,0x00]
+# MIPS: addiu $4, $zero, -1           # encoding: [0xff,0xff,0x04,0x24]
+# MIPS: xor   $4, $4, $5              # encoding: [0x26,0x20,0x85,0x00]
+# MIPS-NEXT:                          # <MCInst #{{[0-9]+}} XOR
+# MICROMIPS: addiu $4, $zero, -1      # encoding: [0x80,0x30,0xff,0xff]
+# MICROMIPS-NEXT:                     # <MCInst #{{[0-9]+}} ADDiu
+# MICROMIPS: xor $4, $4, $5           # encoding: [0xa4,0x00,0x10,0x23]
+# MICROMIPS-NEXT:                     # <MCInst #{{[0-9]+}} XOR_MM
   xor $4, $5, ~(0xf0000000|0x0f000000|0x000000f0)
-# CHECK: lui    $4, 255                 # encoding: [0xff,0x00,0x04,0x3c]
-# CHECK: ori    $4, $4, 65295           # encoding: [0x0f,0xff,0x84,0x34]
-# CHECK: xor    $4, $4, $5              # encoding: [0x26,0x20,0x85,0x00]
+# MIPS: lui   $4, 255                 # encoding: [0xff,0x00,0x04,0x3c]
+# MIPS: ori   $4, $4, 65295           # encoding: [0x0f,0xff,0x84,0x34]
+# MIPS: xor   $4, $4, $5              # encoding: [0x26,0x20,0x85,0x00]
+# MIPS-NEXT:                          # <MCInst #{{[0-9]+}} XOR
+# MICROMIPS: lui $4, 255              # encoding: [0xa4,0x41,0xff,0x00]
+# MICROMIPS: ori $4, $4, 65295        # encoding: [0x84,0x50,0x0f,0xff]
+# MICROMIPS-NEXT:                     # <MCInst #{{[0-9]+}} ORi
+# MICROMIPS: xor $4, $4, $5           # encoding: [0xa4,0x00,0x10,0x23]
+# MICROMIPS-NEXT:                     # <MCInst #{{[0-9]+}} XOR_MM




More information about the llvm-commits mailing list