Commit | Line | Data |
---|---|---|
5a01bb1d | 1 | .syntax unified |
5a01bb1d MGD |
2 | |
3 | .thumb | |
4 | @ Wide instruction in IT block is deprecated. | |
5 | it eq | |
6 | ldrdeq r0, [r1] | |
7 | ||
8 | @ This IT block is not deprecated. | |
9 | it eq | |
10 | moveq r2, r3 | |
11 | ||
12 | @ IT block of more than one instruction is deprecated. | |
13 | itt eq | |
14 | moveq r0, r1 | |
15 | moveq r2, r3 | |
16 | ||
17 | @ Even for auto IT blocks | |
18 | moveq r2, r3 | |
19 | movne r2, r3 | |
20 | ||
21 | adds r0, r1 | |
22 | ||
23 | @ This automatic IT block is valid | |
24 | moveq r2,r3 | |
25 | ||
26 | add r0, r1, r2 | |
27 | ||
28 | @ This one is too wide. | |
29 | ldrdeq r0, [r1] | |
30 | ||
31 | add r0, r1, r2 | |
32 | ||
33 | @ Test automatic IT block generation at end of a file. | |
34 | movne r0, r1 | |
35 | moveq r1, r0 | |
36 | ||
37 | @ Test the various classes of 16-bit instructions that are deprecated. | |
38 | it eq | |
39 | svceq 0 | |
40 | ||
41 | it eq | |
42 | uxtheq r0, r1 | |
43 | ||
44 | it eq | |
45 | addeq r0, pc, #0 | |
46 | ||
47 | it eq | |
48 | ldreq r0, [pc, #4] | |
49 | ||
50 | it eq | |
51 | bxeq pc | |
52 | ||
53 | it eq | |
54 | addeq r0, pc, pc | |
55 | ||
56 | it eq | |
57 | addeq pc, r0, r0 | |
c8de034b JW |
58 | |
59 | it eq | |
60 | addeq sp, sp, #12 | |
61 | ||
62 | @ Misaligned immediate. | |
63 | it eq | |
64 | addeq sp, sp, #3 | |
65 | ||
66 | it eq | |
67 | subeq sp, sp, #12 | |
68 | ||
69 | @ Misaligned immediate. | |
70 | it eq | |
71 | subeq sp, sp, #3 |