Commit Graph

327 Commits

Author SHA1 Message Date
Joel Brobecker
e22b26cbff * hppa-tdep.c (prologue_inst_adjust_sp): Fix small confusion
in register number for addil instruction.
2005-01-01 12:28:21 +00:00
Mark Kettenis
8f4e467cb1 * hppa-tdep.c (hppa_frame_prev_register_helper): Make 64-bit safe. 2004-12-21 22:50:54 +00:00
Mark Kettenis
9738b0348b * hppa-tdep.c (hppa64_return_value): Fix previous commit. 2004-12-21 22:06:40 +00:00
Mark Kettenis
08a2711331 * hppa-tdep.c (hppa32_return_value): Move further down.
(hppa64_return_value): Re-implement.
2004-12-21 21:36:28 +00:00
Mark Kettenis
38ca4e0c24 * hppa-tdep.h (hppa_regnum): Add HPPA_DP_REGNUM, HPPA_RET0_REGNUM,
HPPA_RET1_REGNUM and HPPA64_FP4_REGNUM.
* hppa-tdep.c (hppa64_integral_or_pointer_p)
(hppa64_floating_p) New functions.
(hppa64_push_dummy_call): Re-implement.
(hppa32_register_type): Rename argument reg_nr to regnum.
(hppa64_register_type): Likewise.  Use HPPA64_FP4_REGNUM instead
of HPPA_FP4_REGNUM.
(hppa32_cannot_store_register): Renamed from
hppa_cannot_store_register.
(hppa64_cannot_store_register): New function.
(hppa_gdbarch_init): Set cannot_store_register and
cannot_fetch_register to hppa32_cannot_store_register or
hppa64_cannot_store_register when appropriate.
2004-12-19 21:09:40 +00:00
Randolph Chung
77d18ded6e 2004-12-17 Randolph Chung <tausq@debian.org>
* hppa-hpux-tdep.c (IS_32BIT_TARGET): New.
	(in_opd_section): New.
	(hppa32_hpux_find_global_pointer): Rename from
	hppa_hpux_som_find_global_pointer.
	(hppa64_hpux_find_global_pointer): New.
	(ldsid_pattern): New.
	(hppa_hpux_search_pattern): New.
	(hppa32_hpux_search_dummy_call_sequence): New.
	(hppa64_hpux_search_dummy_call_sequence): New.
	(hppa_hpux_find_import_stub_for_addr): New.
	(hppa_hpux_sr_for_addr): New.
	(hppa_hpux_find_dummy_bpaddr): New.
	(hppa_hpux_init_abi): Use IS_32BIT_TARGET predicate.
	(hppa_hpux_som_init_abi): Set find_global_pointer method to
	hppa32_hpux_find_global_pointer instead of
	hppa_hpux_som_find_global_pointer.
	(hppa_hpux_elf_init_abi): Set find_global_pointer method.
	* hppa-tdep.c (hppa_init_objfile_priv_data): New.
	(read_unwind_info): Use function to initialize objfile-private data.
	(hppa32_push_dummy_call): Don't automatically set the RP if there is
	a push_dummy_code method.
	(hppa64_push_dummy_call): Retrieve and set the global pointer.
	Don't automatically set the RP if there is a push_dummy_code method.
	* hppa-tdep.h (hppa_objfile_private): Add dummy_call_sequence_reg and
	dummy_call_sequence_addr members.
	(hppa_init_objfile_priv_data): New prototype.
2004-12-17 19:09:53 +00:00
Joel Brobecker
ff644745cd * hppa-tdep.c (hppa_lookup_stub_minimal_symbol): New function.
* hppa-tdep.h (hppa_lookup_stub_minimal_symbol): Add declaration.
        * solib-som.c (som_solib_create_inferior_hook): Replace stub
        msymbol search by call to hppa_lookup_stub_minimal_symbol. This
        extends the search to all objfiles, not just shared libraries.
        Remove unused variable.
2004-12-17 07:42:48 +00:00
Randolph Chung
1fb249302e 2004-12-14 Randolph Chung <tausq@debian.org>
* hppa-tdep.c (hppa_in_function_epilogue_p): New function.
	(hppa_gdbarch_init): Set in_epilogue_p method.
