e9f03d6b9a5685ab1b3c65baefb1d449cbfa6a28
[oota-llvm.git] / test / MC / ARM / thumb_rewrites.s
1 @ RUN: llvm-mc -triple thumbv6m -show-encoding < %s | FileCheck %s
2
3     adds    r1, r1, #3
4 @ CHECK: adds   r1, r1, #3          @ encoding: [0xc9,0x1c]
5
6     adds    r1, #3
7 @ CHECK: adds   r1, #3              @ encoding: [0x03,0x31]
8
9     adds    r0, r0, #8
10 @ CHECK: adds   r0, #8              @ encoding: [0x08,0x30]
11
12     adds    r0, r0, r0
13 @ CHECK: adds   r0, r0, r0          @ encoding: [0x00,0x18]
14
15     add     r0, r0, r8
16 @ CHECK: add    r0, r8              @ encoding: [0x40,0x44]
17
18     add     r1, r8, r1
19 @ CHECK: add    r1, r8              @ encoding: [0x41,0x44]
20
21     add     sp, sp, r0
22 @ CHECK: add    sp, r0              @ encoding: [0x85,0x44]
23
24     add     r4, sp, r4
25 @ CHECK: add    r4, sp, r4          @ encoding: [0x6c,0x44]
26
27     add     r4, r4, sp
28 @ CHECK: add    r4, sp              @ encoding: [0x6c,0x44]
29
30     add     sp, sp, #32
31 @ FIXME: ARMARM says 'add   sp, sp, #32'
32 @ CHECK: add    sp, #32             @ encoding: [0x08,0xb0]
33
34     add     r5, sp, #1016
35 @ CHECK: add    r5, sp, #1016       @ encoding: [0xfe,0xad]
36
37     add     r0, r0, r1
38 @ CHECK: add    r0, r1              @ encoding: [0x08,0x44]
39
40     add     r2, r2, r3
41 @ CHECK: add    r2, r3              @ encoding: [0x1a,0x44]
42
43     subs    r0, r0, r0
44 @ CHECK: subs   r0, r0, r0          @ encoding: [0x00,0x1a]
45
46     subs    r3, r3, #5
47 @ CHECK: subs   r3, r3, #5          @ encoding: [0x5b,0x1f]
48
49     subs    r3, #5
50 @ CHECK: subs   r3, #5              @ encoding: [0x05,0x3b]
51
52     subs    r2, r2, #8
53 @ CHECK: subs   r2, #8              @ encoding: [0x08,0x3a]
54
55     sub     sp, sp, #16
56 @ CHECK: sub    sp, #16             @ encoding: [0x84,0xb0]
57
58     ands    r0, r1, r0
59 @ CHECK: ands   r0, r1              @ encoding: [0x08,0x40]
60
61     ands    r0, r0, r1
62 @ CHECK: ands   r0, r1              @ encoding: [0x08,0x40]
63
64     eors    r0, r0, r1
65 @ CHECK: eors   r0, r1              @ encoding: [0x48,0x40]
66
67     eors    r0, r1, r0
68 @ CHECK: eors   r0, r1              @ encoding: [0x48,0x40]
69
70     lsls    r0, r0, r1
71 @ CHECK: lsls   r0, r1              @ encoding: [0x88,0x40]
72
73     lsrs    r0, r0, r1
74 @ CHECK: lsrs   r0, r1              @ encoding: [0xc8,0x40]
75
76     asrs    r0, r0, r1
77 @ CHECK: asrs   r0, r1              @ encoding: [0x08,0x41]
78
79     adcs    r0, r0, r1
80 @ CHECK: adcs   r0, r1              @ encoding: [0x48,0x41]
81
82     adcs    r0, r1, r0
83 @ CHECK: adcs   r0, r1              @ encoding: [0x48,0x41]
84
85     sbcs    r0, r0, r1
86 @ CHECK: sbcs   r0, r1              @ encoding: [0x88,0x41]
87
88     rors    r0, r0, r1
89 @ CHECK: rors   r0, r1              @ encoding: [0xc8,0x41]
90
91     orrs    r0, r0, r1
92 @ CHECK: orrs   r0, r1              @ encoding: [0x08,0x43]
93
94     orrs    r0, r1, r0
95 @ CHECK: orrs   r0, r1              @ encoding: [0x08,0x43]
96
97     bics    r0, r0, r1
98 @ CHECK: bics   r0, r1              @ encoding: [0x88,0x43]