Commit graph

7458 commits

Author SHA1 Message Date
Andrew Cagney
a208b0cb2b * cris-tdep.c (cris_saved_pc_after_call): Fix parameter type.
Make static.
* arm-tdep.c (arm_register_name): Make return type constant.
2002-07-11 19:25:13 +00:00
Andrew Cagney
5ae5f59288 Fix some K&R isms. 2002-07-11 13:50:50 +00:00
Andrew Cagney
a6b6b089bd * wince.c (_initialize_wince): Rename _initialize_inftarg.
* win32-nat.c (_initialize_win32_nat): Rename _initialize_inftarg.
2002-07-10 22:38:05 +00:00
Grace Sainsbury
a1789893d3 * NEWS: Mention m68k, mcore multi-arching.
* MAINTAINERS: Change status of m68k, mcore to reflect
multi-arching.
2002-07-10 17:34:02 +00:00
Daniel Jacobowitz
02f0d45d87 2002-07-10 Daniel Jacobowitz <drow@mvista.com>
* valops.c (find_overload_match): Free oload_syms.
2002-07-10 17:18:16 +00:00
Joel Brobecker
f15f768ee5 Define HAVE_SYS_PROC_H if sys/proc.h exists
* configure.in: Add check for sys/proc.h
        * config.in: Regenerate.
        * configure: Regenerate.
2002-07-09 22:59:36 +00:00
Grace Sainsbury
902a713992 2002-07-09 Grace Sainsbury <graces@redhat.com>
* config/m68k/tm-m68k.h: Remove macros wrapped in
	#if !GDB_MULTI_ARCH.
2002-07-09 19:48:40 +00:00
David O'Brien
82e0fd9831 2002-07-09 David O'Brien <obrien@FreeBSD.org>
* gdbserver/gdbreplay.c (stdlib.h, unistd.h): Conditionaly include.
	(perror_with_name, remote_close, remote_open, expect, play): Static.
2002-07-09 17:38:58 +00:00
Andrew Cagney
a534e424ef * config.in, configure: Regenerate. 2002-07-09 14:17:39 +00:00
Mark Kettenis
9b94f7bfd5 * dwarf2cfi.c: Include "gcore.h".
(execute_stack_op): Fix implementation of the
DW_OP_deref and DW_OP_deref_size operators by letting do their
lookup in the target.
2002-07-08 20:53:45 +00:00
Mark Kettenis
1d34db4151 From Peter Schauer <Peter.Schauer@regent.e-technik.tu-muenchen.de>:
* i386-sol2-tdep.c (i386_sol2_init_abi): Correct value for
tdep->sc_sp_offset.
2002-07-07 21:31:06 +00:00
Daniel Jacobowitz
79d5b63a45 2002-07-05 Daniel Jacobowitz <drow@mvista.com>
Fix PR gdb/595, gdb/602
        * gnu-v3-abi.c (gnuv3_baseclass_offset): Remove unused variables.
        Don't call value_cast, just read the vtable pointer; update comments
        to match.
2002-07-05 16:23:13 +00:00
Grace Sainsbury
3bb912e83b * config/mcore/tm-mcore.h: Remove file.
* config/mcore/mcore.mt: Remove definition of TM_FILE
	* configure.tgt: Set gdb_multi_arch to yes for the mcore target.
2002-07-05 15:09:49 +00:00
Mark Kettenis
ca39387d67 * i386bsd-tdep.c: Include "gdb_string.h". 2002-07-04 22:59:01 +00:00
Grace Sainsbury
efdc1108e7 * config/mcore/tm-mcore.h (GDB_MULTI_ARCH): Set to 2.
(PR_REGNUM, FIRST_ARGREG, LAST_ARGREG,RETVAL_REGNUM): Move to
	mcore-tdep.
	(REG_STRUCT_HAS_ADDR, USE_STRUCT_CONVENTION, GET_SAVED_REGISTER)
	(TARGET_VIRTUAL_FRAME_POINTER, BELIEVE_PCC_PROMOTION): Remove.
	* mcore-tdep.c (PR_REGNUM, FIRST_ARGREG, LAST_ARGREG)
	(RETVAL_REGNUM): Move macros from tm-mcore.h
	(mcore_reg_struct_has_addr): New function.
	(mcore_gdbarch_init): Added initializations for the macros removed
	from tm-mcore.h.
