test_cases:
  -
    input:
      bytes: [ 0x33, 0x00, 0x20, 0x00 ]
      arch: "CS_ARCH_RISCV"
      options: [ "CS_MODE_RISCV32", "zihintntl", "CS_MODE_RISCV_C" ]
    expected:
      insns:
        -
          asm_text: "ntl.p1"

  -
    input:
      bytes: [ 0x33, 0x00, 0x30, 0x00 ]
      arch: "CS_ARCH_RISCV"
      options: [ "CS_MODE_RISCV32", "zihintntl", "CS_MODE_RISCV_C" ]
    expected:
      insns:
        -
          asm_text: "ntl.pall"

  -
    input:
      bytes: [ 0x33, 0x00, 0x40, 0x00 ]
      arch: "CS_ARCH_RISCV"
      options: [ "CS_MODE_RISCV32", "zihintntl", "CS_MODE_RISCV_C" ]
    expected:
      insns:
        -
          asm_text: "ntl.s1"

  -
    input:
      bytes: [ 0x33, 0x00, 0x50, 0x00 ]
      arch: "CS_ARCH_RISCV"
      options: [ "CS_MODE_RISCV32", "zihintntl", "CS_MODE_RISCV_C" ]
    expected:
      insns:
        -
          asm_text: "ntl.all"

  -
    input:
      bytes: [ 0x0a, 0x90 ]
      arch: "CS_ARCH_RISCV"
      options: [ "CS_MODE_RISCV32", "zihintntl", "CS_MODE_RISCV_C" ]
    expected:
      insns:
        -
          asm_text: "c.ntl.p1"

  -
    input:
      bytes: [ 0x0e, 0x90 ]
      arch: "CS_ARCH_RISCV"
      options: [ "CS_MODE_RISCV32", "zihintntl", "CS_MODE_RISCV_C" ]
    expected:
      insns:
        -
          asm_text: "c.ntl.pall"

  -
    input:
      bytes: [ 0x12, 0x90 ]
      arch: "CS_ARCH_RISCV"
      options: [ "CS_MODE_RISCV32", "zihintntl", "CS_MODE_RISCV_C" ]
    expected:
      insns:
        -
          asm_text: "c.ntl.s1"

  -
    input:
      bytes: [ 0x16, 0x90 ]
      arch: "CS_ARCH_RISCV"
      options: [ "CS_MODE_RISCV32", "zihintntl", "CS_MODE_RISCV_C" ]
    expected:
      insns:
        -
          asm_text: "c.ntl.all"