2004-12-14 16:35:37 +00:00
Randolph Chung
acf86d5407 2004-12-13 Randolph Chung <tausq@debian.org>
* Makefile.in (pa64solib_h, somsolib_h): Delete.
	(solib_pa64_h, solib_som_h): New.
	(HFILES_NO_SRCDIR, ALLDEPFILES): Replace somsolib.h with solib-som.h.
	(hppa-hpux-tdep.o, hpread.o): Update dependencies.
	(pa64solib.o, somsolib.o): Delete.
	(solib-pa64.o, solib-som.o): New.
	* hppa-hpux-tdep.c: Include new solib interfaces.
	(hppa_hpux_som_init_abi): Attach to SOM solib interface.
	(hppa_hpux_elf_init_abi): Attach to PA64 ELF solib interface.
	* hppa-tdep.c (internalize_unwinds): If solib_get_text_base method
	is available, use it to determine the base of unwind records.
	* hppa-tdep.h (gdbarch_tdep): Add new solib methods.
	* hpread.c: Replace somsolib.h with solib-som.h.
	(hpread_process_one_debug_symbol): Use target vector to get thread
	start address.
	* config/pa/hppa64.mt (TDEPFILES): Use new solib interface.
	* config/pa/hppahpux.mt (TDEPFILES): Likewise.
	* config/pa/hpux.mh (NATDEPFILES): Delete references to target objects.
	* config/pa/tm-hppah.h: Use new solib interface.
2004-12-13 04:06:16 +00:00
Andrew Cagney
39ee2ff0da 2004-12-12 Andrew Cagney <cagney@gnu.org>
* frame.c (get_prev_frame): When unwinding normal frames, check
	that the PC isn't zero.
	* hppa-tdep.c (hppa_stub_frame_unwind_cache): Delete check for a
	zero PC.
2004-12-12 16:26:17 +00:00
Randolph Chung
254ce0a11f 2004-12-07 Randolph Chung <tausq@debian.org>
* hppa-tdep.c (hppa_frame_prev_register_helper): Zero out the entire
	register for both 32- and 64-bit targets.
2004-12-08 06:12:40 +00:00
Randolph Chung
f77a2124d6 2004-12-07 Randolph Chung <tausq@debian.org>
* hppa-tdep.h (gdbarch_tdep): Add unwind_adjust_stub method.
	* hppa-hpux-tdep.c (hppa_hpux_unwind_adjust_stub): New function.
	(hppa_hpux_init_abi) Set unwind_adjust_stub method.
	* hppa-tdep.c (hppa_frame_cache): Call unwind_adjust_stub method
    	if defined.
2004-12-08 01:48:03 +00:00
Randolph Chung
f1b38a5791 2004-12-07 Randolph Chung <tausq@debian.org>
* hppa-tdep.c (hppa_stub_Frame_unwind_cache): Stop unwinding if
	unwinding from a frame with pc == 0.
	(hppa_stub_frame_this_id): Likewise.
	(hppa_stub_frame_prev_register): Only provide real values if the frame
	cache is not NULL.
2004-12-08 01:44:02 +00:00
Mark Kettenis
cc72850f95 * hppa-tdep.h (hppa_read_pc, hppa_write_pc, hppa_unwind_pc): New
prototypes.
* hppa-tdep.c (hppa_read_pc): Rename from hppa_target_read_pc.
Make global.  Remove HP-UX specific code.  Use
frame_unwind_register_unsigned instead of
frame_unwind_register_signed.
(hppa_write_pc): Rename from hppa_target_write_pc.  Make global.
Remove HP-UX specific code.
(hppa_unwind_pc): Make global.  Remove HP-UX specific code.
(hppa_frame_prev_register_helper): Set "flags" register to zero
for all unwound frames.
(hppa_gdbarch_init): Adjust.
* hppa-hpux-tdep.c (HPPA_HPUX_SS_INSYSCALL): New define.
(hppa_hpux_read_pc, hppa_hpux_write_pc)
(hppa_hpux_unwind_pc): New functions.
(hppa_hpux_init_abi): Set read_pc, write_pc and unwind_pc.
2004-12-07 18:04:11 +00:00
Randolph Chung
57dac9e17d 2004-12-05 Randolph Chung <tausq@debian.org>
* hppa-tdep.c (unwind_command): Print the stub type for stub unwind
	records.
2004-12-06 03:32:26 +00:00
Randolph Chung
fe46cd3ab5 2004-12-03 Randolph Chung <tausq@debian.org>
* gdbarch.sh (instruction_nullified): Delete.
	* gdbarch.c: Regenerate.
	* gdbarch.h: Regenerate.
	* hppa-tdep.c (hppa_target_read_pc): Adjust pc if instruction is
	nullified.
	(hppa_unwind_pc): Likewise.
	(hppa_instruction_nullified): Delete.
	(hppa_gdbarch_init): Don't set instruction_nullified method.
	* infrun.c (infwait_states): Remove infwait_nullified_state.
	(handle_inferior_event): Remove handling of infwait_nullified_state.
	Remove handling of nullified instructions.