2002-07-04 16:45:53 +00:00
Mark Kettenis
bb21884d54 * osabi.c (generic_elf_osabi_sniffer): Add check for FreeBSD 3.x's
traditonal string branding within the ELF header.
2002-07-04 15:36:51 +00:00
Daniel Jacobowitz
228c6d410e 2002-07-04 Daniel Jacobowitz <drow@mvista.com>
* symtab.c (remove_params): New function.
        (make_symbol_overload_list): Use it instead of cplus_demangle.
        (overload_list_add_symbol): Likewise.  Reorder.  Fix memory leak.
2002-07-04 15:22:42 +00:00
Mark Kettenis
e5e4acad5b * i386obsd-nat.c (_initialize_i386obsd_nat): Fix typo in prototype. 2002-07-04 15:17:43 +00:00
Mark Kettenis
baadce09a6 * i386bsd-tdep.c (i386nbsd_sigtramp_start, i386nbsd_sigtramp_end):
New variables.
(i386nbsd_init_abi): Use these to initialize tdep->sigtramp_start
and tdep->sigtramp_end.
* i386obsd-nat.c: New file.
* config/i386/obsd.mh (NATDEPFILES): Add i386obsd-nat.o.
2002-07-04 15:13:28 +00:00
Mark Kettenis
2404952e63 * dwarf2cfi.c (cfi_pop_frame): Use alloca() for regbuf.
Don't call get_current_frame().
2002-07-04 14:43:51 +00:00
Pierre Muller
9b4f1ba7ed 2002-07-04 Pierre Muller <muller@ics.u-strasbg.fr>
* i386-nat.c (child_post_startup_inferior): New function
	calling i386_cleanup_dregs if
	I386_USE_GENERIC_WATCHPOINTS is defined.
	* config/i386/nm-i386.h: define CHILD_POST_STARTUP_INFERIOR
	conditional to acknowledge that i386-nat.c has its
	own child_post_startup_inferior function.
2002-07-04 12:32:29 +00:00
Mark Kettenis
00f8375edd * i386-tdep.h (I386_MAX_REGISTER_SIZE): New define.
* i386-tdep.c (i386_do_pop_frame): Use I386_MAX_REGISTER_SIZE
instead of MAX_REGISTER_RAW_SIZE.
(i386_extract_return_value, i386_extract_struct_value_address):
Convert to use regcache.
(i386_gdbarch_init): Set max_register_raw_size and
max_register_virtual_size to I386_MAX_REGISTER_SIZE.
Set extract_return_value and extract_struct_value_address instead
of their deprecated variants.
2002-07-04 08:18:20 +00:00
Mark Kettenis
c0d1d88354 Convert i386 target to generic dummy frames.
* i386-tdep.c: Include "symfile.h".
(i386_frameless_signal_p): Consider a function to be frameless if
the pc points at the first instruction of the function.
(i386_frame_chain): Handle (generic) call dummies.
(i386_frame_saved_pc): Likewise.
(i386_frame_init_saved_regs): Remove code dealing with call
dummies on the stack.
(i386_push_dummy_frame): Removed.
(i386_call_dummy_words): Removed.
(i386_fix_call_dummy): Removed.
(i386_push_return_address): New function.
(i386_do_pop_frame): Renamed from i386_pop_frame.  Add FRAME
parameter, and don't call get_current_frame.
(i386_pop_frame): New function.
(i386_gdbarch_init): Set use_generic_dummy_frames to 1, set
call_dummy_location to AT_ENTRY_POINT, set call_dummy_address to
entry_point_address, set call_dummy_breakpoint_offset to 0, set
call_dummy_length to 0, set call_dummy_words to NULL, set
sizeof_call_dummy_words to 0, set fix_call_dummy to
generic_fix_call_dummy, set pc_in_call_dummy to
pc_in_call_dummy_at_entry_point, set push_dummy_frame to
generic_push_dummy_frame, set push_return_address to
i386_push_return_address and set frame_chain_valid to
generic_file_frame_chain_valid.
2002-07-04 07:22:11 +00:00
Michal Ludvig
638c158084 2002-07-04 Michal Ludvig <mludvig@suse.cz>
* gdbserver/linux-x86-64-low.c (x86_64_regmap): Make it an array of
	byte offsets instead of an array of indexes.
	(x86_64_store_gregset, x86_64_store_fpregset): Parameter made const.
