* gas/pdp11/pdp11.exp: New file.
* gas/pdp11/opcode.s: Ditto. * gas/pdp11/opcode.d: Ditto.
This commit is contained in:
parent
cd3cde8631
commit
0d4dcc4ad9
@ -1,3 +1,9 @@
|
||||
2002-03-05 Paul Koning <pkoning@equallogic.com>
|
||||
|
||||
* gas/pdp11/pdp11.exp: New file.
|
||||
* gas/pdp11/opcode.s: Ditto.
|
||||
* gas/pdp11/opcode.d: Ditto.
|
||||
|
||||
2002-02-22 Bo Thorsen <bo@suse.de>
|
||||
|
||||
* i386.exp: Add x86-64-opcode (checks valid opcodes) and x86-64-inval
|
||||
|
223
gas/testsuite/gas/pdp11/opcode.d
Normal file
223
gas/testsuite/gas/pdp11/opcode.d
Normal file
@ -0,0 +1,223 @@
|
||||
#name: pdp11 opcode
|
||||
#objdump: -drw
|
||||
|
||||
dump.o: +file format .*
|
||||
|
||||
Disassembly of section .text:
|
||||
|
||||
00000000 <foo>:
|
||||
...
|
||||
|
||||
00000002 <bar>:
|
||||
...
|
||||
2: 16 \*ABS\*
|
||||
|
||||
00000004 <start>:
|
||||
...
|
||||
|
||||
00000006 <start2>:
|
||||
6: 0001 [ ]*wait
|
||||
8: 0002 [ ]*rti
|
||||
a: 0003 [ ]*bpt
|
||||
c: 0004 [ ]*iot
|
||||
e: 0005 [ ]*reset
|
||||
10: 0006 [ ]*rtt
|
||||
12: 0007 [ ]*mfpt
|
||||
14: 0051 [ ]*jmp \(r1\)\+
|
||||
16: 0082 [ ]*rts r2
|
||||
18: 009b [ ]*spl 3
|
||||
1a: 00a0 [ ]*nop
|
||||
1c: 00a1 [ ]*clc
|
||||
1e: 00a2 [ ]*clv
|
||||
20: 00a4 [ ]*clz
|
||||
22: 00a8 [ ]*cln
|
||||
24: 00af [ ]*ccc
|
||||
26: 00a1 [ ]*clc
|
||||
28: 00b2 [ ]*sev
|
||||
2a: 00b4 [ ]*sez
|
||||
2c: 00b8 [ ]*sen
|
||||
2e: 00bf [ ]*scc
|
||||
30: 00c7 [ ]*swab pc
|
||||
32: 01ff [ ]*br 32 <start2\+0x2c>
|
||||
34: 02fe [ ]*bne 32 <start2\+0x2c>
|
||||
36: 03fd [ ]*beq 32 <start2\+0x2c>
|
||||
38: 04fc [ ]*bge 32 <start2\+0x2c>
|
||||
3a: 05fb [ ]*blt 32 <start2\+0x2c>
|
||||
3c: 06fa [ ]*bgt 32 <start2\+0x2c>
|
||||
3e: 07f9 [ ]*ble 32 <start2\+0x2c>
|
||||
40: 09de [ ]*jsr pc, \*\(sp\)\+
|
||||
42: 0a26 [ ]*clr -\(sp\)
|
||||
44: 0a40 [ ]*com r0
|
||||
46: 0a81 [ ]*inc r1
|
||||
48: 0ac2 [ ]*dec r2
|
||||
4a: 0b03 [ ]*neg r3
|
||||
4c: 0b44 [ ]*adc r4
|
||||
4e: 0b85 [ ]*sbc r5
|
||||
50: 0bd6 [ ]*tst \(sp\)\+
|
||||
52: 0c05 [ ]*ror r5
|
||||
54: 0c44 [ ]*rol r4
|
||||
56: 0cbc 000a [ ]*asr \*12\(r4\)
|
||||
5a: 0cf5 0004 [ ]*asl 4\(r5\)
|
||||
5e: 0d02 [ ]*mark 2
|
||||
60: 0d46 [ ]*mfpi sp
|
||||
62: 0d9f 0192 [ ]*mtpi \*\$622
|
||||
66: 0dc3 [ ]*sxt r3
|
||||
68: 0e34 0002 [ ]*csm 2\(r4\)
|
||||
6c: 0e4b [ ]*tstset \(r3\)
|
||||
6e: 0eb4 0002 [ ]*wrtlck 2\(r4\)
|
||||
72: 1001 [ ]*mov r0, r1
|
||||
74: 220c [ ]*cmp \(r0\), \(r4\)
|
||||
76: 3423 [ ]*bit \(r0\)\+, -\(r3\)
|
||||
78: 4dff ff84 ff84 [ ]*bic \$0 <foo>, \*\$2 <bar>
|
||||
7e: 566d [ ]*bis \*\(r1\)\+, \*-\(r5\)
|
||||
80: 6cfb 0004 0006 [ ]*add 4\(r3\), \*6\(r3\)
|
||||
86: 7097 000a [ ]*mul \$12, r2
|
||||
8a: 7337 ffa4 [ ]*div \$32 <start2\+0x2c>, r4
|
||||
8e: 7517 0003 [ ]*ash \$3, r4
|
||||
92: 7697 0007 [ ]*ashc \$7, r2
|
||||
96: 78f6 000a [ ]*xor r3, 12\(sp\)
|
||||
9a: 7a02 [ ]*fadd r2
|
||||
9c: 7a09 [ ]*fsub r1
|
||||
9e: 7a14 [ ]*fmul r4
|
||||
a0: 7a18 [ ]*fdiv r0
|
||||
a2: 7c11 [ ]*l2dr r1
|
||||
a4: 7c18 [ ]*movc
|
||||
a6: 7c19 [ ]*movrc
|
||||
a8: 7c1a [ ]*movtc
|
||||
aa: 7c20 [ ]*locc
|
||||
ac: 7c21 [ ]*skpc
|
||||
ae: 7c22 [ ]*scanc
|
||||
b0: 7c23 [ ]*spanc
|
||||
b2: 7c24 [ ]*cmpc
|
||||
b4: 7c25 [ ]*matc
|
||||
b6: 7c28 [ ]*addn
|
||||
b8: 7c29 [ ]*subn
|
||||
ba: 7c2a [ ]*cmpn
|
||||
bc: 7c2b [ ]*cvtnl
|
||||
be: 7c2c [ ]*cvtpn
|
||||
c0: 7c2d [ ]*cvtnp
|
||||
c2: 7c2e [ ]*ashn
|
||||
c4: 7c2f [ ]*cvtln
|
||||
c6: 7c35 [ ]*l3dr r5
|
||||
c8: 7c38 [ ]*addp
|
||||
ca: 7c39 [ ]*subp
|
||||
cc: 7c3a [ ]*cmpp
|
||||
ce: 7c3b [ ]*cvtpl
|
||||
d0: 7c3c [ ]*mulp
|
||||
d2: 7c3d [ ]*divp
|
||||
d4: 7c3e [ ]*ashp
|
||||
d6: 7c3f [ ]*cvtlp
|
||||
d8: 7c58 [ ]*movci
|
||||
da: 7c59 [ ]*movrci
|
||||
dc: 7c5a [ ]*movtci
|
||||
de: 7c60 [ ]*locci
|
||||
e0: 7c61 [ ]*skpci
|
||||
e2: 7c62 [ ]*scanci
|
||||
e4: 7c63 [ ]*spanci
|
||||
e6: 7c64 [ ]*cmpci
|
||||
e8: 7c65 [ ]*matci
|
||||
ea: 7c68 [ ]*addni
|
||||
ec: 7c69 [ ]*subni
|
||||
ee: 7c6a [ ]*cmpni
|
||||
f0: 7c6b [ ]*cvtnli
|
||||
f2: 7c6c [ ]*cvtpni
|
||||
f4: 7c6d [ ]*cvtnpi
|
||||
f6: 7c6e [ ]*ashni
|
||||
f8: 7c6f [ ]*cvtlni
|
||||
fa: 7c78 [ ]*addpi
|
||||
fc: 7c79 [ ]*subpi
|
||||
fe: 7c7a [ ]*cmppi
|
||||
100: 7c7b [ ]*cvtpli
|
||||
102: 7c7c [ ]*mulpi
|
||||
104: 7c7d [ ]*divpi
|
||||
106: 7c7e [ ]*ashpi
|
||||
108: 7c7f [ ]*cvtlpi
|
||||
10a: 7d80 [ ]*med
|
||||
10c: 7dea [ ]*xfc 52
|
||||
10e: 7e3e [ ]*sob r0, 10c <start2\+0x106>
|
||||
110: 80fd [ ]*bpl 10c <start2\+0x106>
|
||||
112: 81fc [ ]*bmi 10c <start2\+0x106>
|
||||
114: 82fb [ ]*bhi 10c <start2\+0x106>
|
||||
116: 83fa [ ]*blos 10c <start2\+0x106>
|
||||
118: 84f9 [ ]*bvc 10c <start2\+0x106>
|
||||
11a: 85f8 [ ]*bvs 10c <start2\+0x106>
|
||||
11c: 86f7 [ ]*bcc 10c <start2\+0x106>
|
||||
11e: 87f6 [ ]*bcs 10c <start2\+0x106>
|
||||
120: 8845 [ ]*emt 105
|
||||
122: 892a [ ]*sys 52
|
||||
124: 8a0b [ ]*clrb \(r3\)
|
||||
126: 8a6d [ ]*comb \*-\(r5\)
|
||||
128: 8a9e [ ]*incb \*\(sp\)\+
|
||||
12a: 8ac3 [ ]*decb r3
|
||||
12c: 8b37 fed0 [ ]*negb \$0 <foo>
|
||||
130: 8b7f fece [ ]*adcb \*\$2 <bar>
|
||||
134: 8ba2 [ ]*sbcb -\(r2\)
|
||||
136: 8bd4 [ ]*tstb \(r4\)\+
|
||||
138: 8c01 [ ]*rorb r1
|
||||
13a: 8c42 [ ]*rolb r2
|
||||
13c: 8c83 [ ]*asrb r3
|
||||
13e: 8cc4 [ ]*aslb r4
|
||||
140: 8d17 00e0 [ ]*mtps \$340
|
||||
144: 8d46 [ ]*mfpd sp
|
||||
146: 8d88 [ ]*mtpd \(r0\)
|
||||
148: 8de6 [ ]*mfps -\(sp\)
|
||||
14a: 95f7 0011 feb0 [ ]*movb \$21, \$0 <foo>
|
||||
150: a04a [ ]*cmpb r1, \(r2\)
|
||||
152: b5c5 004f [ ]*bitb \$117, r5
|
||||
156: c5f7 0001 fea6 [ ]*bicb \$1, \$2 <bar>
|
||||
15c: d5ff 0002 fea0 [ ]*bisb \$2, \*\$2 <bar>
|
||||
162: e005 [ ]*sub r0, r5
|
||||
164: f000 [ ]*cfcc
|
||||
166: f001 [ ]*setf
|
||||
168: f002 [ ]*seti
|
||||
16a: f003 [ ]*ldub
|
||||
16c: f009 [ ]*setd
|
||||
16e: f00a [ ]*setl
|
||||
170: f057 0001 [ ]*ldfps \$1
|
||||
174: f0a6 [ ]*stfps -\(sp\)
|
||||
176: f0ca [ ]*stst \(r2\)
|
||||
178: f103 [ ]*clrf fr3
|
||||
17a: f141 [ ]*tstf fr1
|
||||
17c: f182 [ ]*absf fr2
|
||||
17e: f1c0 [ ]*negf fr0
|
||||
180: f257 3f80 [ ]*mulf \$37600, fr1
|
||||
184: f305 [ ]*modf fr5, fr0
|
||||
186: f4b7 fe76 [ ]*addf \$0 <foo>, fr2
|
||||
18a: f57f fe74 [ ]*ldf \*\$2 <bar>, fr1
|
||||
18e: f6c4 [ ]*subf fr4, fr3
|
||||
190: f785 [ ]*cmpf fr5, fr2
|
||||
192: f866 [ ]*stf fr1, -\(sp\)
|
||||
194: f917 42a0 [ ]*divf \$41240, fr0
|
||||
198: fa85 [ ]*stexp fr2, r5
|
||||
19a: fbc0 [ ]*stcfi fr3, r0
|
||||
19c: fcc5 [ ]*stcff fr3, fr5
|
||||
19e: fd80 [ ]*ldexp r0, fr2
|
||||
1a0: fec2 [ ]*ldcif r2, fr3
|
||||
1a2: ff85 [ ]*ldcff fr5, fr2
|
||||
1a4: 7c11 [ ]*l2dr r1
|
||||
1a6: 7c34 [ ]*l3dr r4
|
||||
1a8: 86fe [ ]*bcc 1a6 <start2\+0x1a0>
|
||||
1aa: 87fd [ ]*bcs 1a6 <start2\+0x1a0>
|
||||
1ac: 8963 [ ]*sys 143
|
||||
1ae: f103 [ ]*clrf fr3
|
||||
1b0: f142 [ ]*tstf fr2
|
||||
1b2: f181 [ ]*absf fr1
|
||||
1b4: f1c0 [ ]*negf fr0
|
||||
1b6: f285 [ ]*mulf fr5, fr2
|
||||
1b8: f304 [ ]*modf fr4, fr0
|
||||
1ba: f4c4 [ ]*addf fr4, fr3
|
||||
1bc: f537 fe42 [ ]*ldf \$2 <bar>, fr0
|
||||
1c0: f6b7 fe3c [ ]*subf \$0 <foo>, fr2
|
||||
1c4: f785 [ ]*cmpf fr5, fr2
|
||||
1c6: f84a [ ]*stf fr1, \(r2\)
|
||||
1c8: f9d6 [ ]*divf \(sp\)\+, fr3
|
||||
1ca: fb85 [ ]*stcfi fr2, r5
|
||||
1cc: fbc0 [ ]*stcfi fr3, r0
|
||||
1ce: fb84 [ ]*stcfi fr2, r4
|
||||
1d0: fc85 [ ]*stcff fr2, fr5
|
||||
1d2: fc44 [ ]*stcff fr1, fr4
|
||||
1d4: fe40 [ ]*ldcif r0, fr1
|
||||
1d6: fe84 [ ]*ldcif r4, fr2
|
||||
1d8: fed7 3977 [ ]*ldcif \$34567, fr3
|
||||
1dc: ff85 [ ]*ldcff fr5, fr2
|
||||
1de: ff04 [ ]*ldcff fr4, fr0
|
229
gas/testsuite/gas/pdp11/opcode.s
Normal file
229
gas/testsuite/gas/pdp11/opcode.s
Normal file
@ -0,0 +1,229 @@
|
||||
# Opcode test for PDP-11.
|
||||
# Copyright 2002 Free Software Foundation, Inc.
|
||||
#
|
||||
# This file is free software; you can redistribute it and/or modify
|
||||
# it under the terms of the GNU General Public License as published by
|
||||
# the Free Software Foundation; either version 2 of the License, or
|
||||
# (at your option) any later version.
|
||||
#
|
||||
# This program is distributed in the hope that it will be useful,
|
||||
# but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
# GNU General Public License for more details.
|
||||
#
|
||||
# You should have received a copy of the GNU General Public License
|
||||
# along with this program; if not, write to the Free Software
|
||||
# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
|
||||
|
||||
foo: .word 0
|
||||
bar: .word foo
|
||||
|
||||
start: halt
|
||||
start2: wait
|
||||
rti
|
||||
bpt
|
||||
iot
|
||||
reset
|
||||
rtt
|
||||
mfpt
|
||||
jmp (r1)+
|
||||
rts r2
|
||||
spl 3
|
||||
nop
|
||||
clc
|
||||
clv
|
||||
clz
|
||||
cln
|
||||
ccc
|
||||
sec
|
||||
sev
|
||||
sez
|
||||
sen
|
||||
scc
|
||||
swab pc
|
||||
1: br 1b
|
||||
bne 1b
|
||||
beq 1b
|
||||
bge 1b
|
||||
blt 1b
|
||||
bgt 1b
|
||||
ble 1b
|
||||
jsr pc,@(sp)+
|
||||
clr -(sp)
|
||||
com r0
|
||||
inc r1
|
||||
dec r2
|
||||
neg r3
|
||||
adc r4
|
||||
sbc r5
|
||||
tst (sp)+
|
||||
ror r5
|
||||
rol r4
|
||||
asr @10(r4)
|
||||
asl 4(r5)
|
||||
mark 2
|
||||
mfpi sp
|
||||
mtpi @$402
|
||||
sxt r3
|
||||
csm 2(r4)
|
||||
tstset (r3)
|
||||
wrtlck 2(r4)
|
||||
mov r0,r1
|
||||
cmp (r0),(r4)
|
||||
bit (r0)+,-(r3)
|
||||
bic foo,@bar
|
||||
bis @(r1)+,@-(r5)
|
||||
add 4(r3),@6(r3)
|
||||
mul $10,r2
|
||||
div 1b,r4
|
||||
ash $3,r4
|
||||
ashc $7,r2
|
||||
xor r3,10(sp)
|
||||
fadd r2
|
||||
fsub r1
|
||||
fmul r4
|
||||
fdiv r0
|
||||
l2dr r1
|
||||
movc
|
||||
movrc
|
||||
movtc
|
||||
locc
|
||||
skpc
|
||||
scanc
|
||||
spanc
|
||||
cmpc
|
||||
matc
|
||||
addn
|
||||
subn
|
||||
cmpn
|
||||
cvtnl
|
||||
cvtpn
|
||||
cvtnp
|
||||
ashn
|
||||
cvtln
|
||||
l3dr r5
|
||||
addp
|
||||
subp
|
||||
cmpp
|
||||
cvtpl
|
||||
mulp
|
||||
divp
|
||||
ashp
|
||||
cvtlp
|
||||
movci
|
||||
movrci
|
||||
movtci
|
||||
locci
|
||||
skpci
|
||||
scanci
|
||||
spanci
|
||||
cmpci
|
||||
matci
|
||||
addni
|
||||
subni
|
||||
cmpni
|
||||
cvtnli
|
||||
cvtpni
|
||||
cvtnpi
|
||||
ashni
|
||||
cvtlni
|
||||
addpi
|
||||
subpi
|
||||
cmppi
|
||||
cvtpli
|
||||
mulpi
|
||||
divpi
|
||||
ashpi
|
||||
cvtlpi
|
||||
med
|
||||
2: xfc 42
|
||||
sob r0,2b
|
||||
bpl 2b
|
||||
bmi 2b
|
||||
bhi 2b
|
||||
blos 2b
|
||||
bvc 2b
|
||||
bvs 2b
|
||||
bcc 2b
|
||||
bcs 2b
|
||||
emt 69
|
||||
sys 42
|
||||
clrb (r3)
|
||||
comb @-(r5)
|
||||
incb @(sp)+
|
||||
decb r3
|
||||
negb foo
|
||||
adcb @bar
|
||||
sbcb -(r2)
|
||||
tstb (r4)+
|
||||
rorb r1
|
||||
rolb r2
|
||||
asrb r3
|
||||
aslb r4
|
||||
mtps $0340
|
||||
mfpd sp
|
||||
mtpd (r0)
|
||||
mfps -(sp)
|
||||
movb $17,foo
|
||||
cmpb r1,(r2)
|
||||
bitb $0117,r5
|
||||
bicb $1,bar
|
||||
bisb $2,@bar
|
||||
sub r0,r5
|
||||
cfcc
|
||||
setf
|
||||
seti
|
||||
ldub
|
||||
setd
|
||||
setl
|
||||
ldfps $1
|
||||
stfps -(sp)
|
||||
stst (r2)
|
||||
clrf ac3
|
||||
tstf ac1
|
||||
absf ac2
|
||||
negf ac0
|
||||
mulf $0f0.25,ac1
|
||||
modf ac5,ac0
|
||||
addf foo,ac2
|
||||
ldf @bar,ac1
|
||||
subf ac4,ac3
|
||||
cmpf ac5,ac2
|
||||
stf ac1,-(sp)
|
||||
divf $0f20.0,ac0
|
||||
stexp ac2,r5
|
||||
stcfi ac3,r0
|
||||
stcff ac3,ac5
|
||||
ldexp r0,ac2
|
||||
ldcif r2,ac3
|
||||
ldcff ac5,ac2
|
||||
|
||||
# aliases for some of these opcodes:
|
||||
|
||||
l2d r1
|
||||
3: l3d r4
|
||||
bhis 3b
|
||||
blo 3b
|
||||
trap 99
|
||||
clrd ac3
|
||||
tstd ac2
|
||||
absd ac1
|
||||
negd ac0
|
||||
muld ac5,ac2
|
||||
modd ac4,ac0
|
||||
addd ac4,ac3
|
||||
ldd bar,ac0
|
||||
subd foo,ac2
|
||||
cmpd ac5,ac2
|
||||
std ac1,(r2)
|
||||
divd (sp)+,ac3
|
||||
stcfl ac2,r5
|
||||
stcdi ac3,r0
|
||||
stcdl ac2,r4
|
||||
stcfd ac2,ac5
|
||||
stcdf ac1,ac4
|
||||
ldcid r0,ac1
|
||||
ldclf r4,ac2
|
||||
ldcld $01234567,ac3
|
||||
ldcfd ac5,ac2
|
||||
ldcdf ac4,ac0
|
22
gas/testsuite/gas/pdp11/pdp11.exp
Normal file
22
gas/testsuite/gas/pdp11/pdp11.exp
Normal file
@ -0,0 +1,22 @@
|
||||
#
|
||||
# pdp11/pdp11 tests
|
||||
#
|
||||
proc run_list_test { name opts } {
|
||||
global srcdir subdir
|
||||
set testname "pdp11 $name"
|
||||
set file $srcdir/$subdir/$name
|
||||
gas_run ${name}.s $opts ">&dump.out"
|
||||
if { [regexp_diff "dump.out" "${file}.l"] } then {
|
||||
fail $testname
|
||||
verbose "output is [file_contents "dump.out"]" 2
|
||||
exit
|
||||
return
|
||||
}
|
||||
pass $testname
|
||||
}
|
||||
|
||||
if [expr [istarget "pdp11-*-*"]] then {
|
||||
|
||||
run_dump_test "opcode"
|
||||
|
||||
}
|
Loading…
x
Reference in New Issue
Block a user