1# RUN: llvm-mc -triple arm64-apple-darwin --disassemble < %s | FileCheck %s 2 3#----------------------------------------------------------------------------- 4# Unconditional branch (register) instructions. 5#----------------------------------------------------------------------------- 6 7 0xc0 0x03 0x5f 0xd6 8# CHECK: ret 9 0x20 0x00 0x5f 0xd6 10# CHECK: ret x1 11 0xe0 0x03 0xbf 0xd6 12# CHECK: drps 13 0xe0 0x03 0x9f 0xd6 14# CHECK: eret 15 0xa0 0x00 0x1f 0xd6 16# CHECK: br x5 17 0x20 0x01 0x3f 0xd6 18# CHECK: blr x9 19 0x0B 0x00 0x18 0x37 20# CHECK: tbnz w11, #3, #0 21 22#----------------------------------------------------------------------------- 23# Exception generation instructions. 24#----------------------------------------------------------------------------- 25 26 0x20 0x00 0x20 0xd4 27# CHECK: brk #0x1 28 0x41 0x00 0xa0 0xd4 29# CHECK: dcps1 #0x2 30 0x62 0x00 0xa0 0xd4 31# CHECK: dcps2 #0x3 32 0x83 0x00 0xa0 0xd4 33# CHECK: dcps3 #0x4 34 0xa0 0x00 0x40 0xd4 35# CHECK: hlt #0x5 36 0xc2 0x00 0x00 0xd4 37# CHECK: hvc #0x6 38 0xe3 0x00 0x00 0xd4 39# CHECK: smc #0x7 40 0x01 0x01 0x00 0xd4 41# CHECK: svc #0x8 42 43#----------------------------------------------------------------------------- 44# PC-relative branches (both positive and negative displacement) 45#----------------------------------------------------------------------------- 46 47 0x07 0x00 0x00 0x14 48# CHECK: b #28 49 0x06 0x00 0x00 0x94 50# CHECK: bl #24 51 0xa1 0x00 0x00 0x54 52# CHECK: b.ne #20 53 0x80 0x00 0x08 0x36 54# CHECK: tbz w0, #1, #16 55 0xe1 0xff 0xf7 0x36 56# CHECK: tbz w1, #30, #-4 57 0x60 0x00 0x08 0x37 58# CHECK: tbnz w0, #1, #12 59 0x40 0x00 0x00 0xb4 60# CHECK: cbz x0, #8 61 0x20 0x00 0x00 0xb5 62# CHECK: cbnz x0, #4 63 0x1f 0x20 0x03 0xd5 64# CHECK: nop 65 0xff 0xff 0xff 0x17 66# CHECK: b #-4 67 0xc1 0xff 0xff 0x54 68# CHECK: b.ne #-8 69 0xa0 0xff 0x0f 0x36 70# CHECK: tbz w0, #1, #-12 71 0x80 0xff 0xff 0xb4 72# CHECK: cbz x0, #-16 73 0x1f 0x20 0x03 0xd5 74# CHECK: nop 75 76