testsuite/

	* gdb.arch/pa-nullify.exp: New file.
	* gdb.arch/pa-nullify.s: New file.
2004-12-03 23:59:53 +00:00
Randolph Chung
46905982ed 2004-11-30 Randolph Chung <tausq@debian.org>
* breakpoint.c (break_at_finish_command): Delete.
	(break_at_finish_command_1): Delete.
	(break_at_finish_at_depth_command): Delete.
	(break_at_finish_at_depth_command_1): Delete.
	(tbreak_at_finish_command): Delete.
	* hppa-tdep.c (_initialize_hppa_tdep): Remove deprecated xbreak, tbreak
	and bx commands.
2004-12-01 06:54:56 +00:00
Randolph Chung
3ca6495449 2004-11-23 Randolph Chung <tausq@debian.org>
* arch-utils.c (generic_instruction_nullified): New.
	* arch-utils.h (generic_instruction_nullified): New.
	* gdbarch.sh (instruction_nullified): New method.
	* gdbarch.c: Regenerate.
	* gdbarch.h: Regenerate.
	* infrun.c (INSTRUCTION_NULLIFIED): Delete.
	(handle_inferior_event): Replace INSTRUCTION_NULLIFIED with calls to
	new gdbarch method.
	* config/pa/tm-hppa.h (INSTRUCTION_NULLIFIED): Delete definition.
	* hppa-tdep.c (hppa_instruction_nullified): Remove prototype and make
	static.  Rewrite to work directly off the passed regcache.
	(hppa_gdbarch_init): Set instruction_nullified method.
2004-11-23 21:05:23 +00:00
Andrew Cagney
4991999e35 2004-11-12 Andrew Cagney <cagney@gnu.org>
* sparc-tdep.c: Replace VALUE_TYPE with value_type.
	* v850-tdep.c, sparc64-tdep.c, sh-tdep.c: Ditto.
	* sh64-tdep.c, s390-tdep.c, mcore-tdep.c: Ditto.
	* h8300-tdep.c, arm-linux-tdep.c, amd64-tdep.c: Ditto.
	* hppa-tdep.c, mips-tdep.c, m88k-tdep.c: Ditto.
	* m68hc11-tdep.c, m32r-tdep.c, ia64-tdep.c: Ditto.
	* frv-tdep.c, cris-tdep.c, avr-tdep.c, alpha-tdep.c: Ditto.
2004-11-13 02:15:33 +00:00
Randolph Chung
5aac166f58 2004-11-12 Randolph Chung <tausq@debian.org>
* hppa-tdep.c (hppa_skip_permanent_breakpoint): Move definition ...
	* hppa-hpux-tdep.c (hppa_skip_permanent_breakpoint): ... to here.
	* config/pa/tm-hppa.h (SKIP_PERMANENT_BREAKPOINT): Move definition ...
	* config/pa/tm-hppah.h (SKIP_PERMANENT_BREAKPOINT): ... to here.
2004-11-12 18:38:34 +00:00
Randolph Chung
a71f8c301e 2004-11-11 Randolph Chung <tausq@debian.org>
* hppa-tdep.c (skip_prologue_hard_way): Make static, add
	stop_after_branch parameter and use it to determine if we should look
	at the delay slot of the first branch insn to find prologue insns.
	(hppa_skip_prologue): Update comment and call to skip_prologue_hard_way.
	(hppa_frame_cache): Likewise.
2004-11-12 00:51:23 +00:00
Randolph Chung
50b2f48ac1 2004-11-11 Randolph Chung <tausq@debian.org>
* hppa-tdep.c (hppa_frame_cache): Properly handle the frame pointer
	register so that it can be unwound from anywhere in the prologue.
2004-11-12 00:48:12 +00:00
Randolph Chung
4a302917ab 2004-11-10 Randolph Chung <tausq@debian.org>
* hppa-tdep.c (hppa32_register_name, hppa64_register_name): Make static.
	(hppa32_push_dummy_call, hppa64_push_dummy_call): Likewise.
	(hppa_fetch_pointer_argument): Likewise.
	(hppa_frame_cache): Use safe_frame_unwind_memory instead of
	deprecated_read_memory_nobpt.
	(_initialize_hppa_tdep): Replace deprecated_add_show_from_set/
	add_set_cmd sequence with add_setshow_boolean_cmd.
2004-11-10 16:26:55 +00:00
Randolph Chung
d5c27f815b 2004-11-03 Randolph Chung <tausq@debian.org>
* hppa-tdep.c (hppa_frame_cache): Use frame_pc_unwind instead of
    frame_func_unwind to locate the unwind entry.
	(hppa_frame_this_id): Likewise.
