Fix encoding of Thumb BLX register instructions. Patch by Koan-Sin Tan.
[oota-llvm.git] / test / MC / ARM / thumb.s
1 @ RUN: llvm-mc -triple thumbv6-apple-darwin -show-encoding < %s | FileCheck %s
2         .code 16
3
4 @ CHECK: cmp    r1, r2               @ encoding: [0x91,0x42]
5         cmp     r1, r2
6
7 @ CHECK: pop    {r1, r2, r4}         @ encoding: [0x16,0xbc]
8         pop     {r1, r2, r4}
9
10 @ CHECK: trap                        @ encoding: [0xfe,0xde]
11         trap
12
13 @ CHECK: blx    r9                   @ encoding: [0xc8,0x47]
14         blx     r9
15 @ CHECK: blx    r10                     @ encoding: [0xd0,0x47]
16   blx r10
17
18 @ CHECK: rev    r2, r3               @ encoding: [0x1a,0xba]
19 @ CHECK: rev16  r3, r4               @ encoding: [0x63,0xba]
20 @ CHECK: revsh  r5, r6               @ encoding: [0xf5,0xba]
21         rev     r2, r3
22         rev16   r3, r4
23         revsh   r5, r6
24
25 @ CHECK: sxtb   r2, r3               @ encoding: [0x5a,0xb2]
26 @ CHECK: sxth   r2, r3               @ encoding: [0x1a,0xb2]
27         sxtb    r2, r3
28         sxth    r2, r3
29
30 @ CHECK: tst    r4, r5               @ encoding: [0x2c,0x42]
31         tst     r4, r5
32
33 @ CHECK: uxtb   r3, r6               @ encoding: [0xf3,0xb2]
34 @ CHECK: uxth   r3, r6               @ encoding: [0xb3,0xb2]
35         uxtb    r3, r6
36         uxth    r3, r6
37
38 @ CHECK: ldr    r3, [r1, r2]         @ encoding: [0x8b,0x58]
39         ldr     r3, [r1, r2]
40
41 @ CHECK: bkpt  #2                  @ encoding: [0x02,0xbe]
42          bkpt  #2
43
44 @ CHECK: mcr  p7, #1, r5, c1, c1, #4 @ encoding: [0x21,0xee,0x91,0x57]
45         mcr  p7, #1, r5, c1, c1, #4
46
47 @ CHECK: mrc  p14, #0, r1, c1, c2, #4 @ encoding: [0x11,0xee,0x92,0x1e]
48         mrc  p14, #0, r1, c1, c2, #4
49
50 @ CHECK: mcrr  p7, #1, r5, r4, c1 @ encoding: [0x44,0xec,0x11,0x57]
51         mcrr  p7, #1, r5, r4, c1
52
53 @ CHECK: mrrc  p7, #1, r5, r4, c1 @ encoding: [0x54,0xec,0x11,0x57]
54         mrrc  p7, #1, r5, r4, c1
55
56 @ CHECK: cdp  p7, #1, c1, c1, c1, #4 @ encoding: [0x11,0xee,0x81,0x17]
57         cdp  p7, #1, c1, c1, c1, #4
58
59 @ CHECK: nop @ encoding: [0x00,0xbf]
60         nop
61
62 @ CHECK: yield @ encoding: [0x10,0xbf]
63         yield
64
65 @ CHECK: wfe @ encoding: [0x20,0xbf]
66         wfe
67
68 @ CHECK: wfi @ encoding: [0x30,0xbf]
69         wfi
70
71 @ CHECK: cpsie aif @ encoding: [0x67,0xb6]
72         cpsie aif