test_cases:
  -
    input:
      bytes: [ 0x1f, 0x24, 0x03, 0xd5 ]
      arch: "CS_ARCH_AARCH64"
      options: [ "CS_OPT_ONLY_OFFSET_BRANCH", "aarch64-none-linux-gnu", "bti" ]
    expected:
      insns:
        -
          asm_text: "bti"

  -
    input:
      bytes: [ 0x5f, 0x24, 0x03, 0xd5 ]
      arch: "CS_ARCH_AARCH64"
      options: [ "CS_OPT_ONLY_OFFSET_BRANCH", "aarch64-none-linux-gnu", "bti" ]
    expected:
      insns:
        -
          asm_text: "bti c"

  -
    input:
      bytes: [ 0x9f, 0x24, 0x03, 0xd5 ]
      arch: "CS_ARCH_AARCH64"
      options: [ "CS_OPT_ONLY_OFFSET_BRANCH", "aarch64-none-linux-gnu", "bti" ]
    expected:
      insns:
        -
          asm_text: "bti j"

  -
    input:
      bytes: [ 0xdf, 0x24, 0x03, 0xd5 ]
      arch: "CS_ARCH_AARCH64"
      options: [ "CS_OPT_ONLY_OFFSET_BRANCH", "aarch64-none-linux-gnu", "bti" ]
    expected:
      insns:
        -
          asm_text: "bti jc"

  -
    input:
      bytes: [ 0x1f, 0x24, 0x03, 0xd5 ]
      arch: "CS_ARCH_AARCH64"
      options: [ "CS_OPT_ONLY_OFFSET_BRANCH", "aarch64-none-linux-gnu", "bti" ]
    expected:
      insns:
        -
          asm_text: "bti"

  -
    input:
      bytes: [ 0x5f, 0x24, 0x03, 0xd5 ]
      arch: "CS_ARCH_AARCH64"
      options: [ "CS_OPT_ONLY_OFFSET_BRANCH", "aarch64-none-linux-gnu", "bti" ]
    expected:
      insns:
        -
          asm_text: "bti c"

  -
    input:
      bytes: [ 0x9f, 0x24, 0x03, 0xd5 ]
      arch: "CS_ARCH_AARCH64"
      options: [ "CS_OPT_ONLY_OFFSET_BRANCH", "aarch64-none-linux-gnu", "bti" ]
    expected:
      insns:
        -
          asm_text: "bti j"

  -
    input:
      bytes: [ 0xdf, 0x24, 0x03, 0xd5 ]
      arch: "CS_ARCH_AARCH64"
      options: [ "CS_OPT_ONLY_OFFSET_BRANCH", "aarch64-none-linux-gnu", "bti" ]
    expected:
      insns:
        -
          asm_text: "bti jc"

  -
    input:
      bytes: [ 0x1f, 0x24, 0x03, 0xd5 ]
      arch: "CS_ARCH_AARCH64"
      options: [ "CS_OPT_ONLY_OFFSET_BRANCH", "aarch64-none-linux-gnu", "v8.5a" ]
    expected:
      insns:
        -
          asm_text: "bti"

  -
    input:
      bytes: [ 0x5f, 0x24, 0x03, 0xd5 ]
      arch: "CS_ARCH_AARCH64"
      options: [ "CS_OPT_ONLY_OFFSET_BRANCH", "aarch64-none-linux-gnu", "v8.5a" ]
    expected:
      insns:
        -
          asm_text: "bti c"

  -
    input:
      bytes: [ 0x9f, 0x24, 0x03, 0xd5 ]
      arch: "CS_ARCH_AARCH64"
      options: [ "CS_OPT_ONLY_OFFSET_BRANCH", "aarch64-none-linux-gnu", "v8.5a" ]
    expected:
      insns:
        -
          asm_text: "bti j"

  -
    input:
      bytes: [ 0xdf, 0x24, 0x03, 0xd5 ]
      arch: "CS_ARCH_AARCH64"
      options: [ "CS_OPT_ONLY_OFFSET_BRANCH", "aarch64-none-linux-gnu", "v8.5a" ]
    expected:
      insns:
        -
          asm_text: "bti jc"

  -
    input:
      bytes: [ 0x1f, 0x24, 0x03, 0xd5 ]
      arch: "CS_ARCH_AARCH64"
      options: [ "CS_OPT_ONLY_OFFSET_BRANCH", "aarch64-none-linux-gnu", "v8.5a" ]
    expected:
      insns:
        -
          asm_text: "bti"

  -
    input:
      bytes: [ 0x5f, 0x24, 0x03, 0xd5 ]
      arch: "CS_ARCH_AARCH64"
      options: [ "CS_OPT_ONLY_OFFSET_BRANCH", "aarch64-none-linux-gnu", "v8.5a" ]
    expected:
      insns:
        -
          asm_text: "bti c"

  -
    input:
      bytes: [ 0x9f, 0x24, 0x03, 0xd5 ]
      arch: "CS_ARCH_AARCH64"
      options: [ "CS_OPT_ONLY_OFFSET_BRANCH", "aarch64-none-linux-gnu", "v8.5a" ]
    expected:
      insns:
        -
          asm_text: "bti j"

  -
    input:
      bytes: [ 0xdf, 0x24, 0x03, 0xd5 ]
      arch: "CS_ARCH_AARCH64"
      options: [ "CS_OPT_ONLY_OFFSET_BRANCH", "aarch64-none-linux-gnu", "v8.5a" ]
    expected:
      insns:
        -
          asm_text: "bti jc"

  -
    input:
      bytes: [ 0x1f, 0x24, 0x03, 0xd5 ]
      arch: "CS_ARCH_AARCH64"
      options: [ "CS_OPT_ONLY_OFFSET_BRANCH", "aarch64-none-linux-gnu", "-bti" ]
    expected:
      insns:
        -
          asm_text: "bti"

  -
    input:
      bytes: [ 0x5f, 0x24, 0x03, 0xd5 ]
      arch: "CS_ARCH_AARCH64"
      options: [ "CS_OPT_ONLY_OFFSET_BRANCH", "aarch64-none-linux-gnu", "-bti" ]
    expected:
      insns:
        -
          asm_text: "bti c"

  -
    input:
      bytes: [ 0x9f, 0x24, 0x03, 0xd5 ]
      arch: "CS_ARCH_AARCH64"
      options: [ "CS_OPT_ONLY_OFFSET_BRANCH", "aarch64-none-linux-gnu", "-bti" ]
    expected:
      insns:
        -
          asm_text: "bti j"

  -
    input:
      bytes: [ 0xdf, 0x24, 0x03, 0xd5 ]
      arch: "CS_ARCH_AARCH64"
      options: [ "CS_OPT_ONLY_OFFSET_BRANCH", "aarch64-none-linux-gnu", "-bti" ]
    expected:
      insns:
        -
          asm_text: "bti jc"

  -
    input:
      bytes: [ 0x1f, 0x24, 0x03, 0xd5 ]
      arch: "CS_ARCH_AARCH64"
      options: [ "CS_OPT_ONLY_OFFSET_BRANCH", "aarch64-none-linux-gnu", "-bti" ]
    expected:
      insns:
        -
          asm_text: "bti"

  -
    input:
      bytes: [ 0x5f, 0x24, 0x03, 0xd5 ]
      arch: "CS_ARCH_AARCH64"
      options: [ "CS_OPT_ONLY_OFFSET_BRANCH", "aarch64-none-linux-gnu", "-bti" ]
    expected:
      insns:
        -
          asm_text: "bti c"

  -
    input:
      bytes: [ 0x9f, 0x24, 0x03, 0xd5 ]
      arch: "CS_ARCH_AARCH64"
      options: [ "CS_OPT_ONLY_OFFSET_BRANCH", "aarch64-none-linux-gnu", "-bti" ]
    expected:
      insns:
        -
          asm_text: "bti j"

  -
    input:
      bytes: [ 0xdf, 0x24, 0x03, 0xd5 ]
      arch: "CS_ARCH_AARCH64"
      options: [ "CS_OPT_ONLY_OFFSET_BRANCH", "aarch64-none-linux-gnu", "-bti" ]
    expected:
      insns:
        -
          asm_text: "bti jc"
