test_cases:
  -
    input:
      bytes: [ 0x57, 0x14, 0x4a, 0xec ]
      arch: "CS_ARCH_RISCV"
      options: [ "CS_MODE_RISCV32", "experimental-zvfbfwma" ]
    expected:
      insns:
        -
          asm_text: "vfwmaccbf16.vv v8, v20, v4, v0.t"

  -
    input:
      bytes: [ 0x57, 0x14, 0x4a, 0xee ]
      arch: "CS_ARCH_RISCV"
      options: [ "CS_MODE_RISCV32", "experimental-zvfbfwma" ]
    expected:
      insns:
        -
          asm_text: "vfwmaccbf16.vv v8, v20, v4"

  -
    input:
      bytes: [ 0x57, 0x54, 0x45, 0xec ]
      arch: "CS_ARCH_RISCV"
      options: [ "CS_MODE_RISCV32", "experimental-zvfbfwma" ]
    expected:
      insns:
        -
          asm_text: "vfwmaccbf16.vf v8, fa0, v4, v0.t"

  -
    input:
      bytes: [ 0x57, 0x54, 0x45, 0xee ]
      arch: "CS_ARCH_RISCV"
      options: [ "CS_MODE_RISCV32", "experimental-zvfbfwma" ]
    expected:
      insns:
        -
          asm_text: "vfwmaccbf16.vf v8, fa0, v4"

  -
    input:
      bytes: [ 0x07, 0x10, 0xc5, 0x00 ]
      arch: "CS_ARCH_RISCV"
      options: [ "CS_MODE_RISCV32", "experimental-zvfbfwma" ]
    expected:
      insns:
        -
          asm_text: "flh ft0, 12(a0)"

  -
    input:
      bytes: [ 0xa7, 0x1f, 0x6a, 0x7e ]
      arch: "CS_ARCH_RISCV"
      options: [ "CS_MODE_RISCV32", "experimental-zvfbfwma" ]
    expected:
      insns:
        -
          asm_text: "fsh ft6, 2047(s4)"

  -
    input:
      bytes: [ 0x53, 0x86, 0x0b, 0xe4 ]
      arch: "CS_ARCH_RISCV"
      options: [ "CS_MODE_RISCV32", "experimental-zvfbfwma" ]
    expected:
      insns:
        -
          asm_text: "fmv.x.h a2, fs7"

  -
    input:
      bytes: [ 0xd3, 0x00, 0x08, 0xf4 ]
      arch: "CS_ARCH_RISCV"
      options: [ "CS_MODE_RISCV32", "experimental-zvfbfwma" ]
    expected:
      insns:
        -
          asm_text: "fmv.h.x ft1, a6"