2004-11-03 23:20:43 +00:00
Andrew Cagney
84674fe179 2004-10-31 Andrew Cagney <cagney@gnu.org>
* hppa-tdep.c (hppa_stub_unwind_sniffer): Replace
	IN_SOLIB_CALL_TRAMPOLINE with tdep.in_solib_call_trampoline.
	* hppa-tdep.h (struct gdbarch_tdep): Add in_solib_call_trampoline.
	* hppa-hpux-tdep.c (hppa_hpux_init_abi): Set same.
	* hppa-linux-tdep.c (hppa_linux_init_abi): Ditto.
2004-10-31 21:09:28 +00:00
Mark Kettenis
dfaf8edb15 * hppa-tdep.c (hppa_frame_cache): Add support for OpenBSD and
NetBSD system call stubs that store %rp in the ERP slot of the
stack frame.
2004-10-14 21:08:06 +00:00
Andrew Cagney
1f67027d6b 2004-07-31 Andrew Cagney <cagney@gnu.org>
* trad-frame.c (trad_frame_get_prev_register): Rename
	trad_frame_get_prev_register.
	* vax-tdep.c (vax_frame_prev_register): Update.
	* trad-frame.h: Update.
	* trad-frame.c (trad_frame_get_register): Update.
	* sparcobsd-tdep.c (sparc32obsd_frame_prev_register): Update.
	* sparcnbsd-tdep.c (sparc32nbsd_sigcontext_frame_prev_register):
	Update.
	* sparc64obsd-tdep.c (sparc64obsd_frame_prev_register): Update.
	* sparc64nbsd-tdep.c (sparc64nbsd_sigcontext_frame_prev_register):
	Update.
	* sparc64fbsd-tdep.c (sparc64fbsd_sigtramp_frame_prev_register):
	Update.
	* sparc64-sol2-tdep.c (sparc64_sol2_sigtramp_frame_prev_register):
	Update.
	* sparc-sol2-tdep.c (sparc32_sol2_sigtramp_frame_prev_register):
	Update.
	* sparc-linux-tdep.c (sparc32_linux_sigtramp_frame_prev_register):
	Update.
	* s390-tdep.c (s390_frame_prev_register)
	(s390_stub_frame_prev_register)
	(s390_sigtramp_frame_prev_register): Update.
	* rs6000-tdep.c (rs6000_frame_prev_register): Update.
	* ppc-linux-tdep.c (ppc_linux_sigtramp_prev_register): Update.
	* mips-tdep.c (mips_mdebug_frame_prev_register): Update.
	* m88k-tdep.c (m88k_frame_prev_register)
	* m68hc11-tdep.c (m68hc11_frame_prev_register)
	* m32r-tdep.c (m32r_frame_prev_register): Update.
	* hppa-tdep.c (hppa_frame_prev_register_helper)
	* frv-tdep.c (frv_frame_prev_register): Update.
	* d10v-tdep.c (d10v_frame_prev_register): Update.
	* cris-tdep.c (cris_frame_prev_register): Update.
	* avr-tdep.c (avr_frame_prev_register): Update.
	* arm-tdep.c (arm_prologue_prev_register)
	(arm_sigtramp_prev_register): Update.
