Commit | Line | Data |
---|---|---|
1be5fd2e | 1 | .syntax unified |
5a01bb1d | 2 | .arch armv7-a |
1be5fd2e NC |
3 | .thumb |
4 | .global foo | |
5 | foo: | |
6 | @ldr-immediate | |
7 | ||
8 | @!wback && (n == t) | |
9 | ldr r1, [r1, #5] | |
10 | ||
11 | @wback && !(n == t) | |
12 | ldr r1, [r2, #5]! | |
13 | ||
14 | @!(rt == r15) && rn == r15 | |
15 | @ && bits<0..1> (immediate) != 00 | |
16 | ldr r1, [r15, #5] | |
17 | ||
18 | @rt == r15 && !(rn == r15) | |
19 | @ && bits<0..1> (immediate) != 00 | |
20 | ldr r15, [r1, #5] | |
21 | ||
22 | @rt == r15 && rn == r15 | |
23 | @ && bits<0..1> (immediate) == 00 | |
24 | ldr r15, [r15, #4] | |
25 | ||
26 | @inITBlock && !(rt == 15) && !lastInITBlock | |
27 | ittt ge | |
28 | ldrge r1, [r15, #4] | |
29 | nopge | |
30 | nopge | |
31 | ||
32 | @inITBlock && rt == 15 && lastInITBlock | |
33 | it ge | |
34 | ldrge r15, [r15, #4] | |
35 | ||
36 | @ldr-literal | |
37 | ||
38 | @inITBlock && !(rt == 15) && !lastInITBlock | |
39 | ittt ge | |
40 | ldrge r1, .-0xab4 | |
41 | nopge | |
42 | nopge | |
43 | ||
44 | @inITBlock && (rt == 15) && lastInITBlock | |
45 | it ge | |
46 | ldrge r15, .-0xab4 | |
47 | ||
48 | @!(rt == r15) && bits<0..1> (immediate) != 00 | |
49 | ldr r1, .-0xab7 | |
50 | ||
51 | @rt == r15 && bits<0..1> (immediate) == 00 | |
52 | ldr r15, .-0xab4 | |
53 | ||
54 | @ldr-register | |
55 | ||
56 | @inITBlock && !(rt == 15) && !lastInITBlock | |
57 | ittt ge | |
58 | ldrge r1, [r2, r1] | |
59 | nopge | |
60 | nopge | |
61 | ||
62 | @inITBlock && (rt == 15) && lastInITBlock | |
63 | it ge | |
64 | ldrge r15, [r2, r1] | |
65 | ||
66 | @!(rm == 13 || rm == 15) | |
67 | ldr r1, [r2, r3] | |
68 | ||
69 | @str-immediate | |
70 | ||
71 | @!(rt == 15 || rn == 15) | |
72 | str r1, [r2, #10] | |
73 | ||
74 | @!wback && (n == t) | |
75 | str r1, [r1, #10] | |
76 | ||
77 | @wback && !(n == t) | |
78 | str r1, [r2, #10]! | |
79 | ||
80 | @str-register | |
81 | ||
82 | @!(rt == 15 || rm == 13 || rm == 15) | |
83 | str r1, [r2, r3] | |
84 |