Commit Graph

9 Commits

Author SHA1 Message Date
Daniel Jacobowitz 4be87837a2 * arch-utils.c (gdbarch_info_init): Set osabi to
GDB_OSABI_UNINITIALIZED.
	* gdbarch.sh: Add osabi to struct gdbarch and to struct
	gdbarch_info.  Include "osabi.h" in gdbarch.c.  Check osabi
	in gdbarch_list_lookup_by_info and in gdbarch_update_p.
	* gdbarch.c: Regenerated.
	* gdbarch.h: Regenerated.
	* osabi.c (gdbarch_lookup_osabi): Return GDB_OSABI_UNINITIALIZED if
	there's no BFD.
	(gdbarch_init_osabi): Remove osabi argument; use info.osabi.
	* osabi.h (enum gdb_osabi): Move to defs.h.
	(gdbarch_init_osabi): Update prototype.
	* defs.h (enum gdb_osabi): Moved here.
	* Makefile.in: Update dependencies.

Plus updates to alpha, arm, hppa, i386, mips, ns32k, ppc, sh, sparc, and vax
ports to match.
2003-01-04 23:38:46 +00:00
Mark Kettenis 05816f706e * osabi.c: Include "gdb_assert.h" and "gdb_string.h".
(struct gdb_osabi_handler): Remove member `arch'.  Add member
`arch_info'.
(gdbarch_register_osabi): Add new argument `machine'.  Use ot to
construct a `struct bfd_arch_info' and store it in the `struct
gdb_osabi_handler' that is created.
(gdbarch_init_osabi): Check for compatibility based on machine
type and architecture.
* osabi.h (gdbarch_register_osabi): Adjust prototype and update
comment.
* alpha-linux-tdep.c (_initialize_alpha_linux_tdep): Add 0 as
second argument in call to gdbarch_register_osabi.
* alpha-osf1-tdep.c (_initialize_alpha_osf1_tdep): Likewise.
* alphafbsd-tdep.c (_initialize_alphafbsd_tdep): Likewise.
* alphanbsd-tdep.c (_initialize_alphanbsd_tdep): Likewise.
* arm-linux-tdep.c (_initialize_arm_linux_tdep): Likewise.
* arm-tdep.c (_initialize_arm_tdep): Likewise.
* armnbsd-tdep.c (_initialize_armnbsd_tdep): Likewise.
* hppa-hpux-tdep.c (_initialize_hppa_hpux_tdep): Likewise.
* i386-interix-tdep.c (_initialize_i386_interix_tdep): Likewise.
* i386-linux-tdep.c (_initialize_i386_linux_tdep): Likewise.
* i386-sol2-tdep.c (_initialize_i386_sol2_tdep): Likewise.
* i386-tdep.c (_initialize_i386_tdep): Likewise.
* i386bsd-tdep.c (_initialize_i386bsd_tdep): Likewise.
* i386gnu-tdep.c (_initialize_i386gnu_tdep): Likewise.
* i386ly-tdep.c (_initialize_i386lynx_tdep): Renamed from
_initialize_i386bsd_tdep and updated likewise.
* i386nbsd-tdep.c (_initialize_i386nbsd_tdep): Likewise.
* i386obsd-tdep.c (_initialize_i386obsd_tdep): Likewise.
* mips-irix-tdep.c (_initialize_mips_irix_tdep): Likewise.
* mips-linux-tdep.c (_initialize_mips_linux_tdep): Likewise.
* mipsnbsd-tdep.c (_initialize_mipsnbsd__tdep): Likewise.
* ns32knbsd-tdep.c (_initialize_ns32kmnsd_tdep): Likewise.
* ppc-linux-tdep.c (_initialize_ppc_linux_tdep): Likewise.
* ppcnbsd-tdep.c (_initialize_ppcnbsd_tdep): Likewise.
* shnbsd-tdep.c (_initialize_shnbsd_tdep): Likewise.
* sparcnbsd-tdep.c (_initialize_sparcnbsd_tdep): Likewise.
2002-12-21 19:58:07 +00:00
Jason Thorpe 3d9b49b090 * Makefile.in (mipsnbsd-tdep.o): Add nbsd-tdep.h to dependency
list.
(nbsd-tdep.o): Add $(gdb_string_h) to dependency list.
* alphanbsd-tdep.c (alphanbsd_pc_in_sigtramp): Use
nbsd_pc_in_sigtramp.
* mipsnbsd-tdep.c: Include nbsd-tdep.h.
(mipsnbsd_pc_in_sigtramp): Use nbsd_pc_in_sigtramp.
* nbsd-tdep.c: Include gdb_string.h.
(nbsd_pc_in_sigtramp): New function.
* nbsd-tdep.h (nbsd_pc_in_sigtramp): New prototype.
* ppcnbsd-tdep.c (ppcnbsd_pc_in_sigtramp): New function.
(ppcnbsd_init_abi): Set gdbarch_pc_in_sigtramp to
ppcnbsd_pc_in_sigtramp.
* shnbsd-tdep.c (shnbsd_pc_in_sigtramp): New function.
(shnbsd_init_abi): Set gdbarch_pc_in_sigtramp to
shnbsd_pc_in_sigtramp.
* sparcnbsd-tdep.c (sparcnbsd_init_abi_elf): Set
gdbarch_pc_in_sigtramp to nbsd_pc_in_sigtramp.
* config/mips/nbsd.mt (TDEPFILES): Add nbsd-tdep.o.
2002-08-31 20:28:37 +00:00
Jason Thorpe 9964235a2b * Makefile.in (alphanbsd-tdep.o, shnbsd-tdep.o): Add solib-svr4.h
to dependency list.
* alphanbsd-tdep.c: Include solib-svr4.h.
* shnbsd-tdep.c: Ditto.
2002-05-22 04:15:36 +00:00
Jason Thorpe 70f80edf7c * Makefile.in (SFILES): Add osabi.c.
(COMMON_OBS): Add osabi.o.
(osabi.o): New dependency list.
* osabi.c: New file.
* osabi.h: New file.
* doc/gdbint.texinfo: Document new generic OS ABI framework.

