Dwarf2 test for 68HC11/68HC12 gas
This commit is contained in:
parent
d8273f3bf3
commit
68a581b811
5 changed files with 427 additions and 0 deletions
|
@ -1,3 +1,10 @@
|
|||
2001-01-11 Stephane Carrez <Stephane.Carrez@worldnet.fr>
|
||||
|
||||
* gas/m68hc11/all.exp: Add new tests for dwarf2.
|
||||
* gas/m68hc11/lbranch-dwarf2.d: New file, test for dwarf2.
|
||||
* gas/m68hc11/opers12-dwarf2.d: Likewise.
|
||||
* gas/m68hc11/insns-dwarf2.d: Likewise.
|
||||
|
||||
2001-01-11 Nick Clifton <nickc@redhat.com>
|
||||
|
||||
* gas/arm/adrl.s: Add global label 'foo'.
|
||||
|
|
|
@ -13,6 +13,9 @@ if ![istarget "m68hc11-*-*"] then {
|
|||
run_dump_test insns
|
||||
run_dump_test lbranch
|
||||
run_dump_test all_insns
|
||||
run_dump_test insns-dwarf2
|
||||
run_dump_test lbranch-dwarf2
|
||||
|
||||
# Some 68HC12 tests
|
||||
run_dump_test opers12
|
||||
run_dump_test opers12-dwarf2
|
111
gas/testsuite/gas/m68hc11/insns-dwarf2.d
Normal file
111
gas/testsuite/gas/m68hc11/insns-dwarf2.d
Normal file
|
@ -0,0 +1,111 @@
|
|||
#objdump: -S
|
||||
#as: -m68hc11 -gdwarf2
|
||||
#name: Dwarf2 test on insns.s
|
||||
#source: insns.s
|
||||
|
||||
# Test handling of basic instructions.
|
||||
|
||||
.*: +file format elf32\-m68hc11
|
||||
|
||||
Disassembly of section .text:
|
||||
|
||||
0+0 <_start>:
|
||||
.globl _start
|
||||
.sect .text
|
||||
|
||||
_start:
|
||||
lds #stack\+1024
|
||||
0: 8e 04 00 lds #400 <L1\+0x3a9>
|
||||
ldx #1
|
||||
3: ce 00 01 ldx #1 <_start\+0x1>
|
||||
|
||||
00000006 <Loop>:
|
||||
Loop:
|
||||
jsr test
|
||||
6: bd 00 10 jsr 10 <test>
|
||||
dex
|
||||
9: 09 dex
|
||||
bne Loop
|
||||
a: 26 fa bne 6 <Loop>
|
||||
|
||||
0000000c <Stop>:
|
||||
c: cd 03 .byte 0xcd, 0x03
|
||||
Stop:
|
||||
|
||||
.byte 0xcd
|
||||
.byte 3
|
||||
bra _start
|
||||
e: 20 f0 bra 0 <_start>
|
||||
|
||||
00000010 <test>:
|
||||
|
||||
test:
|
||||
ldd #2
|
||||
10: cc 00 02 ldd #2 <_start\+0x2>
|
||||
jsr test2
|
||||
13: bd 00 17 jsr 17 <test2>
|
||||
rts
|
||||
16: 39 rts
|
||||
|
||||
00000017 <test2>:
|
||||
|
||||
B_low = 12
|
||||
A_low = 44
|
||||
D_low = 50
|
||||
value = 23
|
||||
|
||||
.globl test2
|
||||
test2:
|
||||
ldx value,y
|
||||
17: cd ee 17 ldx 23,y
|
||||
std value,x
|
||||
1a: ed 17 std 23,x
|
||||
ldd ,x
|
||||
1c: ec 00 ldd 0,x
|
||||
sty ,y
|
||||
1e: 18 ef 00 sty 0,y
|
||||
stx ,y
|
||||
21: cd ef 00 stx 0,y
|
||||
brclr 6,x,#4,test2
|
||||
24: 1f 06 04 ef brclr 6,x #\$04 17 <test2>
|
||||
brclr 12,x #8 test2
|
||||
28: 1f 0c 08 eb brclr 12,x #\$08 17 <test2>
|
||||
ldd \*ZD1
|
||||
2c: dc 00 ldd \*0 <_start>
|
||||
ldx \*ZD1\+2
|
||||
2e: de 02 ldx \*2 <_start\+0x2>
|
||||
clr \*ZD2
|
||||
30: 7f 00 00 clr 0 <_start>
|
||||
clr \*ZD2\+1
|
||||
33: 7f 00 01 clr 1 <_start\+0x1>
|
||||
bne .-4
|
||||
36: 26 fc bne 34 <test2\+0x1d>
|
||||
beq .\+2
|
||||
38: 27 02 beq 3c <test2\+0x25>
|
||||
bclr \*ZD1\+1, #32
|
||||
3a: 15 01 20 bclr \*1 <_start\+0x1> #\$20
|
||||
brclr \*ZD2\+2, #40, test2
|
||||
3d: 13 02 28 d6 brclr \*2 <_start\+0x2> #\$28 17 <test2>
|
||||
ldy #24\+_start-44
|
||||
41: 18 ce ff ec ldy #ffec <L1\+0xff95>
|
||||
ldd B_low,y
|
||||
45: 18 ec 0c ldd 12,y
|
||||
addd A_low,y
|
||||
48: 18 e3 2c addd 44,y
|
||||
addd D_low,y
|
||||
4b: 18 e3 32 addd 50,y
|
||||
subd A_low
|
||||
4e: b3 00 2c subd 2c <test2\+0x15>
|
||||
subd #A_low
|
||||
51: 83 00 2c subd #2c <test2\+0x15>
|
||||
jmp Stop
|
||||
54: 7e 00 0c jmp c <Stop>
|
||||
|
||||
0+057 <L1>:
|
||||
L1:
|
||||
anda #%lo\(test2\)
|
||||
57: 84 17 anda #23
|
||||
andb #%hi\(test2\)
|
||||
59: c4 00 andb #0
|
||||
rts
|
||||
5b: 39 rts
|
90
gas/testsuite/gas/m68hc11/lbranch-dwarf2.d
Normal file
90
gas/testsuite/gas/m68hc11/lbranch-dwarf2.d
Normal file
|
@ -0,0 +1,90 @@
|
|||
#objdump: -S
|
||||
#as: -m68hc11 -gdwarf2
|
||||
#name: Dwarf2 test on lbranch.s
|
||||
#source: lbranch.s
|
||||
|
||||
# Test handling of basic instructions.
|
||||
|
||||
.*: +file format elf32\-m68hc11
|
||||
|
||||
Disassembly of section .text:
|
||||
|
||||
0+0 <_rcall>:
|
||||
.globl _rcall
|
||||
.globl _start
|
||||
_start:
|
||||
_rcall:
|
||||
ldaa \#0x10 ;86 10
|
||||
0: 86 10 ldaa \#16
|
||||
jbra Lend ; Must be switched to a jmp
|
||||
2: 7e 01 0b jmp 10b <Lend>
|
||||
jbsr toto ; \-> to a jsr
|
||||
5: bd 01 1b jsr 11b <toto>
|
||||
jbne toto ; \-> to a beq\+jmp
|
||||
8: 27 03 beq d <_rcall\+0xd>
|
||||
a: 7e 01 1b jmp 11b <toto>
|
||||
jbeq toto ; -> to a bne\+jmp
|
||||
d: 26 03 bne 12 <_rcall\+0x12>
|
||||
f: 7e 01 1b jmp 11b <toto>
|
||||
jbcs toto ; -> to a bcc\+jmp
|
||||
12: 24 03 bcc 17 <_rcall\+0x17>
|
||||
14: 7e 01 1b jmp 11b <toto>
|
||||
jbcc toto ; -> to a bcs\+jmp
|
||||
17: 25 03 bcs 1c <_rcall\+0x1c>
|
||||
19: 7e 01 1b jmp 11b <toto>
|
||||
xgdx
|
||||
1c: 8f xgdx
|
||||
xgdx
|
||||
1d: 8f xgdx
|
||||
beq bidule ; -> to a bne\+jmp
|
||||
1e: 26 03 bne 23 <_rcall\+0x23>
|
||||
20: 7e 01 80 jmp 180 <bidule>
|
||||
bcs bidule ; -> to a bcc\+jmp
|
||||
23: 24 03 bcc 28 <_rcall\+0x28>
|
||||
25: 7e 01 80 jmp 180 <bidule>
|
||||
bcc bidule ; -> to a bcs\+jmp
|
||||
28: 25 03 bcs 2d <_rcall\+0x2d>
|
||||
2a: 7e 01 80 jmp 180 <bidule>
|
||||
xgdx
|
||||
2d: 8f xgdx
|
||||
jbra 200
|
||||
2e: 7e 00 c8 jmp c8 <_rcall\+0xc8>
|
||||
jbsr 1923
|
||||
31: bd 07 83 jsr 783 <bidule\+0x603>
|
||||
bne Lend ; -> to a beq\+jmp
|
||||
34: 27 03 beq 39 <_rcall\+0x39>
|
||||
36: 7e 01 0b jmp 10b <Lend>
|
||||
jbsr toto
|
||||
39: bd 01 1b jsr 11b <toto>
|
||||
jbeq toto
|
||||
3c: 26 03 bne 41 <_rcall\+0x41>
|
||||
3e: 7e 01 1b jmp 11b <toto>
|
||||
...
|
||||
.skip 200
|
||||
ldaa \*dir ;96 33
|
||||
109: 96 00 ldaa \*0 <_rcall>
|
||||
|
||||
0000010b <Lend>:
|
||||
Lend:
|
||||
bhi external_op
|
||||
10b: 23 03 bls 110 <Lend\+0x5>
|
||||
10d: 7e 00 00 jmp 0 <_rcall>
|
||||
bls external_op
|
||||
110: 22 03 bhi 115 <Lend\+0xa>
|
||||
112: 7e 00 00 jmp 0 <_rcall>
|
||||
bsr out
|
||||
115: bd 00 00 jsr 0 <_rcall>
|
||||
ldx #12
|
||||
118: ce 00 0c ldx #c <_rcall\+0xc>
|
||||
|
||||
0000011b <toto>:
|
||||
toto:
|
||||
rts
|
||||
11b: 39 rts
|
||||
...
|
||||
|
||||
00000180 <bidule>:
|
||||
.skip 100
|
||||
bidule:
|
||||
rts
|
||||
180: 39 rts
|
216
gas/testsuite/gas/m68hc11/opers12-dwarf2.d
Normal file
216
gas/testsuite/gas/m68hc11/opers12-dwarf2.d
Normal file
|
@ -0,0 +1,216 @@
|
|||
#objdump: -S
|
||||
#as: -m68hc12 -gdwarf2
|
||||
#name: Dwarf2 test on opers12.s
|
||||
#source: opers12.s
|
||||
|
||||
.*: +file format elf32\-m68hc12
|
||||
|
||||
Disassembly of section .text:
|
||||
|
||||
0+0 <start>:
|
||||
sect .text
|
||||
globl start
|
||||
|
||||
start:
|
||||
anda \[12,x\] ; Indexed indirect
|
||||
0: a4 e3 00 0c anda \[12,X\]
|
||||
ldaa #10
|
||||
4: 86 0a ldaa #10
|
||||
ldx L1
|
||||
6: fe 00 09 ldx 9 <L1>
|
||||
|
||||
00000009 <L1>:
|
||||
L1: ldy ,x
|
||||
9: ed 00 ldy 0,X
|
||||
addd 1,y ; Offset from register
|
||||
b: e3 41 addd 1,Y
|
||||
subd \-1,y
|
||||
d: a3 5f subd \-1,Y
|
||||
eora 15,y
|
||||
f: a8 4f eora 15,Y
|
||||
eora \-16,y
|
||||
11: a8 50 eora \-16,Y
|
||||
eorb 16,y
|
||||
13: e8 e8 10 eorb 16,Y
|
||||
eorb \-17,y
|
||||
16: e8 e9 ef eorb \-17,Y
|
||||
oraa 128,sp
|
||||
19: aa f0 80 oraa 128,SP
|
||||
orab \-128,sp
|
||||
1c: ea f1 80 orab \-128,SP
|
||||
orab 255,x
|
||||
1f: ea e0 ff orab 255,X
|
||||
orab \-256,x
|
||||
22: ea e1 00 orab \-256,X
|
||||
anda 256,x
|
||||
25: a4 e2 01 00 anda 256,X
|
||||
andb \-257,x
|
||||
29: e4 e2 fe ff andb \-257,X
|
||||
anda \[12,x\] ; Indexed indirect \(16\-bit offset\)
|
||||
2d: a4 e3 00 0c anda \[12,X\]
|
||||
ldaa \[257,y\]
|
||||
31: a6 eb 01 01 ldaa \[257,Y\]
|
||||
ldab \[32767,sp\]
|
||||
35: e6 f3 7f ff ldab \[32767,SP\]
|
||||
ldd \[32768,pc\]
|
||||
39: ec fb 80 00 ldd \[32768,PC\]
|
||||
ldd L1,pc
|
||||
3d: ec f8 09 ldd 9,PC
|
||||
std a,x ; Two\-reg index
|
||||
40: 6c e4 std A,X
|
||||
ldx b,x
|
||||
42: ee e5 ldx B,X
|
||||
stx d,y
|
||||
44: 6e ee stx D,Y
|
||||
addd 1,\+x ; Pre\-Auto inc
|
||||
46: e3 20 addd 1,\+X
|
||||
addd 2,\+x
|
||||
48: e3 21 addd 2,\+X
|
||||
addd 8,\+x
|
||||
4a: e3 27 addd 8,\+X
|
||||
addd 1,sp\+ ; Post\-Auto inc
|
||||
4c: e3 b0 addd 1,SP\+
|
||||
addd 2,sp\+
|
||||
4e: e3 b1 addd 2,SP\+
|
||||
addd 8,sp\+
|
||||
50: e3 b7 addd 8,SP\+
|
||||
subd 1,\-y ; Pre\-Auto dec
|
||||
52: a3 6f subd 1,\-Y
|
||||
subd 2,\-y
|
||||
54: a3 6e subd 2,\-Y
|
||||
subd 8,\-y
|
||||
56: a3 68 subd 8,\-Y
|
||||
addd 1,y\- ; Post\-Auto dec
|
||||
58: e3 7f addd 1,Y\-
|
||||
addd 2,y\-
|
||||
5a: e3 7e addd 2,Y\-
|
||||
addd 8,y\-
|
||||
5c: e3 78 addd 8,Y\-
|
||||
std \[d,x\] ; Indexed indirect with two reg index
|
||||
5e: 6c e7 std \[D,X\]
|
||||
std \[d,y\]
|
||||
60: 6c ef std \[D,Y\]
|
||||
std \[d,sp\]
|
||||
62: 6c f7 std \[D,SP\]
|
||||
std \[d,pc\]
|
||||
64: 6c ff std \[D,PC\]
|
||||
beq L1
|
||||
66: 27 a1 beq 9 <L1>
|
||||
lbeq start
|
||||
68: 18 27 ff 94 lbeq 0 <start>
|
||||
lbcc L2
|
||||
6c: 18 24 00 4c lbcc bc <L2>
|
||||
;;
|
||||
;; Move insn with various operands
|
||||
;;
|
||||
movb start, 1,x
|
||||
70: 18 09 01 00 movb 0 <start>, 1,X
|
||||
74: 00
|
||||
movw 1,x, start
|
||||
75: 18 05 01 00 movw 1,X, 0 <start>
|
||||
79: 00
|
||||
movb start, 1,\+x
|
||||
7a: 18 09 20 00 movb 0 <start>, 1,\+X
|
||||
7e: 00
|
||||
movb start, 1,\-x
|
||||
7f: 18 09 2f 00 movb 0 <start>, 1,\-X
|
||||
83: 00
|
||||
movb #23, 1,\-sp
|
||||
84: 18 08 af 17 movb #23, 1,\-SP
|
||||
movb L1, L2
|
||||
88: 18 0c 00 09 movb 9 <L1>, bc <L2>
|
||||
8c: 00 bc
|
||||
movb L1, a,x
|
||||
8e: 18 09 e4 00 movb 9 <L1>, A,X
|
||||
92: 09
|
||||
movw L1, b,x
|
||||
93: 18 01 e5 00 movw 9 <L1>, B,X
|
||||
97: 09
|
||||
movw L1, d,x
|
||||
98: 18 01 e6 00 movw 9 <L1>, D,X
|
||||
9c: 09
|
||||
movw d,x, a,x
|
||||
9d: 18 02 e6 e4 movw D,X, A,X
|
||||
movw b,sp, d,pc
|
||||
a1: 18 02 f5 fe movw B,SP, D,PC
|
||||
movw b,sp, L1
|
||||
a5: 18 05 f5 00 movw B,SP, 9 <L1>
|
||||
a9: 09
|
||||
movw b,sp, 1,x
|
||||
aa: 18 02 f5 01 movw B,SP, 1,X
|
||||
movw d,x, a,y
|
||||
ae: 18 02 e6 ec movw D,X, A,Y
|
||||
trap #0x30
|
||||
b2: 18 30 trap #48
|
||||
trap #0x39
|
||||
b4: 18 39 trap #57
|
||||
trap #0x40
|
||||
b6: 18 40 trap #64
|
||||
trap #0x80
|
||||
b8: 18 80 trap #128
|
||||
trap #255
|
||||
ba: 18 ff trap #255
|
||||
|
||||
000000bc <L2>:
|
||||
L2:
|
||||
movw 1,x,2,x
|
||||
bc: 18 02 01 02 movw 1,X, 2,X
|
||||
movw \-1,\-1
|
||||
c0: 18 04 ff ff movw ffff <bb\+0xd7ff>, ffff <bb\+0xd7ff>
|
||||
c4: ff ff
|
||||
movw \-1,1,x
|
||||
c6: 18 01 01 ff movw ffff <bb\+0xd7ff>, 1,X
|
||||
ca: ff
|
||||
movw #\-1,1,x
|
||||
cb: 18 00 01 ff movw #ffff <bb\+0xd7ff>, 1,X
|
||||
cf: ff
|
||||
movw 3,8
|
||||
d0: 18 04 00 03 movw 3 <start\+0x3>, 8 <start\+0x8>
|
||||
d4: 00 08
|
||||
movw #3,3
|
||||
d6: 18 03 00 03 movw #3 <start\+0x3>, 3 <start\+0x3>
|
||||
da: 00 03
|
||||
movw #3,1,x
|
||||
dc: 18 00 01 00 movw #3 <start\+0x3>, 1,X
|
||||
e0: 03
|
||||
movw 3,1,x
|
||||
e1: 18 01 01 00 movw 3 <start\+0x3>, 1,X
|
||||
e5: 03
|
||||
movw 3,\+2,x
|
||||
e6: 18 01 02 00 movw 3 <start\+0x3>, 2,X
|
||||
ea: 03
|
||||
movw 4,\-2,x
|
||||
eb: 18 01 1e 00 movw 4 <start\+0x4>, \-2,X
|
||||
ef: 04
|
||||
rts
|
||||
f0: 3d rts
|
||||
|
||||
000000f1 <post_indexed_pb>:
|
||||
;;
|
||||
;; Post\-index byte with relocation
|
||||
;;
|
||||
post_indexed_pb:
|
||||
t1:
|
||||
leas abort,x
|
||||
f1: 1b e2 00 00 leas 0,X
|
||||
|
||||
000000f5 <t2>:
|
||||
t2:
|
||||
leax t2\-t1,y
|
||||
f5: 1a 44 leax 4,Y
|
||||
leax toto,x
|
||||
f7: 1a e2 00 64 leax 100,X
|
||||
leas toto\+titi,sp
|
||||
fb: 1b f2 00 6e leas 110,SP
|
||||
leay titi,x
|
||||
ff: 19 e2 00 0a leay 10,X
|
||||
leas bb,y
|
||||
103: 1b ea 28 00 leas 10240,Y
|
||||
leas min5b,pc
|
||||
107: 1b fa 00 ff leas 255,PC
|
||||
leas max5b,pc
|
||||
10b: 1b fa 00 00 leas 0,PC
|
||||
leas min9b,pc
|
||||
10f: 1b fa 00 ff leas 255,PC
|
||||
leas max9b,pc
|
||||
113: 1b fa 00 00 leas 0,PC
|
Loading…
Add table
Reference in a new issue