Commit Graph

7065 Commits

Author SHA1 Message Date
Michael Snyder
f43845b38e 2002-04-24 Michael Snyder <msnyder@redhat.com>
* arm-tdep.c (arm_scan_prologue): Move "mov ip, sp" into the
        loop.  Add handling for "str lr, [sp, #-4]!" and for saves
        of argument regs ("str r(0123), [r11, #-nn"]).
        (arm_skip_prologue): Better handling for frameless functions.
        Treat "mov ip, sp" as optional.  Recognize "str lr, [sp, #-4]".
        (arm_skip_prologue): Recognize str r(0123), [r11, #-nn].
2002-04-24 21:22:06 +00:00
Andrew Cagney
a0abec0350 * arm-tdep.c (arm_gdbarch_init): Add comment that NUM_REGS nor
NUM_PSEUDO_REGS can be used.
2002-04-24 18:25:45 +00:00
Andrew Cagney
d7bd68ca3c * arch-utils.h: Update copyright.
* gdbarch.sh (PC_IN_SIGTRAMP): Add.
* gdbarch.h, gdbarch.c: Re-generate.

* inferior.h (IN_SIGTRAMP): Delete definition.
* arch-utils.c (legacy_pc_in_sigtramp): New function.
* arch-utils.h (legacy_pc_in_sigtramp): Declare.

* mips-tdep.c (mips_init_extra_frame_info): Use PC_IN_SIGTRAMP.
(mips_dump_tdep): Do not print value of IN_SIGTRAMP.
* hppa-tdep.c (pc_in_interrupt_handler):  Use PC_IN_SIGTRAMP.
(find_proc_framesize): Ditto.
* alpha-tdep.c (alpha_osf_skip_sigtramp_frame): Ditto.
(alpha_init_extra_frame_info): Ditto.
* infrun.c (handle_inferior_event): Ditto.
(handle_inferior_event): Ditto.
(check_sigtramp2): Ditto.
* blockframe.c (create_new_frame): Ditto.
(get_prev_frame): Ditto.
* ppc-linux-tdep.c: Update comments.
* i386-linux-tdep.c: Update comments.
* breakpoint.c (bpstat_what): Update comment.

* gdbint.texinfo (Target Architecture Definition): Replace
IN_SIGTRAMP with PC_IN_SIGTRAMP.
2002-04-24 16:28:16 +00:00
Michal Ludvig
d06f167ab3 2002-04-24 Michal Ludvig <mludvig@suse.cz>
* gdbserver/linux-low.c (regsets_fetch_inferior_registers),
	(regsets_store_inferior_registers): Removed cast to int from
	ptrace() calls.
	* gdbserver/regcache.h: Added declaration of struct inferior_info.
2002-04-24 15:33:55 +00:00
David S. Miller
21d83aa55a 2002-04-24 David S. Miller <davem@redhat.com>
* i960-tdep.c (register_in_window_p): New function.
	(i960_find_saved_register): Use it instead of
	REGISTER_IN_WINDOW_P.
	* config/i960/tm-i960.h (REGISTER_IN_WINDOW): Delete.

2002-04-24  David S. Miller  <davem@redhat.com>

	* gdbint.texinfo (REGISTER_IN_WINDOW): Delete definition.
2002-04-24 13:48:39 +00:00
David S. Miller
4867e41ec7 2002-04-24 David S. Miller <davem@redhat.com>
* symtab.h (find_stab_function_addr): Kill extern.
	* minsyms.c (find_stab_function_addr): Remove from here...
	* dbxread.c: ... to here, and mark it static.
2002-04-24 08:00:54 +00:00
David S. Miller
69cdf6a234 2002-04-20 David S. Miller <davem@redhat.com>
* sparc-tdep.c (sparc_pop_frame): Only need to allocate
	SPARC_INTREG_SIZE * 16 bytes for reg_temp.
2002-04-24 07:12:27 +00:00
David S. Miller
5a595886e4 2002-04-21 David S. Miller <davem@redhat.com>
* remote-vxsparc.c (vx_read_register): Fix typo, we want
	REGISTER_RAW_SIZE of SP_REGNUM not CORE_ADDR.
	(vx_write_register): Likewise.
2002-04-24 05:34:52 +00:00
Michael Snyder
11d3b27da0 2002-04-22 Michael Snyder <msnyder@redhat.com>
* arm-tdep.c (arm_skip_prologue): Recognize "sub sp, sp, #nn".
2002-04-23 18:10:06 +00:00
Joel Brobecker
1da1a19239 * source.c (is_regular_file): New function.
(openp): Check wether file to open is a regular file
        to avoid opening directories.
2002-04-23 11:09:10 +00:00
Jason Thorpe
baa6f10b32 * findvar.c (extract_signed_integer): Cast printf argument
to suppress format warning.
(extract_unsigned_integer): Likewise.
* infcmd.c (registers_info): Likewise.
* top.c (get_prompt_1): Likewise.
* valops.c (value_assign): Likewise.
* valprint.c (print_decimal): Likewise.
2002-04-23 03:00:57 +00:00
H.J. Lu
b2c4da8122 2002-04-22 H.J. Lu (hjl@gnu.org)
* c-exp.y (typebase): Support

	[long|long long|short] [signed|unsigned] [int|]

	and

	signed [long|long long|short] int
2002-04-23 02:06:54 +00:00
Jason Thorpe
f267bd6a08 * Makefile.in (vax-tdep.o): Add $(arch_utils_h), $(inferior_h),
and vax-tdep.h.
* vax-tdep.h: New file.
* vax-tdep.c: Include inferior.h, arch-utils.h, and vax-tdep.h.
Make several routines static.
(vax_get_saved_register): New function.
(vax_gdbarch_init): New function.
(_initialize_vax_tdep): Register vax_gdbarch_init.
* config/vax/tm-vax.h: Set GDB_MULTI_ARCH to GDB_MULTI_ARCH_PARTIAL.
Remove macros now under the control of gdbarch.
2002-04-23 00:53:31 +00:00
Michael Snyder
da3c6d4a30 2002-04-22 Michael Snyder <msnyder@redhat.com>
* arm-tdep.c: Some whitespace and coding standards tweaks.
2002-04-22 23:22:04 +00:00
Jason Thorpe
a33f755889 * vax-tdep.c: Include regcache.h.
(vax_call_dummy_words): New.
(sizeof_vax_call_dummy_words): New.
(vax_fix_call_dummy): New function.
(vax_saved_pc_after_call): Ditto.
* config/vax/tm-vax.h: Don't include regcache.h.
(SAVED_PC_AFTER_CALL): Use vax_saved_pc_after_call.
(CALL_DUMMY): Remove.
(CALL_DUMMY_WORDS): Define.
(SIZEOF_CALL_DUMMY_WORDS): Define.
(FIX_CALL_DUMMY): Use vax_fix_call_dummy.
2002-04-22 23:13:50 +00:00
Michael Snyder
47a73475e9 2002-04-18 Michael Snyder <msnyder@redhat.com>
* arm-tdep.h: Change regnum defines to enums for ease of debugging.
2002-04-22 22:46:40 +00:00
Jason Thorpe
52efde73b9 * vax-tdep.c (vax_frame_chain): New function.
(vax_push_dummy_frame): Ditto.
(vax_pop_frame): Ditto.
* config/vax/tm-vax.h (FRAME_CHAIN): vax_frame_chain.
(FRAMELESS_FUNCTION_INVOCATION): Use
generic_frameless_function_invocation_not.
(PUSH_DUMMY_FRAME): Use vax_push_dummy_frame.
(POP_FRAME): Use vax_pop_frame.
2002-04-22 21:32:05 +00:00
Jason Thorpe
ea74468cd0 * vax-tdep.c (vax_store_struct_return): New function.
(vax_extract_return_value): Ditto.
(vax_store_return_value): Ditto.
(vax_extract_struct_value_address): Ditto.
* config/vax/tm-vax.h (STORE_STRUCT_RETURN): Use
vax_store_struct_return.
(EXTRACT_RETURN_VALUE): Use vax_extract_return_value.
(STORE_RETURN_VALUE): Use vax_store_return_value.
(EXTRACT_STRUCT_VALUE_ADDRESS): Use vax_extract_struct_value_address.
2002-04-22 20:59:28 +00:00
Jason Thorpe
5516aa921e * vax-tdep.c (vax_frame_saved_pc): New function.
(vax_frame_args_address_correct): Ditto.
(vax_frame_args_address): Ditto.
(vax_frame_locals_address): Ditto.
(vax_frame_num_args): Move code to be in proximity to
other frame-related functions.
* config/vax/tm-vax.h (INNER_THAN): Use core_addr_lessthan.
(FRAME_SAVED_PC): Use vax_frame_saved_pc.
(FRAME_ARGS_ADDRESS_CORRECT): Use vax_frame_args_address_correct.
(FRAME_ARGS_ADDRESS): Use vax_frame_args_address.
(FRAME_LOCALS_ADDRESS): Use vax_frame_locals_address.
2002-04-22 20:38:41 +00:00
H.J. Lu
36af0b355e 2002-04-22 H.J. Lu (hjl@gnu.org)
* Makefile.in (FLAGS_TO_PASS): Add libdir, mandir, datadir and
	includedir.
2002-04-22 20:19:52 +00:00
Jason Thorpe
ab62c900e2 * vax-tdep.c (vax_frame_init_saved_regs): New function.
* config/vax/tm-vax.h (FRAME_FIND_SAVED_REGS): Remove.
(FRAME_INIT_SAVED_REGS): New macro.
2002-04-22 19:44:05 +00:00
Jason Thorpe
7232b100b9 * MAINTAINERS: Reflect that the Alpha target has been multi-arch'd. 2002-04-22 17:01:55 +00:00
Jason Thorpe
b70d2aeea9 * alpha-nat.c (get_longjmp_target): Use ALPHA_* constants
where needed.
(fetch_osf_core_registers): Likewise.
(supply_gregset): Likewise.
2002-04-22 15:59:11 +00:00
Joel Brobecker
a0e8a2d152 Document some changes to address internal-errors on Tru64 5.1.
Add missing blank line before one of the previous entries.
2002-04-22 10:20:44 +00:00
Jason Thorpe
51eb8b0846 * vax-tdep.c: Update copyright years.
(vax_register_name): New function.
(vax_register_byte): Ditto.
(vax_register_raw_size): Ditto.
(vax_register_virtual_size): Ditto.
(vax_register_virtual_type): Ditto.
* config/vax/tm-vax.h: Update copyright years.
(REGISTER_NAMES): Remove.
(REGISTER_NAME): Define.
(REGISTER_BYTE): Use vax_register_byte.
(REGISTER_RAW_SIZE): Use vax_register_raw_size.
(REGISTER_VIRTUAL_SIZE): Use vax_register_virtual_size.
(REGISTER_VIRTUAL_TYPE): Use vax_register_virtual_type.
2002-04-22 06:56:04 +00:00
David S. Miller
4eb8c7fc85 Revert Sparc OS abi changes. 2002-04-22 03:51:34 +00:00
Andrew Cagney
6cc1c0a886 * config/sparc/tm-sparc.h (sparc_skip_prologue): Restore
declaration
* arc-tdep.c (arc_prologue_frameless_p): Fix syntax error.
2002-04-22 02:18:59 +00:00
David S. Miller
99633aa4f8 2002-04-20 David S. Miller <davem@redhat.com>
* sparc-tdep.h: New file.
	* sparc-tdep.c (elf-bfd.h): Include.
	(SPARC_HAS_FPU, FP_REGISTER_BYTES, FP_MAX_REGNUM,
	SPARC_INTREG_SIZE, DUMMY_REG_SAVE_OFFSET, gdbarch_tdep,
	CALL_DUMMY_CALL_OFFSET): Move out to sparc-tdep.h
	(sparc_dump_tdep): New function.
	(_initialize_sparc_tdep): Use gdbarch_register instead of
	register_gdbarch_init which is deprecated.
	(process_note_abi_tag_sections, sparc_abi_handler,
	sparc_abi_handler_list, sparc_gdbarch_register_os_abi): New.
	(sparc_gdbarch_init): Determine elf os ident key based upon
	either the elf header or by using process_note_abi_tag_sections.
	Fix 'gdbarch already exists' test by comparing os_ident as well.
	As the last action, invoke OS abi_handler if installed.
2002-04-22 01:02:02 +00:00
David S. Miller
9319a2feca 2002-04-21 David S. Miller <davem@redhat.com>
* arch-utils.c (generic_prologue_frameless_p): Kill
	SKIP_PROLOGUE_FRAMELESS_P code.
	* config/arc/tm-arc.h (SKIP_PROLOGUE_FRAMELESS_P): Delete
	references.
	(PROLOGUE_FRAMELESS_P, arc_prologue_frameless_p): New.
	* arc-tdep.c (arc_prologue_frameless_p): Implement.
	* config/arc/tm-sparc.h (SKIP_PROLOGUE_FRAMELESS_P): Delete
	references.
	(PROLOGUE_FRAMELESS_P, sparc_prologue_frameless_p): New.
	* sparc-tdep.c (sparc_prologue_frameless_p): Implement.
	(sparc_gdbarch_init): Pass it to
	set_gdbarch_prologue_frameless_p.
2002-04-22 00:27:39 +00:00
Jason Thorpe
e9ed6d011c * Makefile.in (ALLDEPFILES): Add alphabsd-nat.c.
(alphabsd-nat.o): New dependency list.
2002-04-21 22:03:10 +00:00
Jason Thorpe
3601203380 * Makefile.in (ALLDEPFILES): Add alpha-linux-tdep.c and
alphafbsd-tdep.c.
(alpha-linux-tdep.o): New dependency list.
(alphafbsd-tdep.o): Likewise.
2002-04-21 21:53:44 +00:00
Jason Thorpe
3379287ac9 * alpha-linux-tdep.c: New file. Move alpha_linux_sigtramp_offset
to here...
* alpha-tdep.c: ...from here.
* config/alpha/alpha-linux.mt (TDEPFILES): Add alpha-linux-tdep.o.
2002-04-21 21:07:58 +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
Andrew Cagney
b31da25ee5 * frame.h (selected_frame_level): Document as deprecated.
(frame_relative_level): Declare.
* stack.c (frame_relative_level): New function.
(selected_frame_level): Document as deprecated.
(select_frame): Do not set the selected_frame_level.

* stack.c (frame_info, record_selected_frame): Update.
(frame_command, current_frame_command): Update.
(up_silently_base, up_command, down_silently_base): Update.
(down_command): Update.
* inflow.c (kill_command): Update.
* tracepoint.c (finish_tfind_command): Update.
* corelow.c (core_open): Update.
* thread.c (info_threads_command): Update.
(do_captured_thread_select): Update.
* infcmd.c (finish_command): Update.
* breakpoint.c (insert_breakpoints, do_enable_breakpoint): Update.
2002-04-21 20:23:34 +00:00
Jason Thorpe
9c1d6fe553 * config/alpha/tm-fbsd.h (FRAME_CHAIN_VALID): Remove. 2002-04-21 20:17:28 +00:00
Andrew Cagney
ab89facf70 * arm-tdep.c (arm_breakpoint_from_pc): Make static. Make return
type const.
2002-04-21 19:58:35 +00:00
Jason Thorpe
82a4efa15c * alphafbsd-tdep.c: Update copyright years. Include
alpha-tdep.h.
(alphafbsd_use_struct_convention): Make static.
(alphafbsd_init_abi): New function.
(_initialize_alphafbsd_tdep): New function.
* config/alpha/tm-fbsd.h: Update copyright years.
(USE_STRUCT_CONVENTION): Remove.
2002-04-21 19:47:19 +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
65585be4ba * alpha-tdep.c (alpha_gdbarch_init): Set coerce_float_to_double
to standard_coerce_float_to_double.
* config/alpha/tm-alpha.h (COERCE_FLOAT_TO_DOUBLE): Remove.
2002-04-21 17:54:50 +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
Andrew Cagney
d49d1e0a2f * frame.c (find_saved_register): Delete #ifdef
HAVE_REGISTER_WINDOWS code.
* config/sparc/tm-sparc.h: Update comments.
* config/i960/tm-i960.h (HAVE_REGISTER_WINDOWS): Delete macro.
* gdbint.texinfo (Target Architecture Definition): Delete
definition of HAVE_REGISTER_WINDOWS.
2002-04-21 15:52:35 +00:00
Andrew Cagney
92e8c9ed1f * i960-tdep.c (i960_find_saved_register): New function.
(i960_get_saved_register): New function.
* config/i960/tm-i960.h (GET_SAVED_REGISTER): Define.
(i960_get_saved_register): Declare.
* config/i960/tm-i960.h, i960-tdep.c: Update copyright.
2002-04-21 15:19:06 +00:00
David S. Miller
e192511835 2002-04-20 David S. Miller <davem@redhat.com>
* sparc-nat.c (store-inferior_registers): Fix ambiguous else.
2002-04-21 05:34:06 +00:00
Andrew Cagney
29673b2905 * arm-tdep.c (arm_gdbarch_init): Use gdbarch_num_pseudo_regs
instead of NUM_PSEUDO_REGS.
2002-04-21 03:46:44 +00:00
David S. Miller
6c86dcd550 2002-04-20 David S. Miller <davem@redhat.com>
* config/sparc/tm-linux.h (GDB_MULTI_ARCH): Define to
	GDB_MULTI_ARCH_PARTIAL
	* config/sparc/tm-sp64linux.h (GDB_MULTI_ARCH): Do not
	define, let tm-sp64.h do it.
2002-04-21 01:51:00 +00:00
Jason Thorpe
aa40ec9031 * frame.c (find_saved_register): Avoid a NULL pointer
dereference and actually walk the frame list.
2002-04-20 23:54:28 +00:00
Andrew Cagney
0f79675b65 * gdbarch.sh (gdbarch_update_p): Keep the list of architectures
sorted in most most-recent-used order.  Document.
* gdbarch.h, gdbarch.c: Regenerate.
2002-04-20 17:41:18 +00:00
Daniel Jacobowitz
c04a1aa88f 2002-04-20 Daniel Jacobowitz <drow@mvista.com>
* gdbserver/inferiors.c (struct inferior_info): Add regcache_data.
        (add_inferior): Call create_register_cache.
        (clear_inferiors): Call free_register_cache.
        (inferior_regcache_data, set_inferior_regcache_data): New functions.
        * gdbserver/regcache.c (struct inferior_regcache_data): New.
        (registers): Remove.
        (get_regcache): New function.
        (create_register_cache, free_register_cache): New functions.
        (set_register_cache): Don't initialize the register cache here.
        (registers_to_string, registers_from_string, register_data): Call
        get_regcache.
        * gdbserver/regcache.h: Add prototypes.
        * gdbserver/server.h: Likewise.
2002-04-20 17:22:48 +00:00
Daniel Jacobowitz
611cb4a542 2002-04-20 Daniel Jacobowitz <drow@mvista.com>
* gdbserver/mem-break.c: New file.
        * gdbserver/mem-break.h: New file.
        * gdbserver/Makefile.in: Add mem-break.o rule; update server.h
        dependencies.
        * gdbserver/inferiors.c (struct inferior_info): Add target_data
        member.
        (clear_inferiors): Free target_data member if set.
        (inferior_target_data, set_inferior_target_data): New functions.
        * gdbserver/linux-i386-low.c (i386_breakpoint, i386_breakpoint_len)
        (i386_stop_pc, i386_set_pc): New.  Add to the_low_target.
        * gdbserver/linux-low.c (linux_bp_reinsert): New variable.
        (struct inferior_linux_data): New.
        (linux_create_inferior): Use set_inferior_target_data.
        (linux_attach): Likewise.  Call add_inferior.
        (linux_wait_for_one_inferior): New function.
        (linux_wait): Call it.
        (linux_write_memory): Add const.
        (initialize_low): Call set_breakpoint_data.
        * gdbserver/linux-low.h (struct linux_target_ops): Add breakpoint
        handling members.
        * gdbserver/server.c (attach_inferior): Remove extra add_inferior
        call.
        * gdbserver/server.h: Include mem-break.h.  Update inferior.c
        prototypes.
        * gdbserver/target.c (read_inferior_memory)
        (write_inferior_memory): New functions.
        * gdbserver/target.h (read_inferior_memory)
        (write_inferior_memory): Change macros to prototypes.
        (struct target_ops): Update comments.  Add const to write_memory
        definition.
2002-04-20 17:04:09 +00:00