* Makefile.in (alpha_tdep_h): Define and use instead of
alpha-tdep.h.
* alpha-tdep.c (alpha_abi_names, process_note_abi_tag_sections,
get_elfosabi, alpha_abi_handler_list, alpha_gdbarch_register_os_abi):
Remove.
(alpha_gdbarch_init, alpha_dump_tdep): Use generic OS ABI framework.
* alpha-tdep.h: Include osabi.h.
(alpha_abi): Remove.
(gdbarch_tdep): Use generic OS ABI framework.
* alpha-linux-tdep.c (_initialize_alpha_linux_tdep): Use
gdbarch_register_osabi.
* alpha-osf1-tdep.c (_initialize_alpha_osf1_tdep): Likewise.
* alphafbsd-tdep.c (_initialize_alphafbsd_tdep): Likewise.
* alphanbsd-tdep.c (_initialize_alphanbsd_tdep): Likewise.

* Makefile.in (sh_tdep_h): Add osabi.h.
* sh-tdep.h (sh_osabi): Remove.
(gdbarch_tdep): Use generic OS ABI framework.
* sh-tdep.c (sh_osabi_names, process_note_abi_tag_sections,
sh_osabi_handler_list, sh_gdbarch_register_os_abi): Remove.
(sh_gdbarch_init, sh_dump_tdep): Use generic OS ABI framework.
* shnbsd-tdep.c (_initialize_shnbsd_tdep): Use gdbarch_register_osabi.

* Makefile.in (arm_tdep_h): Define and use instead of arm-tdep.h.
* arm-linux-tdep.c (_initialize_arm_linux_tdep): Use
gdbarch_register_osabi.
* arm-tdep.c (arm_abi_names, process_note_abi_tag_sections,
arm_abi_handler_list, arm_gdbarch_register_os_abi): Remove.
(get_elfosabi): Rename to...
(arm_elf_osabi_sniffer): ...this.  Adjust to use generic OS
ABI framework support routines.
(arm_gdbarch_init): Use generic OS ABI framework.
(arm_dump_tdep): Likewise.
(_initialize_arm_tdep): Likewise.
* arm-tdep.h: Include osabi.h.
(arm_abi): Remove.
(gdbarch_tdep): Remove arm_abi and abi_name members.  Add
osabi member.
(arm_gdbarch_register_os_abi): Remove prototype.
* armnbsd-tdep.c (arm_netbsd_aout_osabi_sniffer): New function.
(_initialize_arm_netbsd_tdep): Use gdbarch_register_osabi.

