1 # RUN: llvm-mc -triple=thumbv6-apple-darwin -disassemble < %s | FileCheck %s
3 #------------------------------------------------------------------------------
5 #------------------------------------------------------------------------------
11 #------------------------------------------------------------------------------
13 #------------------------------------------------------------------------------
14 # CHECK: adds r1, r2, #3
15 # CHECK: adds r2, r2, #3
22 #------------------------------------------------------------------------------
24 #------------------------------------------------------------------------------
25 # CHECK: adds r1, r2, r3
31 #------------------------------------------------------------------------------
33 #------------------------------------------------------------------------------
34 # CHECK: asrs r2, r3, #32
35 # CHECK: asrs r2, r3, #5
36 # CHECK: asrs r2, r3, #1
42 #------------------------------------------------------------------------------
44 #------------------------------------------------------------------------------
49 #------------------------------------------------------------------------------
51 #------------------------------------------------------------------------------
56 #------------------------------------------------------------------------------
58 #------------------------------------------------------------------------------
65 #------------------------------------------------------------------------------
67 #------------------------------------------------------------------------------
72 #------------------------------------------------------------------------------
74 #------------------------------------------------------------------------------
79 #------------------------------------------------------------------------------
81 #------------------------------------------------------------------------------
86 #------------------------------------------------------------------------------
88 #------------------------------------------------------------------------------
97 #------------------------------------------------------------------------------
99 #------------------------------------------------------------------------------
104 #------------------------------------------------------------------------------
106 #------------------------------------------------------------------------------
107 # CHECK: ldm r3, {r0, r1, r2, r3, r4, r5, r6, r7}
108 # CHECK: ldm r2!, {r1, r3, r4, r5, r7}
109 # CHECK: ldm r1, {r1}
116 #------------------------------------------------------------------------------
118 #------------------------------------------------------------------------------
119 # CHECK: ldr r1, [r5]
120 # CHECK: ldr r2, [r6, #32]
121 # CHECK: ldr r3, [r7, #124]
122 # CHECK: ldr r1, [sp]
123 # CHECK: ldr r2, [sp, #24]
124 # CHECK: ldr r3, [sp, #1020]
134 #------------------------------------------------------------------------------
136 #------------------------------------------------------------------------------
137 # CHECK: ldr r1, [r2, r3]
142 #------------------------------------------------------------------------------
144 #------------------------------------------------------------------------------
145 # CHECK: ldrb r4, [r3]
146 # CHECK: ldrb r5, [r6]
147 # CHECK: ldrb r6, [r7, #31]
154 #------------------------------------------------------------------------------
156 #------------------------------------------------------------------------------
157 # CHECK: ldrb r6, [r4, r5]
162 #------------------------------------------------------------------------------
164 #------------------------------------------------------------------------------
165 # CHECK: ldrh r3, [r3]
166 # CHECK: ldrh r4, [r6, #2]
167 # CHECK: ldrh r5, [r7, #62]
173 #------------------------------------------------------------------------------
175 #------------------------------------------------------------------------------
176 # CHECK: ldrh r6, [r2, r6]
181 #------------------------------------------------------------------------------
183 #------------------------------------------------------------------------------
184 # CHECK: ldrsb r6, [r2, r6]
185 # CHECK: ldrsh r3, [r7, r1]
190 #------------------------------------------------------------------------------
192 #------------------------------------------------------------------------------
194 # CHECK: lsls r4, r5, #4
200 #------------------------------------------------------------------------------
202 #------------------------------------------------------------------------------
208 #------------------------------------------------------------------------------
210 #------------------------------------------------------------------------------
211 # CHECK: lsrs r1, r3, #1
212 # CHECK: lsrs r1, r3, #32
218 #------------------------------------------------------------------------------
220 #------------------------------------------------------------------------------
225 #------------------------------------------------------------------------------
227 #------------------------------------------------------------------------------
229 # CHECK: movs r2, #255
230 # CHECK: movs r2, #23
237 #------------------------------------------------------------------------------
239 #------------------------------------------------------------------------------
247 #------------------------------------------------------------------------------
249 #------------------------------------------------------------------------------
250 # CHECK: muls r1, r2, r1
257 #------------------------------------------------------------------------------
259 #------------------------------------------------------------------------------
264 #------------------------------------------------------------------------------
266 #------------------------------------------------------------------------------
267 # CHECK: rsbs r3, r4, #0
272 #------------------------------------------------------------------------------
274 #------------------------------------------------------------------------------
280 #------------------------------------------------------------------------------
282 #------------------------------------------------------------------------------
287 #------------------------------------------------------------------------------
289 #------------------------------------------------------------------------------
290 # CHECK: pop {r2, r3, r6}
295 #------------------------------------------------------------------------------
297 #------------------------------------------------------------------------------
298 # CHECK: push {r1, r2, r7}
303 #------------------------------------------------------------------------------
305 #------------------------------------------------------------------------------
307 # CHECK: rev16 r7, r2
308 # CHECK: revsh r5, r1
315 #------------------------------------------------------------------------------
317 #------------------------------------------------------------------------------
322 #------------------------------------------------------------------------------
324 #------------------------------------------------------------------------------
325 # CHECK: rsbs r1, r3, #0
330 #------------------------------------------------------------------------------
332 #------------------------------------------------------------------------------
338 #------------------------------------------------------------------------------
340 #------------------------------------------------------------------------------
347 #------------------------------------------------------------------------------
349 #------------------------------------------------------------------------------
350 # CHECK: stm r1!, {r2, r6}
351 # CHECK: stm r1!, {r1, r2, r3, r7}
357 #------------------------------------------------------------------------------
359 #------------------------------------------------------------------------------
360 # CHECK: str r2, [r7]
361 # CHECK: str r2, [r7]
362 # CHECK: str r5, [r1, #4]
363 # CHECK: str r3, [r7, #124]
364 # CHECK: str r2, [sp]
365 # CHECK: str r3, [sp]
366 # CHECK: str r4, [sp, #20]
367 # CHECK: str r5, [sp, #1020]
379 #------------------------------------------------------------------------------
381 #------------------------------------------------------------------------------
382 # CHECK: str r2, [r7, r3]
387 #------------------------------------------------------------------------------
389 #------------------------------------------------------------------------------
390 # CHECK: strb r4, [r3]
391 # CHECK: strb r5, [r6]
392 # CHECK: strb r6, [r7, #31]
399 #------------------------------------------------------------------------------
401 #------------------------------------------------------------------------------
402 # CHECK: strb r6, [r4, r5]
407 #------------------------------------------------------------------------------
409 #------------------------------------------------------------------------------
410 # CHECK: strh r3, [r3]
411 # CHECK: strh r4, [r6, #2]
412 # CHECK: strh r5, [r7, #62]
419 #------------------------------------------------------------------------------
421 #------------------------------------------------------------------------------
422 # CHECK: strh r6, [r2, r6]
427 #------------------------------------------------------------------------------
429 #------------------------------------------------------------------------------
430 # CHECK: subs r1, r2, #3
438 #------------------------------------------------------------------------------
440 #------------------------------------------------------------------------------
441 # CHECK: subs r1, r2, r3
446 #------------------------------------------------------------------------------
448 #------------------------------------------------------------------------------
456 #------------------------------------------------------------------------------
458 #------------------------------------------------------------------------------
466 #------------------------------------------------------------------------------
468 #------------------------------------------------------------------------------
474 #------------------------------------------------------------------------------
476 #------------------------------------------------------------------------------
484 #------------------------------------------------------------------------------
486 #------------------------------------------------------------------------------