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