2004-07-31 21:53:17 +00:00
Andrew Cagney
cb1a6d5f51 2004-07-26 Andrew Cagney <cagney@gnu.org>
* cli/cli-decode.c (deprecated_add_show_from_set): Deprecate.
	* xcoffsolib.c (_initialize_xcoffsolib): Update.
	* wince.c (_initialize_wince): Update.
	* win32-nat.c (_initialize_win32_nat): Update.
	* varobj.c (_initialize_varobj): Update.
	* valops.c (_initialize_valops): Update.
	* utils.c (initialize_utils, initialize_utils): Update.
	* tui/tui-win.c (_initialize_tui_win): Update.
	* top.c (init_main): Update.
	* symfile.c (_initialize_symfile): Update.
	* source.c (_initialize_source): Update.
	* somsolib.c (_initialize_som_solib): Update.
	* solib.c (_initialize_solib): Update.
	* solib-frv.c (_initialize_frv_solib): Update.
	* serial.c (_initialize_serial): Update.
	* ser-go32.c (_initialize_ser_dos, _initialize_ser_dos): Update.
	* remote.c (_initialize_remote, _initialize_remote): Update.
	* remote-vx.c (_initialize_vx): Update.
	* remote-utils.c (_initialize_sr_support): Update.
	* remote-sds.c (_initialize_remote_sds): Update.
	* remote-mips.c (_initialize_remote_mips): Update.
	* remote-e7000.c (_initialize_remote_e7000): Update.
	* proc-api.c (_initialize_proc_api): Update.
	* printcmd.c: Update.
	* parse.c (_initialize_parse): Update.
	* pa64solib.c (_initialize_pa64_solib): Update.
	* p-valprint.c (_initialize_pascal_valprint): Update.
	* monitor.c (_initialize_remote_monitors): Update.
	* mips-tdep.c (_initialize_mips_tdep): Update.
	* mcore-tdep.c (_initialize_mcore_tdep): Update.
	* maint.c (_initialize_maint_cmds): Update.
	* lin-lwp.c (_initialize_lin_lwp): Update.
	* language.c (_initialize_language): Update.
	* kod.c (_initialize_kod): Update.
	* infrun.c (set_schedlock_func, _initialize_infrun): Update.
	* i386-tdep.c (_initialize_i386_tdep): Update.
	* gdbtypes.c (build_gdbtypes, _initialize_gdbtypes): Update.
	* gdbarch.sh: Update.
	* gdbarch.c: Re-generate.
	* gdb-events.sh: Update.
	* gdb-events.c: Re-generate.
	* frame.c (_initialize_frame): Update.
	* exec.c: Update.
	* demangle.c (_initialize_demangler): Update.
	* dcache.c (_initialize_dcache): Update.
	* cris-tdep.c (_initialize_cris_tdep, cris_version_update): Update.
	* cp-valprint.c (_initialize_cp_valprint): Update.
	* corefile.c (_initialize_core): Update.
	* command.h: Update.
	* cli/cli-decode.h: Update.
	* cli/cli-cmds.c (init_cli_cmds): Update.
	* charset.c (_initialize_charset): Update.
	* breakpoint.c (_initialize_breakpoint): Update.
	* arm-tdep.c (_initialize_arm_tdep_initialize_arm_tdep): Update.
	* alpha-tdep.c (_initialize_alpha_tdep): Update.
	* aix-thread.c (_initialize_aix_thread): Update.
2004-07-26 14:53:06 +00:00
Andrew Cagney
1f602b35ff 2004-07-20 Andrew Cagney <cagney@gnu.org>
* breakpoint.c (deprecated_read_memory_nobpt): Rename
	read_memory_nobpt.
	* sparc-linux-tdep.c (sparc_linux_sigtramp_start): Update.
	* s390-tdep.c (s390_readinstruction, s390_in_function_epilogue_p)
	(s390_sigtramp_frame_sniffer): Update.
	* mn10300-tdep.c (mn10300_analyze_prologue): Update.
	* mipsnbsd-tdep.c (mipsnbsd_sigtramp_offset): Update.
	* mips-tdep.c (mips_fetch_instruction, mips16_fetch_instruction)
	(mips32_fetch_instruction): Update.
	* mcore-tdep.c (get_insn): Update.
	* m68klinux-tdep.c (m68k_linux_pc_in_sigtramp): Update.
	* i386nbsd-tdep.c (i386nbsd_sigtramp_offset): Update.
	* i386ly-tdep.c (i386lynx_saved_pc_after_call): Update.
	* i386-linux-tdep.c (i386_linux_sigtramp_start)
	(i386_linux_rt_sigtramp_start): Update.
	* i386-linux-nat.c (child_resume): Update.
	* hppa-tdep.c (skip_prologue_hard_way, hppa_frame_cache): Update.
	* hppa-linux-tdep.c (insns_match_pattern): Update.
	* gdbcore.h: Update.
	* frv-tdep.c (frv_gdbarch_adjust_breakpoint_address): Update.
	* frame.c (safe_frame_unwind_memory): Update.
	* amd64-linux-tdep.c (amd64_linux_sigtramp_start): Update.
	* alphanbsd-tdep.c (alphanbsd_sigtramp_offset): Update.
	* alpha-tdep.c (alpha_read_insn): Update.
2004-07-20 19:45:07 +00:00
Randolph Chung
1658da4930 2004-06-07 Randolph Chung <tausq@debian.org>
* hppa-tdep.c (hppa_frame_cache): Handle the cases when we start
	unwinding after sp has been saved to the stack but before the end
	of the prologue, and after the fp has been modified but before it has
	been saved to the stack.
	(hppa_frame_base_address, hppa_frame_base, hppa_frame_base_sniffer):
	Remove superfluous definitions.
	(hppa_gdbarch_init): Remove superfluous frame base sniffer.
