Commit graph

11886 commits

Author SHA1 Message Date
gdbadmin
2ac5a64a8e *** empty log message *** 2002-06-14 00:00:32 +00:00
Daniel Jacobowitz
6da02953ff 2002-06-13 Daniel Jacobowitz <drow@mvista.com>
* NEWS: Mention multithreaded debug support for gdbserver.
2002-06-13 19:46:19 +00:00
Daniel Jacobowitz
519b2366d3 2002-06-13 Daniel Jacobowitz <drow@mvista.com>
* MAINTAINERS: Mention NEWS.
2002-06-13 19:35:04 +00:00
Daniel Jacobowitz
a7f48742bc 2002-06-13 Daniel Jacobowitz <drow@mvista.com>
* gdbserver/regcache.c: Add comment.
2002-06-13 19:29:46 +00:00
Daniel Jacobowitz
6c0d6680d8 2002-06-13 Daniel Jacobowitz <drow@mvista.com>
* mips-tdep.c (PROC_SYMBOL): Add warning comment.
        (struct mips_objfile_private, compare_pdr_entries): New.
        (non_heuristic_proc_desc): Read the ".pdr" section if it
        is present.
2002-06-13 19:16:25 +00:00
gdbadmin
9cbea35f25 *** empty log message *** 2002-06-13 00:00:33 +00:00
Andrew Cagney
6529d2ddb5 * arm-tdep.c (arm_push_arguments): Rewrite using a two-pass loop.
(arm_debug): New static variable.
(_initialize_arm_tdep): Add ``set debug arm'' command.
2002-06-12 21:46:05 +00:00
Andrew Cagney
26216b9822 Add the file include/gdb/sim-arm.h defining an enum that specifies the
register numbering used by the GDB<->SIM interface.
2002-06-12 21:19:43 +00:00
Aldy Hernandez
814b3ba087 2002-06-09 Aldy Hernandez <aldyh@redhat.com>
* MAINTAINERS: Add self.
2002-06-12 00:55:35 +00:00
gdbadmin
073bbd368e *** empty log message *** 2002-06-12 00:00:06 +00:00
Jim Blandy
919d772c55 * gdb/source.c (source_info): Mention whether the symtab has
information about preprocessor macros.

* gdb/testsuite/lib/gdb.exp (get_debug_format): Tolerate message
saying whether preprocessor macro information is present.

* gdb/doc/gdb.texinfo (Symbols): Update documentation for `info
source' command.
2002-06-11 20:37:05 +00:00
Jim Blandy
6827a8f8fe * macscp.exp, macscp1.c, macscp2.h, macscp3.h, macscp4.h: New
tests.
2002-06-11 20:27:50 +00:00
Jim Blandy
475b086780 Call the command info macro', not show macro'.
* gdb/macrocmd.c (info_macro_command): Renamed from `show_macro_command'.
Fix error message.
(_initialize_macrocmd): Register `info_macro_command' in
`infolist', not `showlist'.

* gdb/doc/gdb.texinfo (Macros): Call the command `info macro', not
`show macro'.
2002-06-11 20:05:03 +00:00
Daniel Jacobowitz
9e36416278 2002-06-11 Daniel Jacobowitz <drow@mvista.com>
* mips-tdep.c (MIPS_FPU_TYPE, FP_REGISTER_DOUBLE, MIPS_EABI)
        (MIPS_LAST_FP_ARG_REGNUM, MIPS_LAST_ARG_REGNUM)
        (MIPS_DEFAULT_SAVED_REGSIZE, MIPS_REGS_HAVE_HOME_P)
        (MIPS_DEFAULT_STACK_ARGSIZE, GDB_TARGET_IS_MIPS64)
        (MIPS_DEFAULT_MASK_ADDRESS_P): Remove obsolete definitions.  Define
        unconditionally.
        (set_mipsfpu_single_command, set_mipsfpu_double_command)
        (set_mipsfpu_none_command): Remove if (GDB_MULTI_ARCH).
        (_initialize_mips_tdep): Remove dead code.
        * config/mips/tm-irix5.h (MIPS_LAST_ARG_REGNUM)
        (MIPS_DEFAULT_STACK_ARGSIZE, MIPS_REGS_HAVE_HOME_P): Remove.
        * config/mips/tm-irix6.h (MIPS_LAST_ARG_REGNUM)
        (MIPS_DEFAULT_STACK_ARGSIZE, MIPS_REGS_HAVE_HOME_P): Remove.
        * config/mips/tm-mips.h (MIPS_EABI, MIPS_LAST_ARG_REGNUM,
        MIPS_LAST_FP_ARG_REGNUM): Remove.
