test_cases:
  -
    input:
      bytes: [ 0x8b, 0x12, 0x73, 0x00 ]
      arch: "CS_ARCH_RISCV"
      options: [ "CS_MODE_RISCV32", "CS_MODE_RISCV_XTHEADBA" ]
    expected:
      insns:
        -
          asm_text: "th.addsl t0, t1, t2, 0"

  -
    input:
      bytes: [ 0x8b, 0x12, 0x73, 0x02 ]
      arch: "CS_ARCH_RISCV"
      options: [ "CS_MODE_RISCV32", "CS_MODE_RISCV_XTHEADBA" ]
    expected:
      insns:
        -
          asm_text: "th.addsl t0, t1, t2, 1"

  -
    input:
      bytes: [ 0x8b, 0x12, 0x73, 0x04 ]
      arch: "CS_ARCH_RISCV"
      options: [ "CS_MODE_RISCV32", "CS_MODE_RISCV_XTHEADBA" ]
    expected:
      insns:
        -
          asm_text: "th.addsl t0, t1, t2, 2"

  -
    input:
      bytes: [ 0x8b, 0x12, 0x73, 0x06 ]
      arch: "CS_ARCH_RISCV"
      options: [ "CS_MODE_RISCV32", "CS_MODE_RISCV_XTHEADBA" ]
    expected:
      insns:
        -
          asm_text: "th.addsl t0, t1, t2, 3"
