Add a thumb test file for printf (iOS 4.3).
authorJohnny Chen <johnny.chen@apple.com>
Tue, 29 Mar 2011 21:09:30 +0000 (21:09 +0000)
committerJohnny Chen <johnny.chen@apple.com>
Tue, 29 Mar 2011 21:09:30 +0000 (21:09 +0000)
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@128487 91177308-0d34-0410-b5e6-96231b3b80d8

test/MC/Disassembler/ARM/thumb-printf.txt [new file with mode: 0644]

diff --git a/test/MC/Disassembler/ARM/thumb-printf.txt b/test/MC/Disassembler/ARM/thumb-printf.txt
new file mode 100644 (file)
index 0000000..6245b7c
--- /dev/null
@@ -0,0 +1,76 @@
+# RUN: llvm-mc --disassemble %s -triple=thumb-apple-darwin9 | FileCheck %s
+
+# CHECK:       push    {r0, r1, r2, r3}
+# CHECK-NEXT:  push    {r4, r5, r7, lr}
+# CHECK-NEXT:  add     r7, sp, #8
+# CHECK-NEXT:  sub     sp, #4
+# CHECK-NEXT:  add     r3, sp, #20
+# CHECK-NEXT:  ldr     r5, [r3], #4
+# CHECK-NEXT:  str     r3, [sp]
+# CHECK-NEXT:  ldr.n   r3, #52
+# CHECK-NEXT:  add     r3, pc
+# CHECK-NEXT:  ldr     r0, [r3]
+# CHECK-NEXT:  ldr     r4, [r0]
+# CHECK-NEXT:  ldr.n   r0, #48
+# CHECK-NEXT:  add     r0, pc
+# CHECK-NEXT:  ldr     r0, [r0]
+# CHECK-NEXT:  ldr     r0, [r0]
+# CHECK-NEXT:  blx     #191548
+# CHECK-NEXT:  cbnz    r0, #6
+# CHECK-NEXT:  ldr.n   r1, #40
+# CHECK-NEXT:  add     r1, pc
+# CHECK-NEXT:  ldr     r1, [r1]
+# CHECK-NEXT:  b       #0
+# CHECK-NEXT:  mov     r1, r0
+# CHECK-NEXT:  mov     r0, r4
+# CHECK-NEXT:  mov     r2, r5
+# CHECK-NEXT:  ldr     r3, [sp]
+# CHECK-NEXT:  bl      #-8390
+# CHECK-NEXT:  sub.w   sp, r7, #8
+# CHECK-NEXT:  pop.w   {r4, r5, r7, lr}
+# CHECK-NEXT:  add     sp, #16
+# CHECK-NEXT:  bx      lr
+# CHECK-NEXT:  nop
+# CHECK-NEXT:  movs    r3, #142
+# CHECK-NEXT:  movs    r5, r0
+# CHECK-NEXT:  adds    r1, #122
+# CHECK-NEXT:  movs    r5, r0
+# CHECK-NEXT:  adds    r1, #104
+# CHECK-NEXT:  movs    r5, r0
+0x0f   0xb4
+0xb0   0xb5
+0x02   0xaf
+0x81   0xb0
+0x05   0xab
+0x53   0xf8    0x04    0x5b
+0x00   0x93
+0x0d   0x4b
+0x7b   0x44
+0x18   0x68
+0x04   0x68
+0x0c   0x48
+0x78   0x44
+0x00   0x68
+0x00   0x68
+0x2e   0xf0    0x1e    0xee
+0x18   0xb9
+0x0a   0x49
+0x79   0x44
+0x09   0x68
+0x00   0xe0
+0x01   0x46
+0x20   0x46
+0x2a   0x46
+0x00   0x9b
+0xfd   0xf7    0x9d    0xff
+0xa7   0xf1    0x08    0x0d
+0xbd   0xe8    0xb0    0x40
+0x04   0xb0
+0x70   0x47
+0x00   0xbf
+0x8e   0x23
+0x05   0x00
+0x7a   0x31
+0x05   0x00
+0x68   0x31
+0x05   0x00