+2002-08-23 Daniel Jacobowitz <drow@mvista.com>
+
+ * ChangeLog: Move gdbserver entries after GDB 5.2 to
+ gdbserver/ChangeLog.
+
2002-08-23 Mark Kettenis <kettenis@gnu.org>
* i386-tdep.c: Include "objfiles.h".
* Makefile.in (LDFLAGS): Allow the configure script to establish a
default for this.
- * gdbserver/Makefile.in (LDFLAGS): Same.
2002-08-20 Keith Seitz <keiths@redhat.com>
* NEWS: Menion that CHILL has been made obsolete.
* gdbtypes.c (chill_varying_type): Make chill references obsolete.
- * gdbserver/Makefile.in: Ditto.
* stabsread.c (read_range_type): Ditto.
* gdbtypes.h: Ditto.
* language.c (binop_type_check): Ditto.
* defs.h (extract_unsigned_integer): Update.
(extract_signed_integer): Update.
-2002-07-24 Kevin Buettner <kevinb@redhat.com>
-
- * gdbserver/configure.in (unistd.h): Add to AC_CHECK_HEADERS list.
- * gdbserver/configure: Regenerate.
- * gdbserver/config.in: Regenerate.
-
2002-07-24 Andrew Cagney <cagney@redhat.com>
* regcache.c (regcache_raw_write): Change buf parameter to a
* config/m68k/tm-m68k.h: Remove macros wrapped in
#if !GDB_MULTI_ARCH.
-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-08 Andrew Cagney <ac131313@redhat.com>
* config.in, configure: Regenerate.
i386_push_return_address and set frame_chain_valid to
generic_file_frame_chain_valid.
-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-03 Andrew Cagney <ac131313@redhat.com>
* gdbarch.sh (struct regcache): Add opaque declaration.
* MAINTAINERS: Mention NEWS.
-2002-06-13 Daniel Jacobowitz <drow@mvista.com>
-
- * gdbserver/regcache.c: Add comment.
-
2002-06-13 Daniel Jacobowitz <drow@mvista.com>
* mips-tdep.c (PROC_SYMBOL): Add warning comment.
* config/mips/tm-mips.h (MIPS_EABI, MIPS_LAST_ARG_REGNUM,
MIPS_LAST_FP_ARG_REGNUM): Remove.
-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 Michal Ludvig <mludvig@suse.cz>
* dwarf2cfi.c (unwind_tmp_obstack_init): New.
* hpread.c (hpread_read_struct_type): Remove assignments to args.
(fixup_class_method_type): Likewise.
-2002-05-15 Daniel Jacobowitz <drow@mvista.com>
-
- From Martin Pool <mbp@samba.org>:
- * gdbserver/server.c (gdbserver_usage): New function.
- (main): Call it.
-
2002-05-15 Jim Blandy <jimb@redhat.com>
Add macro structures to GDB's symbol tables. Nobody puts anything
* arm-linux-tdep.c (ARM_LINUX_JB_PC): Renamed from JB_PC.
(ARM_LINUX_JB_ELEMENT_SIZE): Likewise.
-2002-05-14 Daniel Jacobowitz <drow@mvista.com>
-
- * gdbserver/mem-break.c (reinsert_breakpoint_by_bp): Correct typo
- stop_at -> stop_pc.
-
2002-05-14 Andrew Cagney <ac131313@redhat.com>
* regcache.c (register_valid): Revise comments refering to "Not
* remote-eb.c: Delete.
* remote-adapt.c: Delete.
* Makefile.in: Remove obsolete code.
- * gdbserver/Makefile.in: Ditto.
* config/s390/s390x.mt: Ditto.
* config/s390/s390.mt: Ditto.
* config/sparc/sparclynx.mh: Ditto.
* i386-linux-tdep.c: Update comments.
* breakpoint.c (bpstat_what): Update comment.
-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 David S. Miller <davem@redhat.com>
* i960-tdep.c (register_in_window_p): New function.
sorted in most most-recent-used order. Document.
* gdbarch.h, gdbarch.c: Regenerate.
-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 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-19 Andrew Cagney <ac131313@redhat.com>
* sparc-tdep.c (sparc_get_saved_register): Use get_prev_frame
2002-04-11 Daniel Jacobowitz <drow@mvista.com>
- * gdbserver/linux-low.c (usr_store_inferior_registers): Support
- registers which are allowed to fail to store.
- * gdbserver/linux-low.h (linux_target_ops): Likewise.
- * gdbserver/linux-ppc-low.c (ppc_regmap): Support FPSCR.
- (ppc_cannot_store_register): FPSCR may not be storable.
* regformats/reg-ppc.dat: Support FPSCR.
2002-04-11 Kevin Buettner <kevinb@redhat.com>
* server.h (look_up_one_symbol): Add prototype.
* target.h (struct target_ops): Add look_up_symbols hook.
-2002-04-09 Daniel Jacobowitz <drow@mvista.com>
-
- * gdbserver/server.h: Include <string.h> if HAVE_STRING_H.
- * ChangeLog: Correct paths in last ChangeLog entry.
-
-2002-04-09 Daniel Jacobowitz <drow@mvista.com>
-
- * gdbserver/linux-low.h: Remove obsolete prototypes.
- (struct linux_target_ops): New.
- (extern the_low_target): New.
- * gdbserver/linux-low.c (num_regs, regmap): Remove declarations.
- (register_addr): Use the_low_target explicitly.
- (fetch_register): Likewise.
- (usr_fetch_inferior_registers): Likewise.
- (usr_store_inferior_registers): Likewise.
- * gdbserver/linux-arm-low.c (num_regs): Remove.
- (arm_num_regs): Define.
- (arm_regmap): Renamed from regmap, made static.
- (arm_cannot_fetch_register): Renamed from cannot_fetch_register,
- made static.
- (arm_cannot_store_register): Renamed from cannot_store_register,
- made static.
- (the_low_target): New.
- * gdbserver/linux-i386-low.c (num_regs): Remove.
- (i386_num_regs): Define.
- (i386_regmap): Renamed from regmap, made static.
- (i386_cannot_fetch_register): Renamed from cannot_fetch_register,
- made static.
- (i386_cannot_store_register): Renamed from cannot_store_register,
- made static.
- (the_low_target): New.
- * gdbserver/linux-ia64-low.c (num_regs): Remove.
- (ia64_num_regs): Define.
- (ia64_regmap): Renamed from regmap, made static.
- (ia64_cannot_fetch_register): Renamed from cannot_fetch_register,
- made static.
- (ia64_cannot_store_register): Renamed from cannot_store_register,
- made static.
- (the_low_target): New.
- * gdbserver/linux-m68k-low.c (num_regs): Remove.
- (m68k_num_regs): Define.
- (m68k_regmap): Renamed from regmap, made static.
- (m68k_cannot_fetch_register): Renamed from cannot_fetch_register,
- made static.
- (m68k_cannot_store_register): Renamed from cannot_store_register,
- made static.
- (the_low_target): New.
- * gdbserver/linux-mips-low.c (num_regs): Remove.
- (mips_num_regs): Define.
- (mips_regmap): Renamed from regmap, made static.
- (mips_cannot_fetch_register): Renamed from cannot_fetch_register,
- made static.
- (mips_cannot_store_register): Renamed from cannot_store_register,
- made static.
- (the_low_target): New.
- * gdbserver/linux-ppc-low.c (num_regs): Remove.
- (ppc_num_regs): Define.
- (ppc_regmap): Renamed from regmap, made static.
- (ppc_cannot_fetch_register): Renamed from cannot_fetch_register,
- made static.
- (ppc_cannot_store_register): Renamed from cannot_store_register,
- made static.
- (the_low_target): New.
- * gdbserver/linux-s390-low.c (num_regs): Remove.
- (s390_num_regs): Define.
- (s390_regmap): Renamed from regmap, made static.
- (s390_cannot_fetch_register): Renamed from cannot_fetch_register,
- made static.
- (s390_cannot_store_register): Renamed from cannot_store_register,
- made static.
- (the_low_target): New.
- * gdbserver/linux-sh-low.c (num_regs): Remove.
- (sh_num_regs): Define.
- (sh_regmap): Renamed from regmap, made static.
- (sh_cannot_fetch_register): Renamed from cannot_fetch_register,
- made static.
- (sh_cannot_store_register): Renamed from cannot_store_register,
- made static.
- (the_low_target): New.
- * gdbserver/linux-x86-64-low.c (x86_64_regmap): Renamed from regmap.
- (the_low_target): New.
-
2002-04-09 Andrew Cagney <ac131313@redhat.com>
* frame.c (read_relative_register_raw_bytes_for_frame): Do not
declarations. Update copyright.
Fix PR gdb/251.
-2002-04-09 Daniel Jacobowitz <drow@mvista.com>
-
- * gdbserver/Makefile.in: Add stamp-h target.
- * gdbserver/configure.in: Create stamp-h.
- * gdbserver/configure: Regenerated.
-
-2002-04-09 Daniel Jacobowitz <drow@mvista.com>
-
- * gdbserver/inferiors.c: New file.
- * gdbserver/target.c: New file.
- * gdbserver/target.h: New file.
- * gdbserver/Makefile.in: Add target.o and inferiors.o. Update
- dependencies.
- * gdbserver/linux-low.c (inferior_pid): New static variable,
- moved from server.c.
- (linux_create_inferior): Renamed from create_inferior.
- Call add_inferior. Return 0 on success instead of a PID.
- (linux_attach): Renamed from myattach.
- (linux_kill): Renamed from kill_inferior. Call clear_inferiors ().
- (linux_thread_alive): Renamed from mythread_alive.
- (linux_wait): Renamed from mywait. Call clear_inferiors () if the
- child dies.
- (linux_resume): Renamed from myresume. Add missing ``return 0''.
- (regsets_store_inferior_registers): Correct error message.
- Add missing ``return 0''.
- (linux_fetch_registers): Renamed from fetch_inferior_registers.
- (linux_store_registers): Renamed from store_inferior_registers.
- (linux_read_memory): Renamed from read_inferior_memory.
- (linux_write_memory): Renamed from write_inferior_memory.
- (linux_target_ops): New structure.
- (initialize_low): Call set_target_ops ().
- * gdbserver/remote-utils.c (unhexify): New function.
- (hexify): New function.
- (input_interrupt): Send signals to ``signal_pid''.
- * gdbserver/server.c (inferior_pid): Remove.
- (start_inferior): Update create_inferior call.
- (attach_inferior): Call add_inferior.
- (handle_query): New function.
- (main): Call handle_query for `q' packets.
- * gdbserver/server.h: Include "target.h". Remove obsolete prototypes.
- Add prototypes for "inferiors.c", "target.c", hexify, and unhexify.
-
-2002-04-09 Daniel Jacobowitz <drow@mvista.com>
-
- * gdbserver/Makefile.in: Add WARN_CFLAGS. Update configury
- dependencies.
- * gdbserver/configure.in: Check for <string.h>
- * gdbserver/configure: Regenerate.
- * gdbserver/config.in: Regenerate.
- * gdbserver/gdbreplay.c: Include needed system headers.
- (remote_open): Remove strchr prototype.
- * gdbserver/linux-low.h: Correct #ifdef to HAVE_LINUX_USRREGS.
- * gdbserver/regcache.c (supply_register): Change buf argument to const void *.
- (supply_register_by_name): Likewise.
- (collect_register): Change buf argument to void *.
- (collect_register_by_name): Likewise.
- * gdbserver/regcache.h: Add missing prototypes.
- * gdbserver/remote-utils.c: Include <arpa/inet.h> for inet_ntoa.
- * gdbserver/server.c (handle_query): New function.
- (attached): New static variable, moved out of main.
- (main): Quiet longjmp clobber warnings.
- * gdbserver/server.h: Add ATTR_NORETURN and ATTR_FORMAT. Update prototypes.
- * gdbserver/utils.c (error): Remove NORETURN.
- (fatal): Likewise.
-
2002-04-09 Daniel Jacobowitz <drow@mvista.com>
* symtab.h (ALL_BLOCK_SYMBOLS): Don't dereference the pointer
--- /dev/null
+2002-08-23 Daniel Jacobowitz <drow@mvista.com>
+
+ * ChangeLog: New file, with entries from gdb/ChangeLog after GDB 5.2.
+
+2002-08-20 Jim Blandy <jimb@redhat.com>
+
+ * Makefile.in (LDFLAGS): Allow the configure script to establish a
+ default for this.
+
+2002-08-01 Andrew Cagney <cagney@redhat.com>
+
+ * Makefile.in: Make chill references obsolete.
+
+2002-07-24 Kevin Buettner <kevinb@redhat.com>
+
+ * configure.in (unistd.h): Add to AC_CHECK_HEADERS list.
+ * configure: Regenerate.
+ * config.in: Regenerate.
+
+2002-07-09 David O'Brien <obrien@FreeBSD.org>
+
+ * gdbreplay.c (stdlib.h, unistd.h): Conditionaly include.
+ (perror_with_name, remote_close, remote_open, expect, play): Static.
+
+2002-07-04 Michal Ludvig <mludvig@suse.cz>
+
+ * 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-06-13 Daniel Jacobowitz <drow@mvista.com>
+
+ * regcache.c: Add comment.
+
+2002-06-11 Daniel Jacobowitz <drow@mvista.com>
+
+ * thread-db.c: New file.
+ * proc-service.c: New file.
+ * acinclude.m4: New file.
+ * Makefile.in: Add GDBSERVER_LIBS, gdb_proc_service_h,
+ proc-service.o, and thread-db.o.
+ (linux-low.o): Add USE_THREAD_DB.
+ * acconfig.h: Add HAVE_PRGREGSET_T, HAVE_PRFPREGSET_T,
+ HAVE_LWPID_T, HAVE_PSADDR_T, and PRFPREGSET_T_BROKEN.
+ * aclocal.m4: Regenerated.
+ * config.in: Regenerated.
+ * configure: Regenerated.
+ * 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.
+ * configure.srv: Enable thread_db support for ARM, i386, MIPS,
+ PowerPC, and SuperH.
+ * i387-fp.c: Constify arguments.
+ * i387-fp.h: Likewise.
+ * 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.
+ * 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.
+ * 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.
+ * regcache.h: Update.
+ * 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.
+ * 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.
+ * server.h: Update.
+ (struct inferior_list, struct_inferior_list_entry): New.
+ * target.c (set_desired_inferior): New.
+ (write_inferior_memory): Constify.
+ (mywait): New function.
+ * target.h: Update.
+ (struct target_ops): New signal_pid method.
+ (mywait): Removed macro, added prototype.
+
+ * 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.
+
+ * 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.
+ * 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.
+ * 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.
+ * 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.
+ * 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.
+ * linux-x86-64-low.c (target_regsets): Add new kind
+ identifier.
+
+2002-05-15 Daniel Jacobowitz <drow@mvista.com>
+
+ From Martin Pool <mbp@samba.org>:
+ * server.c (gdbserver_usage): New function.
+ (main): Call it.
+
+2002-05-14 Daniel Jacobowitz <drow@mvista.com>
+
+ * mem-break.c (reinsert_breakpoint_by_bp): Correct typo
+ stop_at -> stop_pc.
+
+2002-05-04 Andrew Cagney <ac131313@redhat.com>
+
+ * Makefile.in: Remove obsolete code.
+
+2002-04-24 Michal Ludvig <mludvig@suse.cz>
+
+ * linux-low.c (regsets_fetch_inferior_registers),
+ (regsets_store_inferior_registers): Removed cast to int from
+ ptrace() calls.
+ * regcache.h: Added declaration of struct inferior_info.
+
+2002-04-20 Daniel Jacobowitz <drow@mvista.com>
+
+ * 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.
+ * 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.
+ * regcache.h: Add prototypes.
+ * server.h: Likewise.
+
+2002-04-20 Daniel Jacobowitz <drow@mvista.com>
+
+ * mem-break.c: New file.
+ * mem-break.h: New file.
+ * Makefile.in: Add mem-break.o rule; update server.h
+ dependencies.
+ * 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.
+ * linux-i386-low.c (i386_breakpoint, i386_breakpoint_len)
+ (i386_stop_pc, i386_set_pc): New. Add to the_low_target.
+ * 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.
+ * linux-low.h (struct linux_target_ops): Add breakpoint
+ handling members.
+ * server.c (attach_inferior): Remove extra add_inferior
+ call.
+ * server.h: Include mem-break.h. Update inferior.c
+ prototypes.
+ * target.c (read_inferior_memory)
+ (write_inferior_memory): New functions.
+ * 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-11 Daniel Jacobowitz <drow@mvista.com>
+
+ * linux-low.c (usr_store_inferior_registers): Support
+ registers which are allowed to fail to store.
+ * linux-low.h (linux_target_ops): Likewise.
+ * linux-ppc-low.c (ppc_regmap): Support FPSCR.
+ (ppc_cannot_store_register): FPSCR may not be storable.
+
+2002-04-09 Daniel Jacobowitz <drow@mvista.com>
+
+ * server.h: Include <string.h> if HAVE_STRING_H.
+ * ChangeLog: Correct paths in last ChangeLog entry.
+
+2002-04-09 Daniel Jacobowitz <drow@mvista.com>
+
+ * linux-low.h: Remove obsolete prototypes.
+ (struct linux_target_ops): New.
+ (extern the_low_target): New.
+ * linux-low.c (num_regs, regmap): Remove declarations.
+ (register_addr): Use the_low_target explicitly.
+ (fetch_register): Likewise.
+ (usr_fetch_inferior_registers): Likewise.
+ (usr_store_inferior_registers): Likewise.
+ * linux-arm-low.c (num_regs): Remove.
+ (arm_num_regs): Define.
+ (arm_regmap): Renamed from regmap, made static.
+ (arm_cannot_fetch_register): Renamed from cannot_fetch_register,
+ made static.
+ (arm_cannot_store_register): Renamed from cannot_store_register,
+ made static.
+ (the_low_target): New.
+ * linux-i386-low.c (num_regs): Remove.
+ (i386_num_regs): Define.
+ (i386_regmap): Renamed from regmap, made static.
+ (i386_cannot_fetch_register): Renamed from cannot_fetch_register,
+ made static.
+ (i386_cannot_store_register): Renamed from cannot_store_register,
+ made static.
+ (the_low_target): New.
+ * linux-ia64-low.c (num_regs): Remove.
+ (ia64_num_regs): Define.
+ (ia64_regmap): Renamed from regmap, made static.
+ (ia64_cannot_fetch_register): Renamed from cannot_fetch_register,
+ made static.
+ (ia64_cannot_store_register): Renamed from cannot_store_register,
+ made static.
+ (the_low_target): New.
+ * linux-m68k-low.c (num_regs): Remove.
+ (m68k_num_regs): Define.
+ (m68k_regmap): Renamed from regmap, made static.
+ (m68k_cannot_fetch_register): Renamed from cannot_fetch_register,
+ made static.
+ (m68k_cannot_store_register): Renamed from cannot_store_register,
+ made static.
+ (the_low_target): New.
+ * linux-mips-low.c (num_regs): Remove.
+ (mips_num_regs): Define.
+ (mips_regmap): Renamed from regmap, made static.
+ (mips_cannot_fetch_register): Renamed from cannot_fetch_register,
+ made static.
+ (mips_cannot_store_register): Renamed from cannot_store_register,
+ made static.
+ (the_low_target): New.
+ * linux-ppc-low.c (num_regs): Remove.
+ (ppc_num_regs): Define.
+ (ppc_regmap): Renamed from regmap, made static.
+ (ppc_cannot_fetch_register): Renamed from cannot_fetch_register,
+ made static.
+ (ppc_cannot_store_register): Renamed from cannot_store_register,
+ made static.
+ (the_low_target): New.
+ * linux-s390-low.c (num_regs): Remove.
+ (s390_num_regs): Define.
+ (s390_regmap): Renamed from regmap, made static.
+ (s390_cannot_fetch_register): Renamed from cannot_fetch_register,
+ made static.
+ (s390_cannot_store_register): Renamed from cannot_store_register,
+ made static.
+ (the_low_target): New.
+ * linux-sh-low.c (num_regs): Remove.
+ (sh_num_regs): Define.
+ (sh_regmap): Renamed from regmap, made static.
+ (sh_cannot_fetch_register): Renamed from cannot_fetch_register,
+ made static.
+ (sh_cannot_store_register): Renamed from cannot_store_register,
+ made static.
+ (the_low_target): New.
+ * linux-x86-64-low.c (x86_64_regmap): Renamed from regmap.
+ (the_low_target): New.
+
+2002-04-09 Daniel Jacobowitz <drow@mvista.com>
+
+ * Makefile.in: Add stamp-h target.
+ * configure.in: Create stamp-h.
+ * configure: Regenerated.
+
+2002-04-09 Daniel Jacobowitz <drow@mvista.com>
+
+ * inferiors.c: New file.
+ * target.c: New file.
+ * target.h: New file.
+ * Makefile.in: Add target.o and inferiors.o. Update
+ dependencies.
+ * linux-low.c (inferior_pid): New static variable,
+ moved from server.c.
+ (linux_create_inferior): Renamed from create_inferior.
+ Call add_inferior. Return 0 on success instead of a PID.
+ (linux_attach): Renamed from myattach.
+ (linux_kill): Renamed from kill_inferior. Call clear_inferiors ().
+ (linux_thread_alive): Renamed from mythread_alive.
+ (linux_wait): Renamed from mywait. Call clear_inferiors () if the
+ child dies.
+ (linux_resume): Renamed from myresume. Add missing ``return 0''.
+ (regsets_store_inferior_registers): Correct error message.
+ Add missing ``return 0''.
+ (linux_fetch_registers): Renamed from fetch_inferior_registers.
+ (linux_store_registers): Renamed from store_inferior_registers.
+ (linux_read_memory): Renamed from read_inferior_memory.
+ (linux_write_memory): Renamed from write_inferior_memory.
+ (linux_target_ops): New structure.
+ (initialize_low): Call set_target_ops ().
+ * remote-utils.c (unhexify): New function.
+ (hexify): New function.
+ (input_interrupt): Send signals to ``signal_pid''.
+ * server.c (inferior_pid): Remove.
+ (start_inferior): Update create_inferior call.
+ (attach_inferior): Call add_inferior.
+ (handle_query): New function.
+ (main): Call handle_query for `q' packets.
+ * server.h: Include "target.h". Remove obsolete prototypes.
+ Add prototypes for "inferiors.c", "target.c", hexify, and unhexify.
+
+2002-04-09 Daniel Jacobowitz <drow@mvista.com>
+
+ * Makefile.in: Add WARN_CFLAGS. Update configury
+ dependencies.
+ * configure.in: Check for <string.h>
+ * configure: Regenerate.
+ * config.in: Regenerate.
+ * gdbreplay.c: Include needed system headers.
+ (remote_open): Remove strchr prototype.
+ * linux-low.h: Correct #ifdef to HAVE_LINUX_USRREGS.
+ * regcache.c (supply_register): Change buf argument to const void *.
+ (supply_register_by_name): Likewise.
+ (collect_register): Change buf argument to void *.
+ (collect_register_by_name): Likewise.
+ * regcache.h: Add missing prototypes.
+ * remote-utils.c: Include <arpa/inet.h> for inet_ntoa.
+ * server.c (handle_query): New function.
+ (attached): New static variable, moved out of main.
+ (main): Quiet longjmp clobber warnings.
+ * server.h: Add ATTR_NORETURN and ATTR_FORMAT. Update prototypes.
+ * utils.c (error): Remove NORETURN.
+ (fatal): Likewise.
+