blob: dc18824706c801f4dd35173041499452399e8c3e [file] [log] [blame]
Johnny Chen7b999ea2010-04-02 22:27:38 +00001# RUN: llvm-mc --disassemble %s -triple=arm-apple-darwin9 | FileCheck %s
Johnny Chen7b999ea2010-04-02 22:27:38 +00002
Johnny Chen8bbc1282011-03-24 20:42:48 +00003# CHECK: addpl r4, pc, #19, 8
40x4c 0x45 0x8f 0x52
5
Johnny Chen7b999ea2010-04-02 22:27:38 +00006# CHECK: b #0
Johnny Chena4c31542011-03-15 22:27:33 +000070x00 0x00 0x00 0xea
8
9# CHECK: bl #7732
100x8d 0x07 0x00 0xeb
11
12# CHECK: bleq #-4
130xff 0xff 0xff 0x0b
Johnny Chen7b999ea2010-04-02 22:27:38 +000014
15# CHECK: bfc r8, #0, #16
160x1f 0x80 0xcf 0xe7
17
18# CHECK: bfi r8, r0, #16, #1
190x10 0x88 0xd0 0xe7
20
Bob Wilson775eec222011-01-28 17:50:30 +000021# CHECK: mov pc, lr
220x0e 0xf0 0xa0 0xe1
23
Johnny Chen7b999ea2010-04-02 22:27:38 +000024# CHECK: cmn r0, #1
250x01 0x00 0x70 0xe3
26
Johnny Chend59c73f2010-08-11 23:35:12 +000027# CHECK: dmb
280x5f 0xf0 0x7f 0xf5
29
Johnny Chen7b999ea2010-04-02 22:27:38 +000030# CHECK: dmb nshst
310x56 0xf0 0x7f 0xf5
32
Johnny Chend59c73f2010-08-11 23:35:12 +000033# CHECK: dsb
340x4f 0xf0 0x7f 0xf5
35
Johnny Chen8e8f1c12010-08-12 20:46:17 +000036# CHECK: dsb st
370x4e 0xf0 0x7f 0xf5
38
39# CHECK: isb
400x6f 0xf0 0x7f 0xf5
41
Johnny Chen807e1742010-04-16 19:33:23 +000042# CHECK: ldclvc p5, cr15, [r8], #-0
430x00 0xf5 0x78 0x7c
44
Johnny Chen7b999ea2010-04-02 22:27:38 +000045# CHECK: ldr r0, [r2], #15
460x0f 0x00 0x92 0xe4
47
Johnny Chen2b7aba12010-04-16 19:57:21 +000048# CHECK: ldrh r0, [r2], #0
490xb0 0x00 0xd2 0xe0
50
Johnny Chen1d3ee602010-04-15 23:23:40 +000051# CHECK: ldrht r0, [r2], #15
520xbf 0x00 0xf2 0xe0
53
Johnny Chenacbc06c2010-04-15 23:12:47 +000054# CHECK: ldrsbtvs lr, [r2], -r9
550xd9 0xe9 0x32 0x60
56
Johnny Chen7b999ea2010-04-02 22:27:38 +000057# CHECK: lsls r0, r2, #31
580x82 0x0f 0xb0 0xe1
59
Owen Andersonec475972011-01-13 22:38:16 +000060# CHECK: mcr2 p0, #0, r2, c1, c0, #7
Johnny Chen7b999ea2010-04-02 22:27:38 +0000610xf0 0x20 0x01 0xfe
62
63# CHECK: movt r8, #65535
640xff 0x8f 0x4f 0xe3
65
Bob Wilson59351842010-10-15 03:23:44 +000066# CHECK: mvnspl r7, #245, 2
Johnny Chenfc935032010-04-12 18:46:53 +0000670xf5 0x71 0xf0 0x53
68
Bob Wilson97886d52010-08-05 00:34:42 +000069# CHECK-NOT: orr r7, r8, r7, rrx #0
70# CHECK: orr r7, r8, r7, rrx
710x67 0x70 0x88 0xe1
72
Johnny Chen7b999ea2010-04-02 22:27:38 +000073# CHECK: pkhbt r8, r9, r10, lsl #4
740x1a 0x82 0x89 0xe6
75
Bob Wilson942b10f2010-08-17 17:23:19 +000076# CHECK-NOT: pkhbtls pc, r11, r11, lsl #0
77# CHECK: pkhbtls pc, r11, r11
780x1b 0xf0 0x8b 0x96
79
Johnny Chen7b999ea2010-04-02 22:27:38 +000080# CHECK: pop {r0, r2, r4, r6, r8, r10}
810x55 0x05 0xbd 0xe8
82
83# CHECK: push {r0, r2, r4, r6, r8, r10}
840x55 0x05 0x2d 0xe9
85
86# CHECK: qsax r8, r9, r10
870x5a 0x8f 0x29 0xe6
88
89# CHECK: rfedb r0!
900x00 0x0a 0x30 0xf9
91
Bob Wilsonadb93e52010-08-05 18:23:43 +000092# CHECK-NOT: rsbeq r0, r2, r0, lsl #0
93# CHECK: rsbeq r0, r2, r0
940x00 0x00 0x62 0x00
95
Bob Wilson59351842010-10-15 03:23:44 +000096# CHECK-NOT: rscseq r0, r0, r1, lsl #0
97# CHECK: rscseq r0, r0, r1
Bob Wilson72de3072010-08-05 18:59:36 +0000980x01 0x00 0xf0 0x00
99
Johnny Chen7b999ea2010-04-02 22:27:38 +0000100# CHECK: sbcs r0, pc, #1
1010x01 0x00 0xdf 0xe2
102
103# CHECK: sbfx r0, r1, #0, #8
1040x51 0x00 0xa7 0xe7
105
106# CHECK: ssat r8, #1, r10, lsl #8
1070x1a 0x84 0xa0 0xe6
108
Bob Wilsonadd513112010-08-11 23:10:46 +0000109# CHECK-NOT: ssatmi r0, #17, r12, lsl #0
110# CHECK: ssatmi r0, #17, r12
1110x1c 0x00 0xb0 0x46
112
Johnny Chen7b999ea2010-04-02 22:27:38 +0000113# CHECK: stmdb r10!, {r4, r5, r6, r7, lr}
1140xf0 0x40 0x2a 0xe9
115
116# CHECK: teq r0, #31
1170x1f 0x00 0x30 0xe3
118
119# CHECK: ubfx r0, r0, #16, #1
1200x50 0x08 0xe0 0xe7
121
Johnny Chen74491bb2010-08-12 01:40:54 +0000122# CHECK: usat r8, #0, r10, asr #32
1230x5a 0x80 0xe0 0xe6
Jim Grosbach7e72ec62010-10-13 21:00:04 +0000124
125# CHECK: setend be
1260x00 0x02 0x01 0xf1
127
128# CHECK: setend le
1290x00 0x00 0x01 0xf1
Bruno Cardoso Lopes90d1dfe2011-02-14 13:09:44 +0000130
131# CHECK: cpsie aif
1320xc0 0x01 0x08 0xf1
133
134# CHECK: cps #15
1350x0f 0x00 0x02 0xf1
136
137# CHECK: cpsie if, #10
1380xca 0x00 0x0a 0xf1
Bruno Cardoso Lopes9cd43972011-02-18 19:45:59 +0000139
140# CHECK: msr cpsr_fc, r0
1410x00 0xf0 0x29 0xe1
Kevin Enderbyb8b60412011-03-02 23:08:33 +0000142
143# CHECK: rsbs r6, r7, r8
1440x08 0x60 0x77 0xe0
Bob Wilsonec845682011-03-03 01:41:01 +0000145
146# CHECK: blxeq r5
1470x35 0xff 0x2f 0x01
Bob Wilson6f6d7392011-03-03 07:19:52 +0000148
149# CHECK: bx r12
1500x1c 0xff 0x2f 0xe1
Johnny Chen9363d412011-03-09 20:01:14 +0000151
152# CHECK: uqadd16mi r6, r11, r8
1530x18 0x60 0x6b 0x46
Johnny Chen7a2873d2011-03-15 01:13:17 +0000154
155# CHECK: str r0, [sp, #4]
1560x04 0x00 0x8d 0xe5
157
158# CHECK: str r1, [sp]
1590x00 0x10 0x8d 0xe5
160
161# CHECK: ldr r3, [pc, #144]
1620x90 0x30 0x9f 0xe5
163
164# CHECK: strdeq r2, r3, [r0], -r8
1650xf8 0x24 0x00 0x00
Johnny Chen0c5f6702011-03-19 01:16:20 +0000166
167# CHECK: ldrdeq r2, [r0], -r12
1680xdc 0x24 0x00 0x00
Johnny Chen30350cd2011-03-22 22:28:49 +0000169
170# CHECK: ldrbt r3, [r4], -r5, lsl #12
1710x05 0x36 0x74 0xe6
Johnny Chen122a6302011-03-22 23:08:56 +0000172
173# CHECK: vcmpe.f64 d8, #0
1740xc0 0x8b 0xb5 0xee
Johnny Chenf949d8e2011-03-24 00:28:38 +0000175
176# CHECK: vldmdb r2, {s7, s8, s9, s10, s11}
1770x05 0x3a 0x52 0xed
Johnny Chen1de8cc62011-03-24 01:07:26 +0000178
179# CHECK: strtvc r5, [r3], r0, lsr #20
1800x30 0x5a 0xa3 0x76
Johnny Chen0f5d52d2011-03-24 01:40:42 +0000181
182# CHECK: stmiblo sp, {r0, r4, r8, r11, r12, pc}
1830x11 0x99 0x8d 0x39
184
185# CHECK: ldmdb sp, {r0, r4, r8, r11, r12, pc}
1860x11 0x99 0x1d 0xe9
Johnny Chenaa84d412011-03-25 17:31:16 +0000187
188# CHECK: swpge r3, r2, [r6]
1890x92 0x30 0x06 0xa1
Johnny Chen1572bf42011-03-25 23:02:58 +0000190
191# CHECK: umull r1, r2, r3, r4
1920x93 0x14 0x82 0xe0
Johnny Chenf9cd1392011-03-28 18:41:58 +0000193
194# CHECK: pld [pc, #-0]
1950x00 0xf0 0x1f 0xf5
196
197# CHECK: pli [pc, #-0]
1980x00 0xf0 0x5f 0xf4
199
200# CHECK: pli [r3, r1, lsl #2]
2010x01 0xf1 0xd3 0xf6