This commit was generated by cvs2svn to track changes on a CVS vendor
[external/binutils.git] / gas / testsuite / gas / pdp11 / opcode.s
1 # Opcode test for PDP-11.
2 # Copyright 2002 Free Software Foundation, Inc.
3 #
4 # This file is free software; you can redistribute it and/or modify
5 # it under the terms of the GNU General Public License as published by
6 # the Free Software Foundation; either version 2 of the License, or
7 # (at your option) any later version.
8
9 # This program is distributed in the hope that it will be useful,
10 # but WITHOUT ANY WARRANTY; without even the implied warranty of
11 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
12 # GNU General Public License for more details.
13
14 # You should have received a copy of the GNU General Public License
15 # along with this program; if not, write to the Free Software
16 # Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
17
18 foo:    .word   0
19 bar:    .word   foo
20         
21 start:  halt
22 start2: wait
23         rti
24         bpt
25         iot
26         reset
27         rtt
28         mfpt
29         jmp     (r1)+
30         rts     r2
31         spl     3
32         nop
33         clc
34         clv
35         clz
36         cln
37         ccc
38         sec
39         sev
40         sez
41         sen
42         scc
43         swab    pc
44 1:      br      1b
45         bne     1b
46         beq     1b
47         bge     1b
48         blt     1b
49         bgt     1b
50         ble     1b
51         jsr     pc,@(sp)+
52         clr     -(sp)
53         com     r0
54         inc     r1
55         dec     r2
56         neg     r3
57         adc     r4
58         sbc     r5
59         tst     (sp)+
60         ror     r5
61         rol     r4
62         asr     @10(r4)
63         asl     4(r5)
64         mark    2
65         mfpi    sp
66         mtpi    @$402
67         sxt     r3
68         csm     2(r4)
69         tstset  (r3)
70         wrtlck  2(r4)
71         mov     r0,r1
72         cmp     (r0),(r4)
73         bit     (r0)+,-(r3)
74         bic     foo,@bar
75         bis     @(r1)+,@-(r5)
76         add     4(r3),@6(r3)
77         mul     $10,r2
78         div     1b,r4
79         ash     $3,r4
80         ashc    $7,r2
81         xor     r3,10(sp)
82         fadd    r2
83         fsub    r1
84         fmul    r4
85         fdiv    r0
86         l2dr    r1
87         movc
88         movrc
89         movtc
90         locc
91         skpc
92         scanc
93         spanc
94         cmpc
95         matc
96         addn
97         subn
98         cmpn
99         cvtnl
100         cvtpn
101         cvtnp
102         ashn
103         cvtln
104         l3dr    r5
105         addp
106         subp
107         cmpp
108         cvtpl
109         mulp
110         divp
111         ashp
112         cvtlp
113         movci
114         movrci
115         movtci
116         locci
117         skpci
118         scanci
119         spanci
120         cmpci
121         matci
122         addni
123         subni
124         cmpni
125         cvtnli
126         cvtpni
127         cvtnpi
128         ashni
129         cvtlni
130         addpi
131         subpi
132         cmppi
133         cvtpli
134         mulpi
135         divpi
136         ashpi
137         cvtlpi
138         med
139 2:      xfc     42
140         sob     r0,2b
141         bpl     2b
142         bmi     2b
143         bhi     2b
144         blos    2b
145         bvc     2b
146         bvs     2b
147         bcc     2b
148         bcs     2b
149         emt     69
150         sys     42
151         clrb    (r3)
152         comb    @-(r5)
153         incb    @(sp)+
154         decb    r3
155         negb    foo
156         adcb    @bar
157         sbcb    -(r2)
158         tstb    (r4)+
159         rorb    r1
160         rolb    r2
161         asrb    r3
162         aslb    r4
163         mtps    $0340
164         mfpd    sp
165         mtpd    (r0)
166         mfps    -(sp)
167         movb    $17,foo
168         cmpb    r1,(r2)
169         bitb    $0117,r5
170         bicb    $1,bar
171         bisb    $2,@bar
172         sub     r0,r5
173         cfcc
174         setf
175         seti
176         ldub
177         setd
178         setl
179         ldfps   $1
180         stfps   -(sp)
181         stst    (r2)
182         clrf    ac3
183         tstf    ac1
184         absf    ac2
185         negf    ac0
186         mulf    $0f0.25,ac1
187         modf    ac5,ac0
188         addf    foo,ac2
189         ldf     @bar,ac1
190         subf    ac4,ac3
191         cmpf    ac5,ac2
192         stf     ac1,-(sp)
193         divf    $0f20.0,ac0
194         stexp   ac2,r5
195         stcfi   ac3,r0
196         stcff   ac3,ac5
197         ldexp   r0,ac2
198         ldcif   r2,ac3
199         ldcff   ac5,ac2
200
201 # aliases for some of these opcodes:
202
203         l2d     r1
204 3:      l3d     r4
205         bhis    3b
206         blo     3b
207         trap    99
208         clrd    ac3
209         tstd    ac2
210         absd    ac1
211         negd    ac0
212         muld    ac5,ac2
213         modd    ac4,ac0
214         addd    ac4,ac3
215         ldd     bar,ac0
216         subd    foo,ac2
217         cmpd    ac5,ac2
218         std     ac1,(r2)
219         divd    (sp)+,ac3
220         stcfl   ac2,r5
221         stcdi   ac3,r0
222         stcdl   ac2,r4
223         stcfd   ac2,ac5
224         stcdf   ac1,ac4
225         ldcid   r0,ac1
226         ldclf   r4,ac2
227         ldcld   $01234567,ac3
228         ldcfd   ac5,ac2
229         ldcdf   ac4,ac0