test_cases:
  -
    input:
      bytes: [ 0x40, 0xac, 0x80, 0x02 ]
      arch: "CS_ARCH_MIPS"
      options: [ "CS_MODE_BIG_ENDIAN", "CS_MODE_MIPS64" ]
    expected:
      insns:
        -
          asm_text: "dmtc0 $t4, $s0, 2"
  -
    input:
      bytes: [ 0x40, 0xac, 0x80, 0x00 ]
      arch: "CS_ARCH_MIPS"
      options: [ "CS_MODE_BIG_ENDIAN", "CS_MODE_MIPS64" ]
    expected:
      insns:
        -
          asm_text: "dmtc0 $t4, $s0, 0"
  -
    input:
      bytes: [ 0x40, 0x8c, 0x80, 0x02 ]
      arch: "CS_ARCH_MIPS"
      options: [ "CS_MODE_BIG_ENDIAN", "CS_MODE_MIPS64" ]
    expected:
      insns:
        -
          asm_text: "mtc0 $t4, $s0, 2"
  -
    input:
      bytes: [ 0x40, 0x8c, 0x80, 0x00 ]
      arch: "CS_ARCH_MIPS"
      options: [ "CS_MODE_BIG_ENDIAN", "CS_MODE_MIPS64" ]
    expected:
      insns:
        -
          asm_text: "mtc0 $t4, $s0, 0"
  -
    input:
      bytes: [ 0x40, 0x2c, 0x80, 0x02 ]
      arch: "CS_ARCH_MIPS"
      options: [ "CS_MODE_BIG_ENDIAN", "CS_MODE_MIPS64" ]
    expected:
      insns:
        -
          asm_text: "dmfc0 $t4, $s0, 2"
  -
    input:
      bytes: [ 0x40, 0x2c, 0x80, 0x00 ]
      arch: "CS_ARCH_MIPS"
      options: [ "CS_MODE_BIG_ENDIAN", "CS_MODE_MIPS64" ]
    expected:
      insns:
        -
          asm_text: "dmfc0 $t4, $s0, 0"
  -
    input:
      bytes: [ 0x40, 0x0c, 0x80, 0x02 ]
      arch: "CS_ARCH_MIPS"
      options: [ "CS_MODE_BIG_ENDIAN", "CS_MODE_MIPS64" ]
    expected:
      insns:
        -
          asm_text: "mfc0 $t4, $s0, 2"
  -
    input:
      bytes: [ 0x40, 0x0c, 0x80, 0x00 ]
      arch: "CS_ARCH_MIPS"
      options: [ "CS_MODE_BIG_ENDIAN", "CS_MODE_MIPS64" ]
    expected:
      insns:
        -
          asm_text: "mfc0 $t4, $s0, 0"
  -
    input:
      bytes: [ 0x48, 0xac, 0x80, 0x02 ]
      arch: "CS_ARCH_MIPS"
      options: [ "CS_MODE_BIG_ENDIAN", "CS_MODE_MIPS64" ]
    expected:
      insns:
        -
          asm_text: "dmtc2 $t4, $s0, 2"
  -
    input:
      bytes: [ 0x48, 0xac, 0x80, 0x00 ]
      arch: "CS_ARCH_MIPS"
      options: [ "CS_MODE_BIG_ENDIAN", "CS_MODE_MIPS64" ]
    expected:
      insns:
        -
          asm_text: "dmtc2 $t4, $s0, 0"
  -
    input:
      bytes: [ 0x48, 0x8c, 0x80, 0x02 ]
      arch: "CS_ARCH_MIPS"
      options: [ "CS_MODE_BIG_ENDIAN", "CS_MODE_MIPS64" ]
    expected:
      insns:
        -
          asm_text: "mtc2 $t4, $s0, 2"
  -
    input:
      bytes: [ 0x48, 0x8c, 0x80, 0x00 ]
      arch: "CS_ARCH_MIPS"
      options: [ "CS_MODE_BIG_ENDIAN", "CS_MODE_MIPS64" ]
    expected:
      insns:
        -
          asm_text: "mtc2 $t4, $s0, 0"
  -
    input:
      bytes: [ 0x48, 0x2c, 0x80, 0x02 ]
      arch: "CS_ARCH_MIPS"
      options: [ "CS_MODE_BIG_ENDIAN", "CS_MODE_MIPS64" ]
    expected:
      insns:
        -
          asm_text: "dmfc2 $t4, $s0, 2"
  -
    input:
      bytes: [ 0x48, 0x2c, 0x80, 0x00 ]
      arch: "CS_ARCH_MIPS"
      options: [ "CS_MODE_BIG_ENDIAN", "CS_MODE_MIPS64" ]
    expected:
      insns:
        -
          asm_text: "dmfc2 $t4, $s0, 0"
  -
    input:
      bytes: [ 0x48, 0x0c, 0x80, 0x02 ]
      arch: "CS_ARCH_MIPS"
      options: [ "CS_MODE_BIG_ENDIAN", "CS_MODE_MIPS64" ]
    expected:
      insns:
        -
          asm_text: "mfc2 $t4, $s0, 2"
  -
    input:
      bytes: [ 0x48, 0x0c, 0x80, 0x00 ]
      arch: "CS_ARCH_MIPS"
      options: [ "CS_MODE_BIG_ENDIAN", "CS_MODE_MIPS64" ]
    expected:
      insns:
        -
          asm_text: "mfc2 $t4, $s0, 0"