2002-06-11 17:51:56 +00:00
Daniel Jacobowitz
0d62e5e807 2002-06-11 Daniel Jacobowitz <drow@mvista.com>
* gdbserver/thread-db.c: New file.
	* gdbserver/proc-service.c: New file.
	* gdbserver/acinclude.m4: New file.
	* gdbserver/Makefile.in: Add GDBSERVER_LIBS, gdb_proc_service_h,
	proc-service.o, and thread-db.o.
	(linux-low.o): Add USE_THREAD_DB.
	* gdbserver/acconfig.h: Add HAVE_PRGREGSET_T, HAVE_PRFPREGSET_T,
	HAVE_LWPID_T, HAVE_PSADDR_T, and PRFPREGSET_T_BROKEN.
	* gdbserver/aclocal.m4: Regenerated.
	* gdbserver/config.in: Regenerated.
	* gdbserver/configure: Regenerated.
	* gdbserver/configure.in: Check for proc_service.h, sys/procfs.h,
	thread_db.h, and linux/elf.h headrs.
	Check for lwpid_t, psaddr_t, prgregset_t, prfpregset_t, and
	PRFPREGSET_T_BROKEN.  Introduce srv_thread_depfiles and USE_THREAD_DB.
	Check for -lthread_db and thread support.
	* gdbserver/configure.srv: Enable thread_db support for ARM, i386, MIPS,
	PowerPC, and SuperH.
	* gdbserver/i387-fp.c: Constify arguments.
	* gdbserver/i387-fp.h: Likewise.
	* gdbserver/inferiors.c: (struct thread_info): Renamed from
	`struct inferior_info'.  Remove PID member.  Use generic inferior
	list header.  All uses updated.
	(inferiors, signal_pid): Removed.
	(all_threads): New variable.
	(get_thread): Define.
	(add_inferior_to_list): New function.
	(for_each_inferior): New function.
	(change_inferior_id): New function.
	(add_inferior): Removed.
	(remove_inferior): New function.
	(add_thread): New function.
	(free_one_thread): New function.
	(remove_thread): New function.
	(clear_inferiors): Use for_each_inferior and free_one_thread.
	(find_inferior): New function.
	(find_inferior_id): New function.
	(inferior_target_data): Update argument type.
	(set_inferior_target_data): Likewise.
	(inferior_regcache_data): Likewise.
	(set_inferior_regcache_data): Likewise.
	* gdbserver/linux-low.c (linux_bp_reinsert): Remove.
	(all_processes, stopping_threads, using_thrads)
	(struct pending_signals, debug_threads, pid_of): New.
	(inferior_pid): Replace with macro.
	(struct inferior_linux_data): Remove.
	(get_stop_pc, add_process): New functions.
	(linux_create_inferior): Restore SIGRTMIN+1 before calling exec.
	Use add_process and add_thread.
	(linux_attach_lwp): New function, based on old linux_attach.  Use
	add_process and add_thread.  Set stop_expected for new threads.
	(linux_attach): New function.
	(linux_kill_one_process): New function.
	(linux_kill): Kill all LWPs.
	(linux_thread_alive): Use find_inferior_id.
	(check_removed_breakpoints, status_pending_p): New functions.
	(linux_wait_for_process): Renamed from linux_wait_for_one_inferior.
	Update.  Use WNOHANG.  Wait for cloned processes also.  Update process
	struct for the found process.
	(linux_wait_for_event): New function.
	(linux_wait): Use it.  Support LWPs.
	(send_sigstop, wait_for_sigstop, stop_all_processes)
	(linux_resume_one_process, linux_continue_one_process): New functions.
	(linux_resume): Support LWPs.
	(REGISTER_RAW_SIZE): Remove.
	(fetch_register): Use register_size instead.  Call supply_register.
	(usr_store_inferior_registers): Likewise.  Call collect_register.
	Fix recursive case.
	(regsets_fetch_inferior_registers): Improve error message.
	(regsets_store_inferior_registers): Add debugging.
	(linux_look_up_symbols): Call thread_db_init if USE_THREAD_DB.
	(unstopped_p, linux_signal_pid): New functions.
	(linux_target_ops): Add linux_signal_pid.
	(linux_init_signals): New function.
	(initialize_low): Call it.  Initialize using_threads.
	* gdbserver/regcache.c (inferior_regcache_data): Add valid
	flag.
	(get_regcache): Fetch registers lazily.  Add fetch argument
	and update all callers.
	(regcache_invalidate_one, regcache_invalidate): New
	functions.
	(new_register_cache): Renamed from create_register_cache.
	Return the new regcache.
	(free_register_cache): Change argument to a void *.
	(registers_to_string, registers_from_string): Call get_regcache
	with fetch flag set.
	(register_data): Make static.  Pass fetch flag to get_regcache.
	(supply_register): Call get_regcache with fetch flag clear.
	(collect_register): Call get_regcache with fetch flag set.
	(collect_register_as_string): New function.
	* gdbserver/regcache.h: Update.
	* gdbserver/remote-utils.c (putpkt): Flush after debug output and use
	stderr.
	Handle input interrupts while waiting for an ACK.
	(input_interrupt): Use signal_pid method.
	(getpkt): Flush after debug output and use stderr.
	(outreg): Use collect_register_as_string.
	(new_thread_notify, dead_thread_notify): New functions.
	(prepare_resume_reply): Check using_threads.  Set thread_from_wait
	and general_thread.
	(look_up_one_symbol): Flush after debug output.
	* gdbserver/server.c (step_thread, server_waiting): New variables.
	(start_inferior): Don't use signal_pid.  Update call to mywait.
	(attach_inferior): Update call to mywait.
	(handle_query): Handle qfThreadInfo and qsThreadInfo.
	(main): Don't fetch/store registers explicitly.  Use
	set_desired_inferior.  Support proposed ``Hs'' packet.  Update
	calls to mywait.
	* gdbserver/server.h: Update.
	(struct inferior_list, struct_inferior_list_entry): New.
	* gdbserver/target.c (set_desired_inferior): New.
	(write_inferior_memory): Constify.
	(mywait): New function.
	* gdbserver/target.h: Update.
	(struct target_ops): New signal_pid method.
	(mywait): Removed macro, added prototype.

	* gdbserver/linux-low.h (regset_func): Removed.
	(regset_fill_func, regset_store_func): New.
	(enum regset_type): New.
	(struct regset_info): Add type field.  Use new operation types.
	(struct linux_target_ops): stop_pc renamed to get_pc.
	Add decr_pc_after_break and breakpoint_at.
	(get_process, get_thread_proess, get_process_thread)
	(strut process_info, all_processes, linux_attach_lwp)
	(thread_db_init): New.

	* gdbserver/linux-arm-low.c (arm_get_pc, arm_set_pc,
	arm_breakpoint, arm_breakpoint_len, arm_breakpoint_at): New.
	(the_low_target): Add new members.
	* gdbserver/linux-i386-low.c (i386_store_gregset, i386_store_fpregset)
	(i386_store_fpxregset): Constify.
	(target_regsets): Add new kind identifier.
	(i386_get_pc): Renamed from i386_stop_pc.  Simplify.
	(i386_set_pc): Add debugging.
	(i386_breakpoint_at): New function.
	(the_low_target): Add new members.
	* gdbserver/linux-mips-low.c (mips_get_pc, mips_set_pc)
	(mips_breakpoint, mips_breakpoint_len, mips_reinsert_addr)
	(mips_breakpoint_at): New.
	(the_low_target): Add new members.
	* gdbserver/linux-ppc-low.c (ppc_get_pc, ppc_set_pc)
	(ppc_breakpoint, ppc_breakpoint_len, ppc_breakpoint_at): New.
	(the_low_target): Add new members.
	* gdbserver/linux-sh-low.c (sh_get_pc, sh_set_pc)
	(sh_breakpoint, sh_breakpoint_len, sh_breakpoint_at): New.
	(the_low_target): Add new members.
	* gdbserver/linux-x86-64-low.c (target_regsets): Add new kind
	identifier.
2002-06-11 17:32:40 +00:00
Michal Ludvig
264d176389 * dwarf2cfi.c: Reindented (using 'indent dwarf2cfi.c') 2002-06-11 08:45:05 +00:00
Michal Ludvig
23aa4c722c 2002-06-11 Michal Ludvig <mludvig@suse.cz>
* dwarf2cfi.c (unwind_tmp_obstack_init): New.
	(unwind_tmp_obstack_free, parse_frame_info)
	(update_context, cfi_read_fp, cfi_write_fp)
	(cfi_frame_chain, cfi_init_extra_frame_info)
	(cfi_virtual_frame_pointer): Use the above function.
2002-06-11 08:32:33 +00:00
Corinna Vinschen
70eb15a4d8 * v850-tdep.c (v850_type_is_scalar): New function.
(v850_use_struct_convention): Match current gcc implementation
	as close as possible.
	(v850_push_arguments): Fix stack_offset handling.  Don't write
	struct_addr into register.  This is done by v850_store_struct_return.
	(v850_extract_return_value): Care for structs.
	(v850_store_return_value): Ditto.
	(v850_store_struct_return): Actually write address.
2002-06-11 07:01:12 +00:00
Michal Ludvig
482a4d06a0 2002-06-11 Michal Ludvig <mludvig@suse.cz>
* x86-64-tdep.c (x86_64_skip_prologue): Fix to work on functions
	without debug information too.
2002-06-11 06:11:31 +00:00
Andrew Cagney
d855c300c7 Make print_float_info() multi-arch pure. Add ui_file and frame parameters. 2002-06-11 02:30:59 +00:00
Andrew Cagney
dd12a1014c Force gdbarch.c to be initialized first. 2002-06-11 01:31:36 +00:00
gdbadmin
57bf556389 *** empty log message *** 2002-06-11 00:00:34 +00:00
Andrew Cagney
101dcfbe4a * infrun.c (struct inferior_status): Replace fields
selected_frame_address and selected_level with field
selected_frame_id.
(save_inferior_status): Update.  Use get_frame_id.
(struct restore_selected_frame_args): Delete.
(restore_selected_frame): Update.  Use frame_find_by_id.
(restore_inferior_status): Update.

* breakpoint.h (struct breakpoint): Change type of
watchpoint_frame to frame_id.
* breakpoint.c (insert_breakpoints): Use frame_find_by_id.  Remove
call to get_current_frame.
(do_enable_breakpoint): Use frame_find_by_id.  Remove call to
get_current_frame.
(watchpoint_check): Use frame_find_by_id.

* frame.h (record_selected_frame): Delete declaration.
* stack.c (record_selected_frame): Delete function.

* frame.h (struct frame_id): Define.
(get_frame_id): Declare.
(frame_find_by_id): Declare.
* frame.c (frame_find_by_id): New function.
(get_frame_id): New function.
2002-06-10 23:25:50 +00:00
Andrey Volkov
304270b6be ser-e7kpc.c: Fix duplicated define and call of _initialize_ser_e7000pc 2002-06-10 19:19:37 +00:00
gdbadmin
b09b19f786 *** empty log message *** 2002-06-10 00:00:33 +00:00
Daniel Jacobowitz
2f2cf1847f 2002-06-09 Daniel Jacobowitz <drow@mvista.com>
* signals/signals.c (target_signal_from_host): Fix #ifdef
        SIGRTMIN case.
        (do_target_signal_to_host): Likewise.
2002-06-09 19:42:11 +00:00
Daniel Jacobowitz
caaa3122d8 2002-06-09 Daniel Jacobowitz <drow@mvista.com>
* mips-tdep.c (mips_find_abi_section): New function.
        (mips_gdbarch_init): Call it.
2002-06-09 19:36:15 +00:00
Andrew Cagney
ba8c93377d * gdbint.texinfo (Coding): Add section ``Per-architecture module
data''.
2002-06-09 17:15:40 +00:00
Mark Kettenis
6ac5df3ac3 * solib-svr4.c (init_fetch_link_map_offsets): Simply return
legacy_fetch_link_map_offsets.  Adjust comment to reflect reality
after Andrew's 2002-06-08 gdbarch change.
2002-06-09 16:39:00 +00:00
Mark Kettenis
82ea117a29 * i386-linux-nat.c (suppy_gregset): Don't supply
I386_LINUX_ORIG_EAX_REGNUM if there isn't room for it in GDB's
register cache.
(fill_gregset): Don't fetch it under the same circumstances.
2002-06-09 16:06:48 +00:00
Andrew Cagney
3c25f8c7b0 Move include/callback.h and include/remote-sim.h to include/gdb/.
Update accordingly.
2002-06-09 15:45:54 +00:00
Mark Kettenis
1029b7fa6a * osabi.h (gdb_osabi): Add GDB_OSABI_GO32 and GDB_OSABI_NETWARE.
* osabi.c (gdb_osabi_names): Add "DJGPP" and "NetWare".
2002-06-09 15:11:47 +00:00
Andrew Cagney
16737d732a * gdbint.texinfo (Releasing GDB): Fix typos in @itemize @bullet
lists.
2002-06-09 02:11:12 +00:00
gdbadmin
e548bca07e *** empty log message *** 2002-06-09 00:00:02 +00:00
Andrew Cagney
a3efda28be * sparcl-tdep.c: Use __CYGWIN__ instead of __CYGWIN32__.
* rdi-share/serpardr.c: Ditto.
* rdi-share/unixcomm.c: Ditto.
* rdi-share/serdrv.c: Ditto.
* rdi-share/hostchan.h: Ditto.
* rdi-share/hostchan.c: Ditto.
* rdi-share/host.h: Ditto.
* rdi-share/devsw.c: Ditto.
2002-06-08 20:34:41 +00:00
Andrew Cagney
c5f1036687 * objfiles.h: Change type of obj_private to void pointer.
* pa64solib.c: Update copyright.  Don't include "assert.h", use
strcmp instead of STREQ, use LONGEST, do not use PTR
* somsolib.c: Ditto.
2002-06-08 20:02:51 +00:00
Andrew Cagney
616675d391 * config/djgpp/fnchange.lst: Fix problems with bfd/elf32-i386.c,
bfd/elf32-i386qnx.c, bfd/elf32-sh.c, bfd/elf32-sh64-nbsd.c,
bfd/elf64-sh64-nbsd.c bfd/elf64-sh64.c.
2002-06-08 19:34:00 +00:00
Andrew Cagney
e4b415d96b * frame.c (GET_SAVED_REGISTER): Delete macro definition.
(default_get_saved_register): Delete function.
* gdbarch.sh (GET_SAVED_REGISTER): Set default to
generic_unwind_get_saved_register.
* gdbarch.h, gdbarch.c: Re-generate.
2002-06-08 18:57:38 +00:00
Andrew Cagney
ca0d0b529b * gdbarch.sh (FRAME_CHAIN_VALID): Set default to
generic_func_frame_chain_valid.
* gdbarch.h, gdbarch.c: Re-generate.
* blockframe.c (generic_func_frame_chain_valid): Only check
PC_IN_CALL_DUMMY when generic dummy frames.  Don't worry about
passing FP to PC_IN_CALL_DUMMY.
Fix PR gdb/360.
2002-06-08 18:30:14 +00:00
Andrew Cagney
2af496cb21 Oops, missed DanielJ's tipo. 2002-06-08 18:11:06 +00:00
Andrew Cagney
76860b5fb3 * gdbarch.sh (struct gdbarch_data): Add field init_p.
(register_gdbarch_data): Initialize init_p.
(gdbarch_data): Initialize data pointer using the init function.
(init_gdbarch_data): Delete function.
(gdbarch_update_p): Update.
(initialize_non_multiarch): Update.
(struct gdbarch): Add field initialized_p.
* gdbarch.h, gdbarch.c: Re-generate.
2002-06-08 18:09:01 +00:00
Andrew Cagney
3010767930 * gdbint.texinfo (Releasing GDB): Revise the section ``Cut the
Branch''.
2002-06-08 17:50:59 +00:00
gdbadmin
d1761b83b1 *** empty log message *** 2002-06-08 00:00:33 +00:00
Michal Ludvig
8dda97708f 2002-06-07 Michal Ludvig <mludvig@suse.cz>
* x86-64-linux-nat.c (x86_64_fxsave_offset): New.
	(supply_fpregset, fill_fpregset): Don't call i387_*_fxsave,
	better do the things actually here.
	* x86-64-tdep.c (x86_64_register_name2nr): New.
	(x86_64_register_name): Renamed to x86_64_register_nr2name.
	(x86_64_gdbarch_init): Respect the above change.
	* x86-64-tdep.h (x86_64_register_name2nr)
	(x86_64_register_nr2name): Add prototypes.
	* config/i386/x86-64linux.mt (TDEPFILES): Remove i387-tdep.o.
2002-06-07 16:11:10 +00:00
gdbadmin
42b2198cd1 *** empty log message *** 2002-06-07 00:00:32 +00:00
Michael Snyder
c5984d7012 2002-06-06 Michael Snyder <msnyder@redhat.com>
* gdb.base/overlays.exp: Record addresses of overlay
	functions in TCL variables rather than in GDB variables,
	to avoid having GDB convert them to pointers (with loss
	of information).
2002-06-06 20:26:10 +00:00
Michael Snyder
99a8512bd1 2002-06-06 Michael Snyder <msnyder@redhat.com>
* gdb.base/d10v.ld: Merge in several years worth of
        default linker script changes.
2002-06-06 19:12:39 +00:00
Michael Snyder
c15b0d21ff 2002-06-06 Michael Snyder <msnyder@redhat.com>
* gdb.base/long_long.exp: Add check for sizeof (long double).
2002-06-06 19:08:18 +00:00
Michael Snyder
7bd91a28eb 2002-06-06 Michael Snyder <msnyder@redhat.com>
* d10v-tdep.c (d10v_push_arguments): Handle struct_return.
        Delete extra braces and re-indent.
2002-06-06 18:57:08 +00:00
Michael Snyder
3d79a47c75 2002-06-06 Michael Snyder <msnyder@redhat.com>
* d10v-tdep.c (d10v_store_return_value): Char return values
	must be shifted over by one byte in R0.
        (d10v_extract_return_value): Delete extra braces, re-indent.
2002-06-06 18:47:35 +00:00