Update copyright years
[platform/upstream/binutils.git] / gas / testsuite / gas / m68k / operands.s
1 # Test handling of MIT and Motorola syntax operands
2 # If you change this file, see also op68000.d.
3         .text
4 foo:    
5         | Data register direct
6         tstl    %d0
7
8         | Address register direct
9         tstl    %a0
10
11         | Address register indirect
12         tstl    %a0@
13         tstl    (%a0)
14
15         | Address register indirect with postincrement
16         tstl    %a0@+
17         tstl    (%a0)+
18
19         | Address register indirect with predecrement
20         tstl    %a0@-
21         tstl    -(%a0)
22
23         | Address register indirect with displacement
24         tstl    %a0@(8)
25         tstl    (8,%a0)
26         tstl    8(%a0)
27
28         | Address register indirect with index (8-bit displacement)
29         tstl    %a0@(8,%d0)
30         tstl    %a0@(8,%d0:w)
31         tstl    %a0@(8,%d0:w:1)
32         tstl    %a0@(8,%d0:w:2)
33         tstl    %a0@(8,%d0:w:4)
34         tstl    %a0@(8,%d0:w:8)
35         tstl    %a0@(8,%d0:l)
36         tstl    %a0@(8,%d0:l:1)
37         tstl    %a0@(8,%d0:l:2)
38         tstl    %a0@(8,%d0:l:4)
39         tstl    %a0@(8,%d0:l:8)
40         tstl    %a0@(%d0:w:2)
41         tstl    (8,%a0,%d0)
42         tstl    (8,%a0,%d0*1)
43         tstl    (8,%a0,%d0*2)
44         tstl    (8,%a0,%d0*4)
45         tstl    (8,%a0,%d0*8)
46         tstl    (8,%a0,%d0.w)
47         tstl    (8,%a0,%d0.w*1)
48         tstl    (8,%a0,%d0.w*2)
49         tstl    (8,%a0,%d0.w*4)
50         tstl    (8,%a0,%d0.w*8)
51         tstl    (8,%a0,%d0.l)
52         tstl    (8,%a0,%d0.l*1)
53         tstl    (8,%a0,%d0.l*2)
54         tstl    (8,%a0,%d0.l*4)
55         tstl    (8,%a0,%d0.l*8)
56         tstl    (8,%d0,%a0)
57         tstl    (8,%a1.w*2,%a0)
58         tstl    (8,%a1,%a0)
59         tstl    8(%a0,%d0.w*2)
60         tstl    8(%d0.w*2,%a0)
61         tstl    8(%a1.w*2,%a0)
62         tstl    (%a0,%d0.w*2)
63         tstl    (%d0.w*2,%a0)
64
65         | Address register indirect with index (base displacement)
66         tstl    %a0@(1000,%d0:w:2)
67         tstl    @(1000,%d0:w:2)
68         tstl    @(%d0:w:2)
69         tstl    @(1000)
70         tstl    %a0@(100000)
71         tstl    (1000,%a0,%d0.w*2)
72         tstl    (1000,%d0,%a0)
73         tstl    (1000,%a1.w*2,%a0)
74         tstl    1000(%a0,%d0.w*2)
75         tstl    1000(%d0,%a0)
76         tstl    (1000,%d0.w*2)
77         tstl    1000(%d0.w*2)
78         tstl    (%d0.w*2)
79         tstl    (100000,%a0)
80         tstl    100000(%a0)
81         tstl    %za1@(1000,%d0:w:2)
82         tstl    %za1@(100000)
83         tstl    (1000,%za1,%d0.w*2)
84         tstl    (1000,%d0,%za1)
85         tstl    (1000,%a1.w*2,%za1)
86         tstl    1000(%za1,%d0.w*2)
87         tstl    1000(%d0,%za1)
88         tstl    (100000,%za1)
89         tstl    100000(%za1)
90         tstl    %a0@(1000,%zd1:w:2)
91         tstl    @(1000,%zd1:w:2)
92         tstl    @(%zd1:w:2)
93         tstl    (1000,%a0,%zd1.w*2)
94         tstl    (1000,%zd1,%a0)
95         tstl    (1000,%za1.w*2,%a0)
96         tstl    1000(%a0,%zd1.w*2)
97         tstl    1000(%zd1,%a0)
98         tstl    (1000,%zd1.w*2)
99         tstl    1000(%zd1.w*2)
100         tstl    (%zd1.w*2)
101
102         | Memory indirect postindexed
103         tstl    %a0@(1000)@(2000,%d0:w:2)
104         tstl    %a0@(1000)@(%d0:w:2)
105         tstl    %a0@(1000)@(2000)
106         tstl    @(1000)@(2000,%d0:w:2)
107         tstl    @(1000)@(%d0:w:2)
108         tstl    @(1000)@(2000)
109         tstl    %a0@(0)@(2000,%d0:w:2)
110         tstl    %a0@(0)@(%d0:w:2)
111         tstl    %a0@(0)@(2000)
112         tstl    @(0)@(2000,%d0:w:2)
113         tstl    @(0)@(%d0:w:2)
114         tstl    @(0)@(2000)
115         tstl    ([1000,%a0],%d0:w:2,2000)
116         tstl    ([1000,%a0],%d0:w:2)
117         tstl    ([1000,%a0],2000)
118         tstl    ([1000],%d0:w:2,2000)
119         tstl    ([1000],%d0:w:2)
120         tstl    ([1000],2000)
121         tstl    ([%a0],%d0:w:2,2000)
122         tstl    ([%a0],%d0:w:2)
123         tstl    ([%a0],2000)
124         tstl    ([0],%d0:w:2,2000)
125         tstl    ([0],%d0:w:2)
126         tstl    ([0],2000)
127
128         | Memory indirect preindexed
129         tstl    %a0@(1000,%d0:w:2)@(2000)
130         tstl    %a0@(1000,%d0:w:2)@(0)
131         tstl    @(1000,%d0:w:2)@(2000)
132         tstl    @(1000,%d0:w:2)@(0)
133         tstl    %a0@(%d0:w:2)@(2000)
134         tstl    %a0@(%d0:w:2)@(0)
135         tstl    @(%d0:w:2)@(2000)
136         tstl    @(%d0:w:2)@(0)
137         tstl    ([1000,%a0,%d0:w:2],2000)
138         tstl    ([1000,%d0:w:2,%a0],2000)
139         tstl    ([1000,%d0,%a0],2000)
140         tstl    ([1000,%a1,%a0],2000)
141         tstl    ([1000,%a1:w:2,%a0],2000)
142         tstl    ([1000,%a0,%d0:w:2])
143         tstl    ([1000,%d0,%a0])
144         tstl    ([1000,%d0:w:2],2000)
145         tstl    ([1000,%d0:w:2])
146         tstl    ([%a0,%d0:w:2],2000)
147         tstl    ([%d0,%a0],2000)
148         tstl    ([%a0,%d0:w:2])
149         tstl    ([%d0,%a0])
150         tstl    ([%d0:w:2],2000)
151         tstl    ([%d0:w:2])
152
153         | Program counter indirect with displacement
154         pea     %pc@(8)
155         pea     (8,%pc)
156         pea     8(%pc)
157         pea     foo
158
159         | Program counter indirect with index (8-bit displacement)
160         pea     %pc@(8,%d0:w:2)
161         pea     %pc@(%d0:w:2)
162         pea     (8,%pc,%d0.w*2)
163         pea     (8,%d0,%pc)
164         pea     (8,%a0,%pc)
165         pea     8(%pc,%d0.w*2)
166         pea     8(%d0,%pc)
167         pea     8(%a0,%pc)
168         pea     (%pc,%d0.w*2)
169         pea     (%d0,%pc)
170         pea     (%a0,%pc)
171
172         | Program counter indirect with index (base displacement)
173         pea     %pc@(1000,%d0:w:2)
174         pea     %pc@(100000)
175         pea     (1000,%pc,%d0.w*2)
176         pea     (1000,%d0,%pc)
177         pea     (1000,%a1.w*2,%pc)
178         pea     (1000,%a1,%pc)
179         pea     1000(%pc,%d0.w*2)
180         pea     1000(%d0,%pc)
181         pea     1000(%a1,%pc)
182         pea     (100000,%pc)
183         pea     100000(%pc)
184         pea     %zpc@(1000,%d0:w:2)
185         pea     %zpc@(100000)
186         pea     (1000,%zpc,%d0.w*2)
187         pea     (1000,%d0,%zpc)
188         pea     (1000,%a1.w*2,%zpc)
189         pea     (1000,%a1,%zpc)
190         pea     1000(%zpc,%d0.w*2)
191         pea     1000(%d0,%zpc)
192         pea     1000(%a1,%zpc)
193         pea     (100000,%zpc)
194         pea     100000(%zpc)
195
196         | Program counter memory indirect postindexed
197         pea     %pc@(1000)@(2000,%d0:w:2)
198         pea     %pc@(1000)@(%d0:w:2)
199         pea     %pc@(1000)@(2000)
200         pea     %pc@(0)@(2000,%d0:w:2)
201         pea     %pc@(0)@(%d0:w:2)
202         pea     %pc@(0)@(2000)
203         pea     ([1000,%pc],%d0:w:2,2000)
204         pea     ([1000,%pc],%d0:w:2)
205         pea     ([1000,%pc],2000)
206         pea     ([%pc],%d0:w:2,2000)
207         pea     ([%pc],%d0:w:2)
208         pea     ([%pc],2000)
209         pea     %zpc@(1000)@(2000,%d0:w:2)
210         pea     %zpc@(1000)@(%d0:w:2)
211         pea     %zpc@(1000)@(2000)
212         pea     %zpc@(0)@(2000,%d0:w:2)
213         pea     %zpc@(0)@(%d0:w:2)
214         pea     %zpc@(0)@(2000)
215         pea     ([1000,%zpc],%d0:w:2,2000)
216         pea     ([1000,%zpc],%d0:w:2)
217         pea     ([1000,%zpc],2000)
218         pea     ([%zpc],%d0:w:2,2000)
219         pea     ([%zpc],%d0:w:2)
220         pea     ([%zpc],2000)
221
222         | Program counter memory indirect preindexed
223         pea     %pc@(1000,%d0:w:2)@(2000)
224         pea     %pc@(1000,%d0:w:2)@(0)
225         pea     %pc@(%d0:w:2)@(2000)
226         pea     %pc@(%d0:w:2)@(0)
227         pea     ([1000,%pc,%d0:w:2],2000)
228         pea     ([1000,%d0:w:2,%pc],2000)
229         pea     ([1000,%d0,%pc],2000)
230         pea     ([1000,%a1,%pc],2000)
231         pea     ([1000,%pc,%a1],2000)
232         pea     ([1000,%a1:w:2,%pc],2000)
233         pea     ([1000,%pc,%d0:w:2])
234         pea     ([1000,%d0,%pc])
235         pea     ([1000,%a1,%pc])
236         pea     ([%pc,%d0:w:2],2000)
237         pea     ([%pc,%a0],2000)
238         pea     ([%pc,%d0:w:2])
239         pea     ([%d0,%pc])
240         pea     %zpc@(1000,%d0:w:2)@(2000)
241         pea     %zpc@(1000,%d0:w:2)@(0)
242         pea     %zpc@(%d0:w:2)@(2000)
243         pea     %zpc@(%d0:w:2)@(0)
244         pea     ([1000,%zpc,%d0:w:2],2000)
245         pea     ([1000,%d0:w:2,%zpc],2000)
246         pea     ([1000,%d0,%zpc],2000)
247         pea     ([1000,%a1,%zpc],2000)
248         pea     ([1000,%zpc,%a1],2000)
249         pea     ([1000,%a1:w:2,%zpc],2000)
250         pea     ([1000,%zpc,%d0:w:2])
251         pea     ([1000,%d0,%zpc])
252         pea     ([1000,%a1,%zpc])
253         pea     ([%zpc,%d0:w:2],2000)
254         pea     ([%zpc,%a0],2000)
255         pea     ([%zpc,%d0:w:2])
256         pea     ([%d0,%zpc])
257
258         | Absolute short
259         tstl    4
260         tstl    4.w
261         tstl    (4).w
262
263         | Absolute long
264         tstl    100000
265         tstl    8.l
266         tstl    (8).l
267
268         | Immediate
269         addib   &1,%d0
270         addiw   &1,%d0
271         addil   &1,%d0
272         addqb   &1,%d0