2002-07-04 06:00:49 +00:00
Andrew Cagney
049ee0e44d * gdbarch.sh (struct regcache): Add opaque declaration.
(EXTRACT_RETURN_VALUE): New architecture method.
(EXTRACT_STRUCT_VALUE_ADDRESS): Ditto.
* gdbarch.h, gdbarch.c: Regenerate.
* arch-utils.c (legacy_extract_return_value): New function.
* arch-utils.h (legacy_extract_return_value): Declare.
* values.c (value_being_returned): Re-enable code handling
EXTRACT_STRUCT_VALUE_ADDRESS.  Move
deprecated_grub_regcache_for_registers call to block handling
DEPRECATED_EXTRACT_STRUCT_VALUE_ADDRESS.
(EXTRACT_RETURN_VALUE): Do not define.
2002-07-03 21:27:55 +00:00
Grace Sainsbury
4e0d9804fe * config/mcore/tm-mcore.h (REGISTER_BYTES, NUM_REGS, PC_REGNUM)
(SP_REGNUM, FP_REGNUM, FUNCTION_START_OFFSET, DECR_PC_AFTER_BREAK)
	(BREAKPOINT_FROM_PC, INNER_THAN, SAVED_PC_AFTER_CALL)
	(INIT_EXTRA_FRAME_INFO, FRAME_INIT_SAVED_REGS, INIT_FRAME_PC)
	(FRAME_CHAIN, FRAME_CHAIN_VALID, FRAME_SAVED_PC)
	(STORE_RETURN_VALUE, DEPRECATED_EXTRACT_RETURN_VALUE)
	(STORE_STRUCT_RETURN, DEPRECATED_EXTRACT_STRUCT_VALUE_ADDRESS)
	(SKIP_PROLOGUE, FRAME_ARGS_SKIP, FRAME_ARGS_ADDRESS)
	(FRAME_LOCALS_ADDRESS, FRAME_NUM_ARGS, POP_FRAME)
	(PUSH_RETURN_ADDRESS, PUSH_DUMMY_FRAME, PUSH_ARGUMENTS): Remove.
	* mcore-tdep.c (mcore_init_extra_frame_info): Add fromleaf
	argument so the function fits the prototype in the architecture
	vector.
	(mcore_pop_frame): Remove argument so the function fits the
	prototype. Use get_current_frame instead of the argument.
	(mcore_push_arguments): Change type of struct_return so the
	function can be used in the architecture vector.
	(mcore_store_struct_return): Add.
	(mcore_frame_init_saved_regs): Add.
	(mcore_gdbarch_init): Add function calls to replace the macros
	removed from tm-mcore.h
2002-07-03 21:23:02 +00:00
Andrew Cagney
36160dc4b2 * infcmd.c (print_return_value): Remove compatibility code calling
deprecated_grub_regcache_for_registers.

* values.c: Include "regcache.h".
(value_being_returned): Update.  Use
deprecated_grub_regcache_for_registers to extract the register
buffer address.
* value.h (value_being_returned): Change ``retbuf'' parameter to a
``struct regcache''.
* Makefile.in (values.o): Add dependency on $(regcache_h).

* inferior.h (run_stack_dummy): Change type of second parameter to
a ``struct regcache''.
* valops.c (hand_function_call): Change type of retbuf to ``struct
regcache''.  Allocate using regcache_xmalloc, clean using
make_cleanup_regcache_xfree.
* infcmd.c (run_stack_dummy): Update.  Use
regcache_cpu_no_passthrough instead of memcpy to copy the buffer.