2004-06-07 15:28:47 +00:00
Randolph Chung
3388d7ff41 2004-06-06 Randolph Chung <tausq@debian.org>
* hppa-hpux-tdep.c (hppa32_hpux_in_solib_call_trampoline)
	(hppa_hpux_skip_trampoline_code): Don't cache symbol values.
	* hppa-linux-tdep.c (hppa_linux_in_dyncall): Likewise.
	* hppa-tdep.c (hppa_symbol_address): New function definition.
	* hppa-tdep.h (hppa_symbol_address): New function declaration.
2004-06-07 02:17:29 +00:00
Randolph Chung
d49771efb5 2004-06-06 Randolph Chung <tausq@debian.org>
* hppa-tdep.h (struct value): Forward declaration.
	(gdbarch_tdep): Define tdep find_global_pointer method.
	* hppa-tdep.c (hppa32_push_dummy_call): Find the global pointer
	associated with the function we are trying to call, and write it
	to the gp register.
	(hppa32_convert_from_funct_ptr_addr): New function.
	(hppa_find_global_pointer): New function.
	(hppa_gdbarch_init): Set default find_global_pointer method; set
	convert_from_func_ptr_addr method.
	* hppa-linux-tdep.c (hppa_linux_find_global_pointer): New function.
	(hppa_linux_init_abi): Set find_global_pointer method.
	* Makefile.in (hppa-linux-tdep.o): Add value.h dependency.
2004-06-07 02:08:07 +00:00
Randolph Chung
7d9b040b53 2004-06-06 Randolph Chung <tausq@debian.org>
* gdbarch.sh (PUSH_DUMMY_CALL): Change CORE_ADDR func_addr argument
	to struct value *function.
	* gdbarch.c: Regenerate.
	* gdbarch.h: Likewise.
	* infcall.c (call_function_by_hand): Pass entire function value
	to push_dummy_call.

	* Makefile.in (alpha-tdep.o, frv-tdep.o, ia64-tdep.o, mips-tdep.o)
	(ppc-sysv-tdep.o, rs6000-tdep.o): Update dependencies.
	* alpha-tdep.c (alpha_push_dummy_call): Update call signature.
	* amd64-tdep.c (amd64_push_dummy_call): Likewise.
	* arm-tdep.c (arm_push_dummy_call): Likewise.
	* avr-tdep.c (avr_push_dummy_call): Likewise.
	* cris-tdep.c (cris_push_dummy_call): Likewise.
	* d10v-tdep.c (d10v_push_dummy_call): Likewise.
	* frv-tdep.c (frv_push_dummy_call): Likewise.
	* h8300-tdep.c (h8300_push_dummy_call): Likewise.
	* hppa-tdep.c (hppa32_push_dummy_call)
	(hppa64_push_dummy_call): Likewise.
	* i386-tdep.c (i386_push_dummy_call): Likewise.
	* ia64-tdep.c (ia64_push_dummy_call): Likewise.
	* m32r-tdep.c (m32r_push_dummy_call): Likewise.
	* m68hc11-tdep.c (m68hc11_push_dummy_call): Likewise.
	* m68k-tdep.c (m68k_push_dummy_call): Likewise.
	* m88k-tdep.c (m88k_push_dummy_call): Likewise.
	* mips-tdep.c (mips_eabi_push_dummy_call, mips_n32n64_push_dummy_call)
	(mips_o32_push_dummy_call, mips_o64_push_dummy_call): Likewise.
	* ppc-sysv-tdep.c (ppc_sysv_abi_push_dummy_call)
	(ppc64_sysv_abi_push_dummy_call): Likewise.
	* ppc-tdep.h (ppc_sysv_abi_push_dummy_call)
	(ppc64_sysv_abi_push_dummy_call): Likewise.
	* rs6000-tdep.c (rs6000_push_dummy_call): Likewise.
	* s390-tdep.c (s390_push_dummy_call): Likewise.
	* sh-tdep.c (sh_push_dummy_call_fpu)
	(sh_push_dummy_call_nofpu): Likewise.
	* sparc-tdep.c (sparc32_push_dummy_call): Likewise.
	* sparc64-tdep.c (sparc64_push_dummy_call): Likewise.
	* vax-tdep.c (vax_push_dummy_call): Likewise.
2004-06-07 02:02:55 +00:00
Mark Kettenis
8693c41972 * hppa-tdep.c (hppa_frame_prev_register_helper): Reimplement to
handle VALUEP being null.
2004-05-30 14:11:00 +00:00
Randolph Chung
6d1be3f186 2004-05-25 Randolph Chung <tausq@debian.org>
* hppa-tdep.c (hppa_fallback_frame_cache): Handle stack adjustment,
	and multiple stack unwinds.
	(hppa_stub_unwind_sniffer): Handle unwind from pc == 0.
