mirror of
https://github.com/espressif/binutils-gdb.git
synced 2025-06-23 19:50:13 +08:00
* gdb.asm/asm-source.exp: Add sh*-*-* as supported target.
* gdb.asm/sh.inc: New file.
This commit is contained in:
@ -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>
|
2003-09-11 David Carlton <carlton@kealia.com>
|
||||||
|
|
||||||
* gdb.c++/namespace.exp: Add tests for namespace types.
|
* gdb.c++/namespace.exp: Add tests for namespace types.
|
||||||
|
@ -85,6 +85,11 @@ switch -glob -- [istarget] {
|
|||||||
"powerpc*-*" {
|
"powerpc*-*" {
|
||||||
set asm-arch 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-*-*" {
|
"sparc-*-*" {
|
||||||
set asm-arch 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
|
Reference in New Issue
Block a user