* regcache.c (do_regcache_xfree): New function.
(make_cleanup_regcache_xfree): New function.
* regcache.h (make_cleanup_regcache_xfree): Declare.
2002-07-03 20:36:54 +00:00
Martin Hunt
4dd79c29b4 2002-07-03 Martin M. Hunt <hunt@redhat.com>
* event-top.c (command_line_handler): Don't read past
        beginning of buffer.
2002-07-03 20:27:12 +00:00
Martin Hunt
e64d9b3dea 2002-07-03 Martin M. Hunt <hunt@redhat.com>
* varobj.c (struct varobj_root): Change frame from CORE_ADDR to
        struct frame_id.
        (varobj_create): Store frame_id for root.
        (varobj_gen_name): Use xasprintf.
        (varobj_update): Save and restore frame using get_frame_id() and
        frame_find_by_id().
        (create_child): Use xasprintf.
        (new_root_variable): Initialize frame_id.
        (c_name_of_child): Use xasprintf. Call find_frame_by_id().
        (c_value_of_variable): Use xasprintf. Move mem_fileopen call
        to prevent memory leak.
2002-07-03 20:23:04 +00:00
Andrew Cagney
26e6c56a66 * valops.c (hand_function_call): Move declaration of retbuf to
start of function, allocate using malloc, add a cleanup but before
the inf_status cleanup, cleanup the buffer.  Rename local variable
old_chain to inf_status_cleanup.
2002-07-03 18:31:29 +00:00
Martin Hunt
f436dd25ca 2002-07-03 Martin M. Hunt <hunt@redhat.com>
* top.c (execute_command): Use cmd_func() and cmd_func_p().

	* cli/cli-decode.c (cmd_func_p): New function.
	(cmd_func): New function.

	* command.h: Add cmd_func() and cmd_func_p().
2002-07-03 17:35:21 +00:00
Grace Sainsbury
4cfe20842d * config/mcore/tm-mcore.h (GDB_MULTI_ARCH): Add macro. Set to 0.
(REGISTER_SIZE): Remove.
	(MAX_REGISTER_RAW_SIZE): Remove.
	(REGISTER_VIRTUAL_TYPE): Remove.
	(MAX_REGISTER_VIRTUAL_SIZE): Remove.
	(REGISTER_NAME): Remove.
	(USE_GENERIC_DUMMY_FRAMES): Remove.
	(CALL_DUMMY): Remove.
	(CALL_DUMMY_START_OFFSET): Remove.
	(CALL_DUMMY_BREAKPOINT_OFFSET): Remove.
	(CALL_DUMMY_LOCATION): Remove.
	(FIX_CALL_DUMMY): Remove.
	(CALL_DUMMY_ADDRESS): Remove.
	(SIZEOF_CALL_DUMMY_WORDS): Remove.
	(SAVE_DUMMY_FRAME_TOS): Remove.
	* mcore-tdep.c (MCORE_REG_SIZE, MCORE_NUM_REGS): Add macros.
	(mcore_register_virtual_type): New function.
	(mcore_register_byte): New function.
	(mcore_register_size): New function.
	(mcore_register_name): New function.
	(mcore_gdbarch_init): New function. Add set_gdbarch calls for
	macros removed from tm-mcore.h.
	(mcore_dump_tdep): Add.
	(_initialize_mcore_tdep): Add gdbarch_register call.
2002-07-03 17:17:06 +00:00
Mark Kettenis
4fd667e983 * i386-tdep.c (i386_frameless_signal_p): Provide an argument in to
frameless_look_for_prologue, such that we actually call this
function.
2002-07-03 09:39:47 +00:00
Joel Brobecker
42f99ac23d * frame.h (frame_address_in_block): New function.
* blockframe.c (frame_address_in_block): New function extracted
        from get_frame_block().
        (get_frame_block): Use frame_address_in_block().
        (block_innermost_frame): Use frame_address_in_block() to match
        the frame pc address against the block boundaries rather than
        the frame pc directly. This prevents a failure when a frame pc
        is actually a return-address pointing immediately after the end
        of the given block.