2004-05-26 04:02:24 +00:00
Randolph Chung
69e7b95e2e 2004-05-24 Randolph Chung <tausq@debian.org>
* hppa-tdep.c (SR4EXPORT_LDIL_OFFSET, SR4EXPORT_LDO_OFFSET): Remove
	unused symbols.
	* hppa-tdep.h (HPPA_INSTRUCTION_SIZE): Remove, since there are no more
	references.
2004-05-25 03:55:23 +00:00
Randolph Chung
1b07b47063 2004-05-24 Randolph Chung <tausq@debian.org>
* hppa-tdep.c: Fix handling of 8-byte structures; they should not
	be "small_struct".
2004-05-24 15:36:31 +00:00
Randolph Chung
5859efe54e 2004-05-18 Randolph Chung <tausq@debian.org>
* hppa-tdep.c (hppa_frame_cache): Check for validity of r31 for
	millicode functions.
2004-05-19 03:07:58 +00:00
Randolph Chung
ed70ba000b 2004-05-18 Randolph Chung <tausq@debian.org>
* hppa-tdep.c (hppa_frame_cache): If a frame pointer is available, use
	it for unwinding the stack.
2004-05-19 02:38:28 +00:00
Randolph Chung
090ccbb714 2004-05-18 Randolph Chung <tausq@debian.org>
* hppa-tdep.c (hppa_stub_frame_unwind_cache): Don't do export stub
	handling for 64-bit HPUX (elf).
2004-05-19 02:15:22 +00:00
Randolph Chung
22b0923df5 2004-05-17 Randolph Chung <tausq@debian.org>
* hppa-tdep.c (hppa_stub_frame_unwind_cache): For HPUX stub unwinding,
	check to see if we are unwinding an export stub.  Export stubs clobber
	the %rp in the call path and stores the original rp in a stack slot.
2004-05-17 16:46:06 +00:00
Randolph Chung
cea96d64fe 2004-05-17 Randolph Chung <tausq@debian.org>
* hppa-tdep.c: Remove superfluous #include's.
	* Makefile.in (hppa-tdep.o): Update dependencies.
2004-05-17 15:16:39 +00:00
Randolph Chung
f08f6a4ad5 2004-05-17 Randolph Chung <tausq@debian.org>
* hppa-tdep.c (THREAD_INITIAL_FRAME_SYMBOL): Delete unused symbol.
	(THREAD_INITIAL_FRAME_SYM_LEN): Likewise.
	(unwind_command, hppa_alignof, prologue_inst_adjust_sp)
	(is_branch, inst_saves_gr, inst_saves_fr, compare_unwind_entries)
	(read_unwind_info, internalize_unwinds, record_text_segment_lowaddr):
	Remove static function declarations.
2004-05-17 14:59:16 +00:00
Randolph Chung
f4ca1d1f22 2004-05-07 Randolph Chung <tausq@debian.org>
* hppa-tdep.c (skip_prologue_hard_way, hppa_frame_cache): Use
	read_memory_nobpt for code reading when doing frame unwinding.
	* hppa-linux-tdep.c (insns_match_pattern): Likewise.
2004-05-08 03:59:34 +00:00
Randolph Chung
0da28f8a58 2004-05-07 Randolph Chung <tausq@debian.org>
* hppa-tdep.c (hppa_frame_prev_register_helper): New function to
	do common handling of the pcoqt register.
	(hppa_frame_prev_register, hppa_stub_frame_prev_register): Convert
	to use helper function.
	(hppa_frame_unwind_sniffer): Only use if unwind entry is present.
	(hppa_fallback_frame_cache, hppa_fallback_frame_this_id)
	(hppa_fallback_frame_prev_register, hppa_fallback_frame_unwind): New
	generic fallback unwinder when all else fails.
	(hppa_gdbarch_init): Add fallback sniffer.
	* hppa-tdep.h (hppa_frame_prev_register_helper): Prototype.
	* hppa-linux-tdep.c (hppa_linux_sigtramp_frame_prev_register): Convert
	to use helper function.
