test_cases:
  -
    input:
      bytes: [ 0x6e, 0x62, 0x48, 0x74 ]
      arch: "CS_ARCH_LOONGARCH"
      options: [ "CS_MODE_LOONGARCH64" ]
    expected:
      insns:
        -
          asm_text: "xvssub.b $xr14, $xr19, $xr24"
  -
    input:
      bytes: [ 0x0d, 0xcd, 0x48, 0x74 ]
      arch: "CS_ARCH_LOONGARCH"
      options: [ "CS_MODE_LOONGARCH64" ]
    expected:
      insns:
        -
          asm_text: "xvssub.h $xr13, $xr8, $xr19"
  -
    input:
      bytes: [ 0x7c, 0x73, 0x49, 0x74 ]
      arch: "CS_ARCH_LOONGARCH"
      options: [ "CS_MODE_LOONGARCH64" ]
    expected:
      insns:
        -
          asm_text: "xvssub.w $xr28, $xr27, $xr28"
  -
    input:
      bytes: [ 0x1c, 0x8a, 0x49, 0x74 ]
      arch: "CS_ARCH_LOONGARCH"
      options: [ "CS_MODE_LOONGARCH64" ]
    expected:
      insns:
        -
          asm_text: "xvssub.d $xr28, $xr16, $xr2"
  -
    input:
      bytes: [ 0xab, 0x45, 0x4c, 0x74 ]
      arch: "CS_ARCH_LOONGARCH"
      options: [ "CS_MODE_LOONGARCH64" ]
    expected:
      insns:
        -
          asm_text: "xvssub.bu $xr11, $xr13, $xr17"
  -
    input:
      bytes: [ 0x50, 0xf1, 0x4c, 0x74 ]
      arch: "CS_ARCH_LOONGARCH"
      options: [ "CS_MODE_LOONGARCH64" ]
    expected:
      insns:
        -
          asm_text: "xvssub.hu $xr16, $xr10, $xr28"
  -
    input:
      bytes: [ 0x15, 0x34, 0x4d, 0x74 ]
      arch: "CS_ARCH_LOONGARCH"
      options: [ "CS_MODE_LOONGARCH64" ]
    expected:
      insns:
        -
          asm_text: "xvssub.wu $xr21, $xr0, $xr13"
  -
    input:
      bytes: [ 0x52, 0xef, 0x4d, 0x74 ]
      arch: "CS_ARCH_LOONGARCH"
      options: [ "CS_MODE_LOONGARCH64" ]
    expected:
      insns:
        -
          asm_text: "xvssub.du $xr18, $xr26, $xr27"
