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