Commit Graph

6 Commits

Author SHA1 Message Date
Jason Thorpe accc6d1ff3 * alpha-tdep.h (gdbarch_tdep): Add jb_pc and jb_elt_size members.
* alpha-linux-tdep.c (alpha_linux_init_abi): Initialize
tdep->jb_pc and tdep->jb_elt_size.
* alpha-osf1-tdep.c (alpha_osf1_init_abi): Likewise.
* alphafbsd-tdep.c (alphafbsd_init_abi): Likewise.
* alphanbsd-tdep.c (alphanbsd_init_abi): Likewise.
* alpha-nat.c (get_longjmp_target): Remove.
(JB_ELEMENT_SIZE): Ditto.
(JB_PC): Ditto.
* alpha-tdep.c (alpha_get_longjmp_target): New function.
(alpha_gdbarch_init): Default tdep->jb_pc to -1.  If the
OS ABI sets jb_pc to a valid value, set gdbarch_get_longjmp_target
to alpha_get_longjmp_target.
(alpha_dump_tdep): Report tdep->jb_pc and tdep->jb_elt_size.
* config/alpha/nm-linux.h (GET_LONGJMP_TARGET): Remove.
* config/alpha/nm-osf.h (GET_LONGJMP_TARGET): Remove.
2002-04-26 01:08:19 +00:00
Jason Thorpe 36a6271d5e * Makefile.in (ALLDEPFILES): Add alpha-osf1-tdep.c.
(alpha-osf1-tdep.o): New dependency list.
* alpha-tdep.h (gdbarch_tdep): Add dynamic_sigtramp_offset
and skip_sigtramp_frame members.
* alpha-linux-tdep.c: Include gdbcore.h.
(alpha_linux_sigtramp_offset): Change return type to LONGEST.
(alpha_linux_init_abi): Initialize tdep->dynamic_sigtramp_offset.
* alpha-osf1-tdep.c: New file.
* alpha-tdep.c (alpha_osf_skip_sigtramp_frame): Moved to
alpha-osf1-dep.c.
(alpha_frame_past_sigtramp_frame): New function.
(alpha_dynamic_sigtramp_offset): Ditto.
(alpha_proc_desc_is_dyn_sigtramp): Ditto.
(alpha_set_proc_desc_is_dyn_sigtramp): Ditto.
(ALPHA_PROC_SIGTRAMP_MAGIC): Define.
(push_sigtramp_desc): Use alpha_set_proc_desc_is_dyn_sigtramp.
(after_prologue): Use alpha_proc_desc_is_dyn_sigtramp.
(find_proc_desc): Use alpha_dynamic_sigtramp_offset.
(alpha_frame_chain): Use alpha_frame_past_sigtramp_frame.
(alpha_init_extra_frame_info): Use alpha_proc_desc_is_dyn_sigtramp.
(alpha_pop_frame): Use alpha_proc_desc_is_dyn_sigtramp.
(alpha_gdbarch_init): Initialize tdep->dynamic_sigtramp_offset
and tdep->skip_sigtramp_frame.  Set gdbarch_skip_trampoline_code
to find_solib_trampoline_target.
* config/alpha/alpha-osf1.mt (TDEPFILES): Add alpha-osf1-tdep.o.
* config/alpha/tm-alpha.h: Remove inclusion of regcache.h.
(SKIP_TRAMPOLINE_CODE): Remove.
(PROC_DESC_IS_DYN_SIGTRAMP): Ditto.
(SET_PROC_DESC_IS_DYN_SIGTRAMP): Ditto.
(DYNAMIC_SIGTRAMP_OFFSET): Ditto.
(FRAME_PAST_SIGTRAMP_FRAME): Ditto.
* config/alpha/tm-alphalinux.h (PROC_DESC_IS_DYN_SIGTRAMP): Remove.
(PROC_SIGTRAMP_MAGIC): Ditto.
(PROC_DESC_IS_DYN_SIGTRAMP): Ditto.
(SET_PROC_DESC_IS_DYN_SIGTRAMP): Ditto.
(SET_PROC_DESC_IS_DYN_SIGTRAMP): Ditto.
(DYNAMIC_SIGTRAMP_OFFSET): Ditto.
(FRAME_PAST_SIGTRAMP_FRAME): Ditto.
2002-04-25 02:28:57 +00:00
Jason Thorpe 4bcbd6cb5f * config/alpha/tm-alpha.h: Move alpha_software_single_step
prototype from here...
* alpha-tdep.h: ...to here.
2002-04-21 20:27:29 +00:00
Jason Thorpe 44dffaac91 * alpha-tdep.c (alpha_abi_handler): New structure to describe
an Alpha ABI variant.
(alpha_abi_handler_list): Declare.
(alpha_gdbarch_register_os_abi): New function.
(alpha_gdbarch_init): Give registered ABI variant handlers a
chance to tweak the gdbarch once we have set up defaults.
* alpha-tdep.h: Prototype alpha_gdbarch_register_os_abi.
2002-04-21 18:24:48 +00:00
Jason Thorpe d9b023ccd4 * alpha-tdep.h (gdbarch_tdep): Add vm_min_address member.
* alpha-tdep.c (heuristic_proc_start): Use vm_min_address
from gdbarch_tdep rather than a constant.
(alpha_gdbarch_init): Initialize tdep->vm_min_address to
the default text address for all Alpha Unix ABIs.
(alpha_dump_tdep): Report the value of tdep->vm_min_address.
* config/alpha/tm-alpha.h (VM_MIN_ADDRESS): Delete.
2002-04-21 17:30:09 +00:00
Jason Thorpe dc129d8238 * alpha-tdep.h: New file. Includes several Alpha target constants
taken from...
* config/alpha/tm-alpha.h: ...here.  Remove macros that we now
let gdbarch deal with.
(GDB_MULTI_ARCH): Define as GDB_MULTI_ARCH_PARTIAL.
* Makefile.in (alpha-nat.o): Add alpha-tdep.h and $(BFD_SRC)/elf-bfd
to dependency list.
* alpha-nat.c: Include alpha-tdep.h.  Update for adjusted
Alpha target register names.
* alphabsd-nat.c: Likewise.
* alpha-tdep.c: Include alpha-tdep.h.  Update for adjusted
Alpha target register names.  Make serveral routines static.
(alpha_get_saved_register): New function.
(alpha_abi_names): New.
(process_note_abi_tag_sections): New function.
(get_elfosabi): New function.
(alpha_gdbarch_init): New function.
(alpha_dump_tdep): New function.
(_initialize_alpha_tdep): Register alpha_gdbarch_init.
2002-04-21 16:52:39 +00:00