2004-05-08 03:17:57 +00:00
Randolph Chung
34f75cc19f 2004-05-06 Randolph Chung <tausq@debian.org>
* config/pa/tm-hppa.h (RO_REGNUM, FLAGS_REGNUM, RP_REGNUM)
	(HPPA_FP_REGNUM, HPPA_SP_REGNUM, SAR_REGNUM, IPSW_REGNUM)
	(PCOQ_HEAD_REGNUM, PCSQ_HEAD_REGNUM, PCOQ_TAIL_REGNUM, PCSQ_TAIL_REGNUM)
	(EIEM_REGNUM, IIR_REGNUM, ISR_REGNUM, IOR_REGNUM, SR4_REGNUM)
	(RCR_REGNUM, PID0_REGNUM, PID1_REGNUM, PID2_REGNUM, PID3_REGNUM)
	(CCR_REGNUM, TR0_REGNUM, CR27_REGNUM, HPPA_FP0_REGNUM, FP4_REGNUM)
	(ARG0_REGNUM, ARG1_REGNUM, ARG2_REGNUM, ARG3_REGNUM): Move *_REGNUM
	definitions ...
	* hppa-tdep.h: ... to here, with HPPA_ prefix.
	* Makefile.in (hppah-nat.o): Add $(hppa_tdep_h)
	* hppa-hpux-tdep.c (hppa32_hpux_frame_find_saved_regs_in_sig)
	(hppa64_hpux_frame_find_saved_regs_in_sig)
	(child_get_current_exception_event): Add HPPA_ prefix to *_REGNUM usage.
	* hppa-linux-nat.c (GR_REGNUM, TR_REGNUM, greg_map): Likewise.
	* hppa-linux-tdep.c (hppa_dwarf_reg_to_regnum)
	(hppa_linux_target_write_pc, hppa_linux_sigtramp_frame_unwind_cache)
	(hppa_linux_sigtramp_frame_prev_register): Likewise.
	* hppa-tdep.c (hppa32_return_value, hppa64_return_value)
	(hppa32_push_dummy_call, hppa64_push_dummy_call, hppa64_frame_align)
	(hppa_target_read_pc, hppa_target_write_pc, hppa_frame_cache)
	(hppa_frame_prev_register, hppa_stub_frame_unwind_cache)
	(hppa_stub_frame_prev_register, hppa_unwind_dummy_id)
	(hppa_skip_permanent_breakpoint, hppa_instruction_nullified)
	(hppa32_register_type, hppa_cannot_store_register)
	(hppa_fetch_pointer_argument, hppa_pseudo_register_read): Likewise.
	* hppah-nat.c (store_inferior_registers, fetch_register): Likewise.
	* hpread.c (hpread_process_one_debug_symbol): Likewise.
	* pa64solib.c (pa64_solib_have_load_event)
	(pa64_solib_have_unload_event, pa64_solib_loaded_library_pathname)
	(pa64_solib_unloaded_library_pathname): Likewise.
	* somsolib.c (som_solib_have_load_event, som_solib_have_unload_event)
	(som_solib_library_pathname): Likewise.
2004-05-07 05:48:50 +00:00
Randolph Chung
50306a9d6e 2004-04-24 Randolph Chung <tausq@debian.org>
* configure.host (hppa*-*-linux*): New target.
	* configure.tgt (hppa*-*-linux*): Likewise.
	* hppa-tdep.c (hppa_gdbarch_init): Set cannot_fetch_register, move
	gdbarch_init_osabi() call earlier so that osabi-specific frame
	unwinders can be registered first.
	* config/djgpp/fnchange.lst: Add entries for hppa-linux-tdep.c and
	hppa-linux-nat.c.
	* config/pa/tm-hppa.h (ISR_REGNUM, PID0_REGNUM, PID1_REGNUM)
	(PID2_REGNUM, PID3_REGNUM): Add definitions of some register numbers.
	* config/pa/linux.mh: New file.
	* config/pa/linux.mt: New file.
	* config/pa/nm-linux.h: New file.
	* config/pa/xm-linux.h: New file.
	* hppa-linux-nat.c: New file.
	* hppa-linux-tdep.c: New file.
2004-04-29 03:36:50 +00:00
Randolph Chung
2a6228efce 2004-04-28 Randolph Chung <tausq@debian.org>
* hppa-tdep.c (hppa32_return_value): Handle both 4- and 8-byte fp
	return values.
	(hppa32_push_dummy_call): Fix small struct and floating point argument
	passing, and make sure the stack frame is properly aligned.
2004-04-29 03:25:35 +00:00
Randolph Chung
7f07c5b609 2004-04-23 Randolph Chung <tausq@debian.org>
* hppa-tdep.c (hppa_stub_unwind_cache, hppa_stub_frame_unwind_cache)
	(hppa_stub_frame_this_id, hppa_stub_frame_prev_register)
	(hppa_stub_frame_unwind, hppa_stub_unwind_sniffer): New stub unwinder
	for handling stackless frames.
	(hppa_gdbarch_init): Link in hppa_stub_unwind_sniffer.
2004-04-24 06:13:32 +00:00
Randolph Chung
9f7194c374 2004-04-23 Randolph Chung <tausq@debian.org>
* hppa-tdep.c (hppa_frame_cache): Handle the case when frame unwind
	starts at a pc before the frame is created.
2004-04-24 06:10:01 +00:00