1# RUN: llvm-mc --disassemble %s -triple=thumbv7-apple-darwin9 | FileCheck %s 2 3# CHECK: push {r0, r1, r2, r3} 4# CHECK-NEXT: push {r4, r5, r7, lr} 5# CHECK-NEXT: add r7, sp, #8 6# CHECK-NEXT: sub sp, #4 7# CHECK-NEXT: add r3, sp, #20 8# CHECK-NEXT: ldr r5, [r3], #4 9# CHECK-NEXT: str r3, [sp] 10# CHECK-NEXT: ldr r3, [pc, #52] 11# CHECK-NEXT: add r3, pc 12# CHECK-NEXT: ldr r0, [r3] 13# CHECK-NEXT: ldr r4, [r0] 14# CHECK-NEXT: ldr r0, [pc, #48] 15# CHECK-NEXT: add r0, pc 16# CHECK-NEXT: ldr r0, [r0] 17# CHECK-NEXT: ldr r0, [r0] 18# CHECK-NEXT: blx #191548 19# CHECK-NEXT: cbnz r0, #6 20# CHECK-NEXT: ldr r1, [pc, #40] 21# CHECK-NEXT: add r1, pc 22# CHECK-NEXT: ldr r1, [r1] 23# CHECK-NEXT: b #0 24# CHECK-NEXT: mov r1, r0 25# CHECK-NEXT: mov r0, r4 26# CHECK-NEXT: mov r2, r5 27# CHECK-NEXT: ldr r3, [sp] 28# CHECK-NEXT: bl #-8390 29# Data bytes (corresponds to an invalid instruction) 30# But not: sub.w sp, r7, #8 31# CHECK-NEXT: pop.w {r4, r5, r7, lr} 32# CHECK-NEXT: add sp, #16 33# CHECK-NEXT: bx lr 34# CHECK-NEXT: nop 35# CHECK-NEXT: movs r3, #142 36# CHECK-NEXT: movs r5, r0 37# CHECK-NEXT: adds r1, #122 38# CHECK-NEXT: movs r5, r0 39# CHECK-NEXT: adds r1, #104 40# CHECK-NEXT: movs r5, r0 410x0f 0xb4 420xb0 0xb5 430x02 0xaf 440x81 0xb0 450x05 0xab 460x53 0xf8 0x04 0x5b 470x00 0x93 480x0d 0x4b 490x7b 0x44 500x18 0x68 510x04 0x68 520x0c 0x48 530x78 0x44 540x00 0x68 550x00 0x68 560x2e 0xf0 0x1e 0xee 570x18 0xb9 580x0a 0x49 590x79 0x44 600x09 0x68 610x00 0xe0 620x01 0x46 630x20 0x46 640x2a 0x46 650x00 0x9b 660xfd 0xf7 0x9d 0xff 67# 0xa7 0xf1 0x08 0x0d 680xbd 0xe8 0xb0 0x40 690x04 0xb0 700x70 0x47 710x00 0xbf 720x8e 0x23 730x05 0x00 740x7a 0x31 750x05 0x00 760x68 0x31 770x05 0x00 78