* Makefile.in (mips-tdep.o): Add osabi.h to dependency list.
* mips-tdep.c: Include osabi.h.
(gdbarch_tdep, mips_gdbarch_init, mips_dump_tdep): Use generic
OS ABI framework.
2002-05-21 15:36:03 +00:00
Jason Thorpe ab3b81262e * Makefile.in (sh_tdep_h): Define and use.
* config/sh/tm-sh.h (sh_osabi, sh_abi, gdbarch_tdep,
register enum): Move to...
* * sh-tdep.h: ...here.
* sh-tdep.c: Include sh-tdep.h.
* sh3-rom.c: Likewise.
* shnbsd-tdep.c: Likewise.
2002-05-17 06:55:49 +00:00
Jason Thorpe ea5bc2a606 * Makefile.in (ALLDEPFILES): Add nbsd-tdep.c.
(alphanbsd-tdep.o): Add nbsd-tdep.h to dependency list.
(nbsd-tdep.o): New dependency list.
* alphanbsd-tdep.c: Don't include solib-svr4.h.  Include
nbsd-tdep.h.
(alphanbsd_solib_svr4_fetch_link_map_offsets): Remove.
(alphanbsd_init_abi): Use nbsd_lp64_solib_svr4_fetch_link_map_offsets.
* nbsd-tdep.c: New file.
* nbsd-tdep.h: New file.
* shnbsd-tdep.c: Don't include solib-svr4.h.  Include
nbsd-tdep.h.
(shnbsd_solib_svr4_fetch_link_map_offsets): Remove.
(shnbsd_init_abi): Use nbsd_ilp32_solib_svr4_fetch_link_map_offsets.
* config/alpha/nbsd.mt (TDEPFILES): Add nbsd-tdep.o.
* config/sh/nbsd.mt (TDEPFILES): Ditto.
2002-05-11 22:14:19 +00:00
Jason Thorpe 20cb8cdaf3 * shnbsd-nat.c (fetch_inferior_registers): Use shnbsd_supply_reg.
(store_inferior_registers): Use shnbsd_fill_reg.
* shnbsd-tdep.c (sh_nbsd_supply_registers,
sh_nbsd_supply_register): Collapse into...
(shnbsd_supply_reg): ...this.
(sh_nbsd_fill_registers, sh_nbsd_fill_register): Collapse into...
(shnbsd_fill_reg): ...this.
(sh_nbsd_solib_svr4_fetch_link_map_offsets): Rename to...
(shnbsd_solib_svr4_fetch_link_map_offsets): ...this.
(fetch_core_registers): Use shnbsd_supply_reg.
(fetch_elfcore_registers): Use shnbsd_supply_reg.
(sh_nbsd_core_fns): Rename to...
(shnbsd_core_fns): ...this.
(sh_nbsd_elfcore_fns): Rename to...
(shnbsd_elfcore_fns): ...this.
(sh_nbsd_init_abi): Rename to...
(shnbsd_init_abi): ...this.
(_initialize_sh_nbsd_tdep): Rename to...
(_initialize_shnbsd_tdep): ...this.
* shnbsd-tdep.h (sh_nbsd_supply_registers,
sh_nbsd_supply_register, sh_nbsd_fill_registers,
sh_nbsd_fill_register): Remove prototypes.
(shnbsd_supply_reg, shnbsd_fill_reg): Add prototypes.
2002-05-11 19:30:27 +00:00
Jason Thorpe 4015edd13a * sh-nbsd-nat.c: Rename to...
* shnbsd-nat.c: ...this.
* sh-nbsd-tdep.c: Rename to...
* shnbsd-tdep.c: ...this.
* sh-nbsd-tdep.h: Rename to...
* shnbsd-tdep.h: ...this.
* config/sh/nbsd.mh: Use shnbsd-nat.o.
* config/sh/nbsd.mt: Use shnbsd-tdep.o.
2002-05-08 16:18:41 +00:00