2002-07-02 19:08:55 +00:00
Grace Sainsbury
83b4a0fe98 * MAINTAINERS: Add self under write after approval. 2002-07-02 18:25:41 +00:00
Grace Sainsbury
103a159751 * m68k-tdep.c (m68k_remote_breakpoint_from_pc): Add. Currently not
used in architecture vector. The default is
m68k_local_breakpoint_from_pc.
(m68k_local_breakpoint_from_pc): Add.
(enum): Add register numbers from tm-m68k.h.
(m68k_gdbarch_init): Add breakpoint_from_pc to architecture vector.
* config/m68k/tm-m68k.h (GDB_MULTI_ARCH): Set to
GDB_MULTI_ARCH_PARTIAL.
(BPT_VECTOR, REGISTER_BYTES_FP, REGISTER_BYTES_NOFP)
(NUM_FREGS, SIG_PC_FP_OFFSET, SP_ARG0, REMOTE_BPT_VECTOR): Move to
m68k-tdep.c.
(BREAKPOINT, REMOTE_BREAKPOINT): Remove.
(A1_REGNUM, FP0_REGNUM, FPC_REGNUM, FPS_REGNUM, FPI_REGNUM): Move
to enum in m68k-tdep.c
2002-07-02 18:13:54 +00:00
Joel Brobecker
7a5a05349e * solib-osf.c (open_map): Compute the list of shared libraries
loaded by the inferior, rather than the list of libraries loaded
        by GDB itself.  Otherwise, GDB ends up reading the symbols from
        the wrong shared libraries...
2002-07-02 17:05:28 +00:00
Mark Kettenis
b7d15bf718 * i386-linux-tdep.c (i386_linux_sigcontext_addr): Make static.
(LINUX_SIGCONTEXT_PC_OFFSET, LINUX_SIGCONEXT_SP_OFFSET): Remove
macros.
(i386_linux_sigtramp_saved_pc, i386_linux_sigtramp_saved_sp):
Remove functions.
(FRAMELESS_SIGNAL): Remove function.
(i386_linux_frame_chain, i386_linux_frame_saved_pc,
i386_linux_saved_pc_after_call): Removed.
(i386_linux_init_abi): Initialize tdep->sigcontext_addr,
tdep->sc_pc_offset and tdep->sc_sp_offset.  Don't override
frame_chain, frame_saved_pc and saved_pc_after_call any longer.
2002-07-02 13:48:16 +00:00
Mark Kettenis
6bff26defb * i386-tdep.c (i386_frameless_signal_p): New function.
(i386_frame_chain): Deal with frameless signals.
(i386_sigtramp_saved_sp): New function.
(i386_frame_saved_pc): Deal with frameless signals.
(i386_saved_pc_after_call): Make sure the correct value is
returned just after entry into a sigtramp.
* i386bsd-tdep.c (i386bsd_sc_sp_offset, i386nbsd_sc_sp_offset,
i386fbsd4_sc_sp_offset): New variables.
(i386bsd_init_abi, i386nbsd_init_abi, i386fbsd4_init_abi): Use
these variables to initialize tdep->sc_sp_offset.  * i386bsd-nat.c
(_initialize_i386bsd_nat): Add sanity check for sc_sp_offset
similiar to what we already did for sc_pc_offset.
* i386-sol2-tdep.c (i386_sol2_init_abi): Initialize
tdep->sc_sp_offset.
2002-07-02 09:12:37 +00:00
Mark Kettenis
6f558d7454 * i386nbsd-tdep.c (fetch_elfcore_registers): Wrap long line. 2002-07-02 08:39:54 +00:00
Michal Ludvig
145564b756 2002-07-02 Michal Ludvig <mludvig@suse.cz>
* config/i386/tm-x86-64linux.h: New.
	* config/i386/x86-64linux.mt: Add GDB_MULTI_ARCH and TM_FILE
	definitions.
	* config/i386/nm-x86-64.h: Rename to ...
	* config/i386/nm-x86-64linux.h: ... this one.
	* config/i386/x86-64linux.mh: Reflect the above change.
