test_cases:
  -
    input:
      bytes: [ 0xd5, 0xf6, 0x00, 0x96 ]
      arch: "CS_ARCH_SPARC"
      options: [ "CS_MODE_V9", "CS_MODE_BIG_ENDIAN" ]
    expected:
      insns:
        -
          asm_text: "casxa [%i0] #ASI_N, %l6, %o2"

  -
    input:
      bytes: [ 0xd5, 0xf6, 0x01, 0x96 ]
      arch: "CS_ARCH_SPARC"
      options: [ "CS_MODE_V9", "CS_MODE_BIG_ENDIAN" ]
    expected:
      insns:
        -
          asm_text: "casxa [%i0] #ASI_N_L, %l6, %o2"

  -
    input:
      bytes: [ 0xd5, 0xf6, 0x02, 0x16 ]
      arch: "CS_ARCH_SPARC"
      options: [ "CS_MODE_V9", "CS_MODE_BIG_ENDIAN" ]
    expected:
      insns:
        -
          asm_text: "casxa [%i0] #ASI_AIUP, %l6, %o2"

  -
    input:
      bytes: [ 0xd5, 0xf6, 0x02, 0x36 ]
      arch: "CS_ARCH_SPARC"
      options: [ "CS_MODE_V9", "CS_MODE_BIG_ENDIAN" ]
    expected:
      insns:
        -
          asm_text: "casxa [%i0] #ASI_AIUS, %l6, %o2"

  -
    input:
      bytes: [ 0xd5, 0xf6, 0x03, 0x16 ]
      arch: "CS_ARCH_SPARC"
      options: [ "CS_MODE_V9", "CS_MODE_BIG_ENDIAN" ]
    expected:
      insns:
        -
          asm_text: "casxa [%i0] #ASI_AIUP_L, %l6, %o2"

  -
    input:
      bytes: [ 0xd5, 0xf6, 0x03, 0x36 ]
      arch: "CS_ARCH_SPARC"
      options: [ "CS_MODE_V9", "CS_MODE_BIG_ENDIAN" ]
    expected:
      insns:
        -
          asm_text: "casxa [%i0] #ASI_AIUS_L, %l6, %o2"

  -
    input:
      bytes: [ 0xd5, 0xf6, 0x10, 0x16 ]
      arch: "CS_ARCH_SPARC"
      options: [ "CS_MODE_V9", "CS_MODE_BIG_ENDIAN" ]
    expected:
      insns:
        -
          asm_text: "casx [%i0], %l6, %o2"

  -
    input:
      bytes: [ 0xd5, 0xf6, 0x10, 0x36 ]
      arch: "CS_ARCH_SPARC"
      options: [ "CS_MODE_V9", "CS_MODE_BIG_ENDIAN" ]
    expected:
      insns:
        -
          asm_text: "casxa [%i0] #ASI_S, %l6, %o2"

  -
    input:
      bytes: [ 0xd5, 0xf6, 0x10, 0x56 ]
      arch: "CS_ARCH_SPARC"
      options: [ "CS_MODE_V9", "CS_MODE_BIG_ENDIAN" ]
    expected:
      insns:
        -
          asm_text: "casxa [%i0] #ASI_PNF, %l6, %o2"

  -
    input:
      bytes: [ 0xd5, 0xf6, 0x10, 0x76 ]
      arch: "CS_ARCH_SPARC"
      options: [ "CS_MODE_V9", "CS_MODE_BIG_ENDIAN" ]
    expected:
      insns:
        -
          asm_text: "casxa [%i0] #ASI_SNF, %l6, %o2"

  -
    input:
      bytes: [ 0xd5, 0xf6, 0x11, 0x16 ]
      arch: "CS_ARCH_SPARC"
      options: [ "CS_MODE_V9", "CS_MODE_BIG_ENDIAN" ]
    expected:
      insns:
        -
          asm_text: "casxl [%i0], %l6, %o2"

  -
    input:
      bytes: [ 0xd5, 0xf6, 0x11, 0x36 ]
      arch: "CS_ARCH_SPARC"
      options: [ "CS_MODE_V9", "CS_MODE_BIG_ENDIAN" ]
    expected:
      insns:
        -
          asm_text: "casxa [%i0] #ASI_S_L, %l6, %o2"

  -
    input:
      bytes: [ 0xd5, 0xf6, 0x11, 0x56 ]
      arch: "CS_ARCH_SPARC"
      options: [ "CS_MODE_V9", "CS_MODE_BIG_ENDIAN" ]
    expected:
      insns:
        -
          asm_text: "casxa [%i0] #ASI_PNF_L, %l6, %o2"

  -
    input:
      bytes: [ 0xd5, 0xf6, 0x11, 0x76 ]
      arch: "CS_ARCH_SPARC"
      options: [ "CS_MODE_V9", "CS_MODE_BIG_ENDIAN" ]
    expected:
      insns:
        -
          asm_text: "casxa [%i0] #ASI_SNF_L, %l6, %o2"
