* gdb.asm/asm-source.exp: Add sh*-*-* as supported target.
* gdb.asm/sh.inc: New file.
This commit is contained in:
parent
d0f37bb2b3
commit
71e06f8034
@ -1,3 +1,8 @@
|
||||
2003-09-15 Corinna Vinschen <vinschen@redhat.com>
|
||||
|
||||
* gdb.asm/asm-source.exp: Add sh*-*-* as supported target.
|
||||
* gdb.asm/sh.inc: New file.
|
||||
|
||||
2003-09-11 David Carlton <carlton@kealia.com>
|
||||
|
||||
* gdb.c++/namespace.exp: Add tests for namespace types.
|
||||
|
@ -85,6 +85,11 @@ switch -glob -- [istarget] {
|
||||
"powerpc*-*" {
|
||||
set asm-arch powerpc
|
||||
}
|
||||
"sh*-*-*" {
|
||||
set asm-arch sh
|
||||
set asm-flags "-gdwarf2 -I${srcdir}/${subdir} -I${objdir}/${subdir}"
|
||||
set link-flags "--entry _start"
|
||||
}
|
||||
"sparc-*-*" {
|
||||
set asm-arch sparc
|
||||
}
|
||||
|
85
gdb/testsuite/gdb.asm/sh.inc
Normal file
85
gdb/testsuite/gdb.asm/sh.inc
Normal file
@ -0,0 +1,85 @@
|
||||
# You'll find a bunch of nop opcodes in the below macros. They are
|
||||
# there to keep the code correctly aligned. Be careful to maintain
|
||||
# them when changing the code.
|
||||
|
||||
comment "subroutine declare"
|
||||
.macro gdbasm_declare name
|
||||
.align 1
|
||||
.global \name
|
||||
\name:
|
||||
.endm
|
||||
|
||||
comment "subroutine prologue"
|
||||
.macro gdbasm_enter
|
||||
mov.l r14,@-r15
|
||||
sts.l pr,@-r15
|
||||
mov r15,r14
|
||||
nop
|
||||
.endm
|
||||
|
||||
comment "subroutine epilogue"
|
||||
.macro gdbasm_leave
|
||||
mov r14,r15
|
||||
lds.l @r15+,pr
|
||||
mov.l @r15+,r14
|
||||
rts
|
||||
nop
|
||||
nop
|
||||
.endm
|
||||
|
||||
comment "subroutine end"
|
||||
.macro gdbasm_end name
|
||||
.size \name, .-_foo1
|
||||
.align 1
|
||||
.endm
|
||||
|
||||
comment "subroutine call"
|
||||
.macro gdbasm_call subr
|
||||
mov.l .Lconst\@,r1
|
||||
bra .Lafterconst\@
|
||||
nop
|
||||
nop
|
||||
.Lconst\@:
|
||||
.align 2
|
||||
.long \subr
|
||||
.align 1
|
||||
.Lafterconst\@:
|
||||
jsr @r1
|
||||
nop
|
||||
.endm
|
||||
|
||||
.macro gdbasm_several_nops
|
||||
nop
|
||||
nop
|
||||
nop
|
||||
nop
|
||||
.endm
|
||||
|
||||
comment "exit (0)"
|
||||
.macro gdbasm_exit0
|
||||
sleep
|
||||
nop
|
||||
.endm
|
||||
|
||||
comment "crt0 startup"
|
||||
.macro gdbasm_startup
|
||||
mov.l .stackaddr,r15
|
||||
bra .afterstackaddr
|
||||
nop
|
||||
nop
|
||||
.align 2
|
||||
.stackaddr:
|
||||
.long 196608 ! 0x30000
|
||||
.align 1
|
||||
.afterstackaddr:
|
||||
.endm
|
||||
|
||||
comment "Declare a data variable"
|
||||
.macro gdbasm_datavar name value
|
||||
.data
|
||||
.align 2
|
||||
.type \name, @object
|
||||
.size \name, 4
|
||||
\name:
|
||||
.long \value
|
||||
.endm
|
Loading…
Reference in New Issue
Block a user