2002-07-01 22:09:52 +00:00
Mark Kettenis
21d0e8a401 * i386-tdep.h (struct gdbarch_tdep): Replace sigtramp_saved_pc
with sigcontext_addr.  Add sc_sp_offset.
(i386bsd_sigtramp_saved_pc): Remove prototype.
(i386bsd_sicontext_addr): Add prototype.
* i386-tdep.c (i386_sigtramp_saved_pc): New function.
(i386_frame_saved_pc): Rewrite to call i386_sigtramp_saved_pc.
(i386_svr4_sigtramp_saved_pc): Removed.
(i386_svr4_sigcontext_addr): New function.
(i386_svr4_init_abi): Don't initialize tdep->sigtramp_saved_pc.
Initialize tdep->sigcontext_addr instead.  Initialize
tdep->sc_pc_offset and tdep->sc_sp_offset.
(i386_gdbarch_init): Likewise.
* i386bsd-tdep.c (i386bsd_sigcontext_addr): Don't make it static
any more.
(i386bsd_sigtramp_saved_pc): Remove function.
(i386bsd_init_abi): Don't initialize tdep->sigtramp_saved_pc.
Initialize tdep->sigcontext_addr instead.  Initialize
tdep->sc_pc_offset.
* i386-linux-tdep.c (i386_linux_init_abi): Remove initialization
of tdep->sigtramp_saved_pc.
* i386-sol2-tdep.c (i386_sol2_init_abi): Don't initialize
tdep->sigtramp_saved_pc.  Initialize tdep->sigcontext_addr
instead.
2002-07-01 21:16:32 +00:00
Mark Kettenis
3a1e71e3b1 * i386-tdep.c (i386_frameless_function_invocation,
i386_frame_num_args, i386_frame_init_saved_regs,
i386_skip_prologue, i386_push_dummy_frame, i386_fix_call_dummy,
i386_pop_frame, i386_push_arguments, i386_store_struct_return,
i386_extract_return_value, i386_store_return_value,
i386_extract_struct_value_address, i386_register_virtual_type,
i386_register_convertible, i386_register_convert_to_virtual,
i386_register_convert_to_raw, i386_svr4_sigtramp_saved_pc,
i386_go32_init_abi, i386_nw_init_abi, i386_gdbarch_init): Make
static.
2002-07-01 10:20:40 +00:00
Mark Kettenis
77b13a25ae * i386bsd-tdep.c (i386bsd_frame_saved_pc): Removed. 2002-07-01 09:41:00 +00:00
Mark Kettenis
52e9098c24 * config/i386/tm-i386sol2.h (COERCE_FLOAT_TO_DOUBLE): Removed.
* i386-sol2-tdep.c (i386_sol2_init_abi): Adjust for the removal of
this macro.  Include "value.h".
2002-07-01 09:13:09 +00:00
Aidan Skinner
1b372fff90 Remove ada-lex.c and ada-exp.tab.c as they are generated files 2002-06-30 22:04:33 +00:00
Mark Kettenis
4a93c5bb96 * config/i386/tm-i386.h (struct frame_info, struct
frame_saved_regs, struct value, struct type): Remove forward
declarations.
2002-06-30 18:55:19 +00:00
Mark Kettenis
322d4fe017 * config/i386/tm-linux.h [HAVE_PTRACE_GETFPXREGS]
(FILL_FPXREGSET, HAVE_SSE_REGS): Remove define.
* config/i386/nm-linux.h [HAVE_PTRACE_GETFPXREGS]
(FILL_FPXREGSET): Define.
2002-06-30 18:43:06 +00:00
Mark Kettenis
fdd8263d0a * config/i386/tm-nbsd.h (HAVE_SSE_REGS): Remove define. 2002-06-30 17:22:57 +00:00
Mark Kettenis
482e577bab * configure.tgt (i[3456]86-*-openbsd*): Fold into
i[3456]86-*-netbsd* case.
* config/i386/tm-obsd.h: Removed.
* config/i386/obsd.mt: Removed.
* config/i386/obsd.mh (NATDEPFILES): Remove corelow.o and
core-aout.o.
(MH_CFLAGS): Add -DYYDEBUG=0.
2002-06-30 17:19:54 +00:00