* Makefile.in (ALLDEPFILES): Add sh64-tdep.c.
(sh64-tdep.o): Add dependencies. * configure.tgt: Add FIXME to sh-*-linux*. * sh-tdep.c: Move sh64 support to sh64-tdep.c. (sh_gdbarch_init): Always set correct sh_show_regs function pointer. Call sh64_gdbarch_init() if machine type is sh5. * sh-tdep.h: Move sh64 support to sh64-tdep.c. * sh64-tdep.c: New file, containing all sh64 related code from sh-tdep.c. * config/sh/embed.mt (TDEPFILES): Add sh64-tdep.o. * config/sh/linux.mt (TDEPFILES): Ditto. * config/sh/nbsd.mt (TDEPFILES): Ditto. * config/sh/tm-sh.h: Drop REGISTER_TYPE definition. * config/sh/wince.mt (TDEPFILES): Ditto.
This commit is contained in:
parent
d8a2d9e7ba
commit
55ff77acc2
11 changed files with 3055 additions and 2539 deletions
|
@ -1,3 +1,20 @@
|
|||
2003-09-08 Corinna Vinschen <vinschen@redhat.com>
|
||||
|
||||
* Makefile.in (ALLDEPFILES): Add sh64-tdep.c.
|
||||
(sh64-tdep.o): Add dependencies.
|
||||
* configure.tgt: Add FIXME to sh-*-linux*.
|
||||
* sh-tdep.c: Move sh64 support to sh64-tdep.c.
|
||||
(sh_gdbarch_init): Always set correct sh_show_regs function
|
||||
pointer. Call sh64_gdbarch_init() if machine type is sh5.
|
||||
* sh-tdep.h: Move sh64 support to sh64-tdep.c.
|
||||
* sh64-tdep.c: New file, containing all sh64 related code from
|
||||
sh-tdep.c.
|
||||
* config/sh/embed.mt (TDEPFILES): Add sh64-tdep.o.
|
||||
* config/sh/linux.mt (TDEPFILES): Ditto.
|
||||
* config/sh/nbsd.mt (TDEPFILES): Ditto.
|
||||
* config/sh/tm-sh.h: Drop REGISTER_TYPE definition.
|
||||
* config/sh/wince.mt (TDEPFILES): Ditto.
|
||||
|
||||
2003-09-07 Daniel Jacobowitz <drow@mvista.com>
|
||||
|
||||
* lin-lwp.c (detach_callback): Don't call stop_wait_callback.
|
||||
|
|
|
@ -1295,7 +1295,7 @@ ALLDEPFILES = \
|
|||
rs6000-nat.c rs6000-tdep.c \
|
||||
s390-tdep.c s390-nat.c \
|
||||
ser-go32.c ser-pipe.c ser-tcp.c \
|
||||
sh-tdep.c shnbsd-tdep.c shnbsd-nat.c \
|
||||
sh-tdep.c sh64-tdep.c shnbsd-tdep.c shnbsd-nat.c \
|
||||
solib.c solib-irix.c solib-svr4.c solib-sunos.c sparc-linux-nat.c \
|
||||
sparc-nat.c \
|
||||
sparc64nbsd-nat.c sparcnbsd-nat.c sparcnbsd-tdep.c \
|
||||
|
@ -2261,6 +2261,11 @@ sh-tdep.o: sh-tdep.c $(defs_h) $(frame_h) $(symtab_h) $(symfile_h) \
|
|||
$(inferior_h) $(gdb_string_h) $(arch_utils_h) $(floatformat_h) \
|
||||
$(regcache_h) $(doublest_h) $(osabi_h) $(sh_tdep_h) $(elf_bfd_h) \
|
||||
$(solib_svr4_h) $(elf_sh_h) $(gdb_sim_sh_h)
|
||||
sh64-tdep.o: sh64-tdep.c $(defs_h) $(frame_h) $(symtab_h) $(symfile_h) \
|
||||
$(gdbtypes_h) $(gdbcmd_h) $(gdbcore_h) $(value_h) $(dis_asm_h) \
|
||||
$(inferior_h) $(gdb_string_h) $(arch_utils_h) $(floatformat_h) \
|
||||
$(regcache_h) $(doublest_h) $(osabi_h) $(elf_bfd_h) \
|
||||
$(solib_svr4_h) $(elf_sh_h) $(gdb_sim_sh_h)
|
||||
solib-aix5.o: solib-aix5.c $(defs_h) $(gdb_string_h) $(elf_external_h) \
|
||||
$(symtab_h) $(bfd_h) $(symfile_h) $(objfiles_h) $(gdbcore_h) \
|
||||
$(command_h) $(target_h) $(frame_h) $(gdb_regex_h) $(inferior_h) \
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
# Target: Embedded Hitachi Super-H with ICE and simulator
|
||||
TDEPFILES= sh-tdep.o monitor.o sh3-rom.o remote-e7000.o ser-e7kpc.o dsrec.o
|
||||
TDEPFILES= sh-tdep.o sh64-tdep.o monitor.o sh3-rom.o remote-e7000.o ser-e7kpc.o dsrec.o
|
||||
TM_FILE= tm-sh.h
|
||||
|
||||
SIM_OBS = remote-sim.o
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
# Target: Hitachi Super-H running GNU/Linux
|
||||
TDEPFILES= sh-tdep.o monitor.o sh3-rom.o remote-e7000.o ser-e7kpc.o dsrec.o solib.o solib-svr4.o solib-legacy.o
|
||||
TDEPFILES= sh-tdep.o sh64-tdep.o monitor.o sh3-rom.o remote-e7000.o ser-e7kpc.o dsrec.o solib.o solib-svr4.o solib-legacy.o
|
||||
TM_FILE= tm-linux.h
|
||||
|
||||
SIM_OBS = remote-sim.o
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
# Target: SuperH running NetBSD
|
||||
TDEPFILES= sh-tdep.o shnbsd-tdep.o corelow.o nbsd-tdep.o solib.o solib-svr4.o
|
||||
TDEPFILES= sh-tdep.o sh64-tdep.o shnbsd-tdep.o corelow.o nbsd-tdep.o solib.o solib-svr4.o
|
||||
TM_FILE= tm-nbsd.h
|
||||
|
||||
SIM_OBS = remote-sim.o
|
||||
|
|
|
@ -25,8 +25,6 @@
|
|||
|
||||
#define NUM_REALREGS 59 /* used in remote-e7000.c which is not multiarched. */
|
||||
|
||||
#define REGISTER_TYPE long /* used in standalone.c */
|
||||
|
||||
#define DEPRECATED_BIG_REMOTE_BREAKPOINT { 0xc3, 0x20 } /* Used in remote.c */
|
||||
#define DEPRECATED_LITTLE_REMOTE_BREAKPOINT { 0x20, 0xc3 } /* Used in remote.c */
|
||||
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
# Target: Hitachi Super-H running on Windows CE
|
||||
TDEPFILES= sh-tdep.o wince.o
|
||||
TDEPFILES= sh-tdep.o sh64-tdep.o wince.o
|
||||
TM_FILE= tm-wince.h
|
||||
MT_CFLAGS=-DSHx -U_X86_ -U_M_IX86 -U__i386__ -U__i486__ -U__i586__ -U__i686__ -DUNICODE -D_WIN32_WCE -DWINCE_STUB='"${target_alias}-stub.exe"'
|
||||
TM_CLIBS=-lrapi
|
||||
|
|
|
@ -195,6 +195,7 @@ s390x-*-*) gdb_target=s390x
|
|||
sh*-*-pe) gdb_target=wince ;;
|
||||
sh-*-coff*) gdb_target=embed ;;
|
||||
sh-*-elf*) gdb_target=embed ;;
|
||||
# FIXME should that be sh*-*-linux*, perhaps?
|
||||
sh-*-linux*) gdb_target=linux
|
||||
build_gdbserver=yes
|
||||
;;
|
||||
|
|
2561
gdb/sh-tdep.c
2561
gdb/sh-tdep.c
File diff suppressed because it is too large
Load diff
|
@ -24,21 +24,10 @@
|
|||
|
||||
/* Contributed by Steve Chamberlain sac@cygnus.com */
|
||||
|
||||
/* Information that is dependent on the processor variant. */
|
||||
|
||||
enum sh_abi
|
||||
{
|
||||
SH_ABI_UNKNOWN,
|
||||
SH_ABI_32,
|
||||
SH_ABI_64
|
||||
};
|
||||
|
||||
struct gdbarch_tdep
|
||||
{
|
||||
int PR_REGNUM;
|
||||
int FPUL_REGNUM; /* sh3e, sh4 */
|
||||
int FPSCR_REGNUM; /* sh3e, sh4 */
|
||||
int SR_REGNUM; /* sh-dsp, sh3, sh3-dsp, sh3e, sh4 */
|
||||
int DSR_REGNUM; /* sh-dsp, sh3-dsp */
|
||||
int FP_LAST_REGNUM; /* sh3e, sh4 */
|
||||
int A0G_REGNUM; /* sh-dsp, sh3-dsp */
|
||||
|
@ -64,31 +53,6 @@ struct gdbarch_tdep
|
|||
GDB's FP0_REGNUM, which is the number of the first Floating
|
||||
point register. Unfortunately on the sh5, the floating point
|
||||
registers are called FR, and the floating point pairs are called FP. */
|
||||
int TR7_REGNUM; /* sh5-media*/
|
||||
int FPP0_REGNUM; /* sh5-media*/
|
||||
int FPP_LAST_REGNUM; /* sh5-media*/
|
||||
int R0_C_REGNUM; /* sh5-compact*/
|
||||
int R_LAST_C_REGNUM; /* sh5-compact*/
|
||||
int PC_C_REGNUM; /* sh5-compact*/
|
||||
int GBR_C_REGNUM; /* sh5-compact*/
|
||||
int MACH_C_REGNUM; /* sh5-compact*/
|
||||
int MACL_C_REGNUM; /* sh5-compact*/
|
||||
int PR_C_REGNUM; /* sh5-compact*/
|
||||
int T_C_REGNUM; /* sh5-compact*/
|
||||
int FPSCR_C_REGNUM; /* sh5-compact*/
|
||||
int FPUL_C_REGNUM; /* sh5-compact*/
|
||||
int FP0_C_REGNUM; /* sh5-compact*/
|
||||
int FP_LAST_C_REGNUM; /* sh5-compact*/
|
||||
int DR0_C_REGNUM; /* sh5-compact*/
|
||||
int DR_LAST_C_REGNUM; /* sh5-compact*/
|
||||
int FV0_C_REGNUM; /* sh5-compact*/
|
||||
int FV_LAST_C_REGNUM; /* sh5-compact*/
|
||||
int ARG0_REGNUM;
|
||||
int ARGLAST_REGNUM;
|
||||
int FLOAT_ARG0_REGNUM; /* sh4 */
|
||||
int FLOAT_ARGLAST_REGNUM; /* sh4, sh5 */
|
||||
int RETURN_REGNUM;
|
||||
enum sh_abi sh_abi;
|
||||
};
|
||||
|
||||
/* Registers common to all the SH variants. */
|
||||
|
@ -96,14 +60,19 @@ enum
|
|||
{
|
||||
R0_REGNUM = 0,
|
||||
STRUCT_RETURN_REGNUM = 2,
|
||||
ARG0_REGNUM = 4, /* Used in h8300-tdep.c */
|
||||
ARGLAST_REGNUM = 7, /* Used in h8300-tdep.c */
|
||||
PR_REGNUM = 17, /* used in sh3-rom.c */
|
||||
ARG0_REGNUM = 4,
|
||||
ARGLAST_REGNUM = 7,
|
||||
PR_REGNUM = 17,
|
||||
GBR_REGNUM = 18,
|
||||
VBR_REGNUM = 19,
|
||||
MACH_REGNUM = 20,
|
||||
MACL_REGNUM = 21,
|
||||
SR_REGNUM = 22
|
||||
SR_REGNUM = 22,
|
||||
FLOAT_ARG0_REGNUM = 29,
|
||||
FLOAT_ARGLAST_REGNUM = 36
|
||||
};
|
||||
|
||||
extern gdbarch_init_ftype sh64_gdbarch_init;
|
||||
extern void sh64_show_regs (void);
|
||||
|
||||
#endif /* SH_TDEP_H */
|
||||
|
|
2949
gdb/sh64-tdep.c
Normal file
2949
gdb/sh64-tdep.c
Normal file
File diff suppressed because it is too large
Load diff
Loading…
Reference in a new issue