2009-10-29 Paul Brook <paul@codesourcery.com>
[deliverable/binutils-gdb.git] / gdb / gdbserver / ChangeLog
index 6159aca735d30ff9ca02df6639107fcf2dd64d53..fceb900c4f79e8d6a497344415ad1b0d9764fea7 100644 (file)
@@ -1,3 +1,378 @@
+2009-10-29  Paul Pluzhnikov  <ppluzhnikov@google.com>
+
+       * configure.ac: New --with-libthread-db option.
+       * thread-db.c: Allow direct dependence on libthread_db.
+       (thread_db_free): Adjust.
+       * config.in: Regenerate.
+       * configure: Likewise.
+       
+2009-10-28  Paul Pluzhnikov  <ppluzhnikov@google.com>
+
+       PR gdb/10757
+       * thread-db.c (attach_thread): New function.
+       (maybe_attach_thread): Return success/failure.
+       (find_new_threads_callback): Adjust.
+       (thread_db_find_new_threads): Loop until no new threads.        
+       
+2009-10-13  Pedro Alves  <pedro@codesourcery.com>
+
+       * proc-service.c (ps_lgetregs): Formatting.
+
+2009-10-08  Paul Pluzhnikov  <ppluzhnikov@google.com>
+
+       * acinclude.m4: (SRV_CHECK_THREAD_DB, SRV_CHECK_TLS_GET_ADDR): Remove.
+       * configure.ac: Adjust.
+       * linux-low.h (struct process_info_private): Move members to struct
+       thread_db.
+       (thread_db_free, thread_db_handle_monitor_command): New prototype.
+       * linux-low.c (linux_remove_process): Adjust.
+       (linux_wait_for_event_1, linux_look_up_symbols): Likewise.
+       * server.c (handle_query): Move code ...
+       (handle_monitor_command): ... here. New function.
+       * target.h (struct target_ops): New member.
+       * thread-db.c (struct thread_db): New.
+       (libthread_db_search_path): New variable.
+       (thread_db_create_event, thread_db_enable_reporting)
+       (find_one_thread, maybe_attach_thread, find_new_threads_callback)
+       (thread_db_find_new_threads, (thread_db_get_tls_address): Adjust.
+       (try_thread_db_load_1, dladdr_to_soname): New functions.
+       (try_thread_db_load, thread_db_load_search): New functions.
+       (thread_db_init): Search for libthread_db.
+       (thread_db_free): New function.
+       (thread_db_handle_monitor_command): Likewise.
+       * config.in: Regenerate.
+       * configure: Regenerate.
+       
+2009-09-27  Ulrich Weigand  <uweigand@de.ibm.com>
+
+       * spu-low.c (spu_kill): Wait for inferior to terminate.
+       Call clear_inferiors.
+       (spu_detach): Call clear_inferiors.
+
+2009-08-22  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
+
+       * aclocal.m4: Regenerate.
+       * config.in: Likewise.
+       * configure: Likewise.
+
+2009-07-31  Ulrich Weigand  <uweigand@de.ibm.com>
+
+       * linux-ppc-low.c (INSTR_SC, NR_spu_run): Define.
+       (parse_spufs_run): New function.
+       (ppc_get_pc, ppc_set_pc): Detect and handle SPU PC.
+       (ppc_breakpoint_at): Handle SPU breakpoints.
+
+2009-07-31  Ulrich Weigand  <uweigand@de.ibm.com>
+
+       * linux-low.c: Include <sys/stat.h> and <sys/vfs.h>.
+       (SPUFS_MAGIC): Define.
+       (spu_enumerate_spu_ids): New function.
+       (linux_qxfer_spu): New function.
+       (linux_target_ops): Install linux_qxfer_spu.
+
+2009-07-31  Ulrich Weigand  <uweigand@de.ibm.com>
+
+       * configure.srv (powerpc*-*-linux*): Add powerpc-cell32l.o
+       and powerpc-cell64l.o to srv_regobj.  Add rs6000/powerpc-cell32l.xml
+       and rs6000/powerpc-cell64l.xml to srv_xmlfiles.
+       * Makefile.in (powerpc-cell32l.o, powerpc-cell32l.c): New rules.
+       (powerpc-cell64l.o, powerpc-cell64l.c): Likewise.
+       (clean): Handle powerpc-cell32l.c and powerpc-cell64l.c.
+       * linux-ppc-low.c (PPC_FEATURE_CELL): Define.
+       (init_registers_powerpc_cell32l): Add prototype.
+       (init_registers_powerpc_cell64l): Likewise.
+       (ppc_arch_setup): Detect Cell/B.E. architecture.
+
+2009-07-30  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
+
+       * Makefile.in (datarootdir): New variable.
+
+2009-07-28  Daniel Jacobowitz  <dan@codesourcery.com>
+
+       * linux-low.c (linux_write_memory): Update debugging output.
+       * Makefile.in (clean): Add new descriptions.
+       (arm-with-vfpv2.o, arm-with-vfpv2.c, arm-with-vfpv3.o)
+       (arm-with-vfpv3.c, arm-with-neon.o, arm-with-neon.c): New rules.
+       * configure.srv: Add new files for arm*-*-linux*.
+       * linux-arm-low.c: Add new declarations.
+       (PTRACE_GETVFPREGS, PTRACE_SETVFPREGS): Define if undefined.
+       (arm_hwcap, HWCAP_VFP, HWCAP_IWMMXT, HWCAP_NEON, HWCAP_VFPv3)
+       (HWCAP_VFPv3D16): New.
+       (arm_fill_wmmxregset, arm_store_wmmxregset): Check HWCAP_IWMMXT
+       instead of __IWMMXT__.
+       (arm_fill_vfpregset, arm_store_vfpregset, arm_get_hwcap)
+       (arm_arch_setup): New.
+       (target_regsets): Remove #ifdef.  Add VFP regset.
+       (the_low_target): Use arm_arch_setup.
+
+2009-07-28  Daniel Jacobowitz  <dan@codesourcery.com>
+
+       * linux-low.c (linux_kill_one_lwp): Adjust kernel workaround to skip
+       the main thread again.
+
+2009-07-06  Aleksandar Ristovski  <aristovski@qnx.com>
+
+       Adding Neutrino gdbserver.
+       * configure: Regenerated.
+       * configure.ac: Add case for srv_qnx and set LIBS accordingly.
+       * configure.srv (i[34567]86-*-nto*): New target.
+       * nto-low.c, nto-low.h, nto-x86-low.c: New files.
+       * remote-utils.c [__QNX__]: Include sys/iomgr.h
+       (nto_comctrl) [__QNX__]: New function.
+       (enable_async_io, disable_async_io) [__QNX__]: Call nto_comctrl.
+
+2009-07-05  Danny Backx  <dannybackx@users.sourceforge.net>
+
+       * configure.srv (i[34567]86-*-mingw32ce*): Add i386-low.o to
+       srv_tgtobj.
+
+2009-07-04  Danny Backx  <dannybackx@users.sourceforge.net>
+           Pedro Alves  <pedro@codesourcery.com>
+
+       * win32-i386-low.c (i386_get_thread_context): Handle systems that
+       don't support CONTEXT_EXTENDED_REGISTERS.
+       (i386_win32_breakpoint, i386_win32_breakpoint_len): New.
+       (the_low_target): Install them.
+       * win32-low.c (get_child_debug_event): Handle WaitForDebugEvent
+       failing with ERROR_PIPE_NOT_CONNECTED.
+
+2009-06-30  Doug Evans  <dje@google.com>
+           Pierre Muller  <muller@ics.u-strasbg.fr>
+
+       Add h/w watchpoint support to x86-linux, win32-i386.
+       * Makefile.in (SFILES): Add i386-low.c
+       (i386_low_h): Define.
+       (i386-low.o): Add dependencies.
+       (linux-x86-low.o): Add i386-low.h dependency.
+       (win32-i386-low.o): Ditto.
+       * i386-low.c: New file.
+       * i386-low.h: New file.
+       * configure.srv (i[34567]86-*-cygwin*): Add i386-low.o to srv_tgtobj.
+       (i[34567]86-*-linux*, i[34567]86-*-mingw*, x86_64-*-linux*): Ditto.
+       * linux-low.c (linux_add_process): Initialize arch_private.
+       (linux_remove_process): Free arch_private.
+       (add_lwp): Initialize arch_private.
+       (delete_lwp): Free arch_private.
+       (linux_resume_one_lwp): Call the_low_target.prepare_to_resume if
+       provided.
+       * linux-low.h (process_info_private): New member arch_private.
+       (lwp_info): New member arch_private.
+       (linux_target_ops): New members new_process, new_thread,
+       prepare_to_resume.
+       (ptid_of): New macro.
+       * linux-x86-low.c: Include stddef.h, i386-low.h.
+       (arch_process_info): New struct.
+       (arch_lwp_info): New struct.
+       (x86_linux_dr_get, x86_linux_dr_set): New functions.
+       (i386_dr_low_set_addr, i386_dr_low_set_control): New functions.
+       (i386_dr_low_get_status): New function.
+       (x86_insert_point, x86_remove_point): New functions.
+       (x86_stopped_by_watchpoint): New function.
+       (x86_stopped_data_address): New function.
+       (x86_linux_new_process, x86_linux_new_thread): New functions.
+       (x86_linux_prepare_to_resume): New function.
+       (the_low_target): Add entries for insert_point, remove_point,
+       stopped_by_watchpoint, stopped_data_address, new_process, new_thread,
+       prepare_to_resume.
+       * server.c (debug_hw_points): New global.
+       (monitor_show_help): Document set debug-hw-points.
+       (handle_query): Process "set debug-hw-points".
+       * server.h (debug_hw_points): Declare.
+       (paddress): Declare.
+       * utils.c (NUMCELLS, CELLSIZE): New macros.
+       (get_sell, xsnprintf, paddress): New functions.
+       * win32-arm-low.c (the_low_target): Add entries for insert_point,
+       remove_point, stopped_by_watchpoint, stopped_data_address.
+       * win32-i386-low.c: Include i386-low.h.
+       (debug_reg_state): Replaces dr.
+       (i386_dr_low_set_addr, i386_dr_low_set_control): New functions.
+       (i386_dr_low_get_status): New function.
+       (i386_insert_point, i386_remove_point): New functions.
+       (i386_stopped_by_watchpoint): New function.
+       (i386_stopped_data_address): New function.
+       (i386_initial_stuff): Update.
+       (get_thread_context,set_thread_context,i386_thread_added): Update.
+       (the_low_target): Add entries for insert_point,
+       remove_point, stopped_by_watchpoint, stopped_data_address.
+       * win32-low.c (win32_insert_watchpoint): New function.
+       (win32_remove_watchpoint): New function.
+       (win32_stopped_by_watchpoint): New function.
+       (win32_stopped_data_address): New function.
+       (win32_target_ops): Add entries for insert_watchpoint,
+       remove_watchpoint, stopped_by_watchpoint, stopped_data_address.
+       * win32-low.h (win32_target_ops): New members insert_point,
+       remove_point, stopped_by_watchpoint, stopped_data_address.
+
+2009-06-25  Pedro Alves  <pedro@codesourcery.com>
+
+       * server.c (process_serial_event): Re-return unsupported, not
+       error, if the type isn't recognized.  Re-allow supporting only
+       insert or remove packets.  Also call require_running for
+       breakpoints.  Add missing break statement to default case.  Tidy.
+       * target.h (struct target_ops): Rename insert_watchpoint to
+       insert_point, and remove_watchpoint to remove_point.
+
+       * linux-low.h (struct linux_target_ops): Likewise.
+       * linux-low.c (linux_insert_watchpoint): Rename to ...
+       (linux_insert_point): ... this.  Adjust.
+       (linux_remove_watchpoint): Rename to ...
+       (linux_remove_point): ... this.  Adjust.
+       (linux_target_ops): Adjust.
+       * linux-crisv32-low.c (cris_insert_watchpoint): Rename to ...
+       (cris_insert_point): ... this.
+       (cris_remove_watchpoint): Rename to ...
+       (cris_remove_point): ... this.
+       (the_low_target): Adjust.
+
+2009-06-24  Pierre Muller  <muller@ics.u-strasbg.fr>
+
+       * server.c (handle_v_kill): Pass signal_pid to
+       kill_inferior if multi_process is zero.
+
+2009-06-23  Aleksandar Ristovski  <aristovski@qnx.com>
+
+       * server.c (process_serial_event): Add support for Z0 and Z1 packet.
+       * target.h (target_ops): Comment for *_watchpoint to make it clear
+       the functions can get types '0' and '1'.
+
+2009-06-22  Aleksandar Ristovski  <aristovski@qnx.com>
+
+       * linux-low.c (usr_fetch_inferior_registers): Remove check for regno 0.
+       * proc-service.c (ps_lgetregs): Pass -1 to fetch all registers.
+       * regcache.c (get_regcache): Likewise.
+       * spu-low.c (spu_fetch_registers): Remove 0 to -1 conversion.
+       * win32-low.c (child_fetch_inferior_registers): Remove check for
+       regno 0.
+
+2009-06-19  Aleksandar Ristovski  <aristovski@qnx.com>
+           Pedro Alves <pedro@codesourcery.com>
+
+       * target.h (struct target_ops) <supports_multi_process>: New
+       callback.
+       (target_supports_multi_process): New.
+       * server.c (handle_query): Even if GDB reports support, only
+       enable multi-process if the target also supports it.  Report
+       multi-process support only if the target backend supports it.
+       * linux-low.c (linux_supports_multi_process): New function.
+       (linux_target_ops): Install it as target_supports_multi_process
+       callback.
+
+2009-05-24  Doug Evans  <dje@google.com>
+
+       Global renaming of find_thread_pid to find_thread_ptid.
+       * server.h (find_thread_ptid): Renamed from find_thread_pid.
+       * inferiors.c (find_thread_ptid): Renamed from find_thread_pid.
+       All callers updated.
+
+       * linux-low.c (handle_extended_wait): Use linux_resume_one_lwp
+       to resume the newly created thread, don't call ptrace (PTRACE_CONT)
+       directly.
+
+       * linux-low.c (get_stop_pc): Print pc if debug_threads.
+       (check_removed_breakpoint, linux_wait_for_lwp): Ditto.
+       (linux_resume_one_lwp): Ditto.
+
+2009-05-23  Doug Evans  <dje@google.com>
+
+       * linux-low.c (linux_resume_one_lwp): Change type of first arg
+       from struct inferior_list_entry * to struct lwp_info *.
+       All callers updated.
+
+2009-05-13  Doug Evans  <dje@google.com>
+
+       * linux-x86-low.c: Don't include assert.h.
+       (x86_siginfo_fixup): Use fatal, not assert.
+       (x86_arch_setup): Fix comment.
+
+2009-05-12  Doug Evans  <dje@google.com>
+
+       Biarch support for i386/amd64 gdbserver.
+       * Makefile.in (SFILES): Remove linux-i386-low.c, linux-x86-64-low.c.
+       Add linux-x86-low.c.
+       (linux-i386-low.o, linux-x86-64-low.o): Delete.
+       (linux-x86-low.o): Add.
+       * linux-x86-64-low.c: Delete.
+       * linux-i386-low.c: Delete.
+       * linux-x86-low.c: New file.
+       * configure.srv (i?86-linux srv_tgtobj): Replace linux-i386-low.o with
+       linux-x86-low.o.
+       (x86_64-linux srv_tgtobj): Replace linux-x86-64-low.o with
+       linux-x86-low.o.
+       (x86_64-linux srv_regobj): Add reg-i386-linux.o.
+       * linux-low.c: Include ansidecl.h, elf/common.h, elf/external.h.
+       (linux_child_pid_to_exec_file): New function.
+       (elf_64_header_p, elf_64_file_p): New functions.
+       (siginfo_fixup): New function.
+       (linux_xfer_siginfo): New local inf_siginfo.  Call siginfo_fixup to
+       give target a chance to convert layout.
+       * linux-low.h (linux_target_ops): New member siginfo_fixup.
+       (linux_child_pid_to_exec_file, elf_64_file_p): Declare.
+
+2009-05-07  Doug Evans  <dje@google.com>
+
+       * linux-low.c (regsets_fetch_inferior_registers): Fix memory leak.
+       (regsets_store_inferior_registers): Ditto.
+
+2009-05-06  Pedro Alves  <pedro@codesourcery.com>
+
+       PR server/10048
+
+       * linux-low.c (must_set_ptrace_flags): Delete.
+       (linux_create_inferior): Set `lwp->must_set_ptrace_flags' instead
+       of the global.
+       (linux_attach_lwp_1): Don't set PTRACE_SETOPTIONS here.  Set
+       `lwp->must_set_ptrace_flags' instead.
+       (linux_wait_for_event_1): Set ptrace options here.
+       (linux_wait_1): ... not here.
+
+2009-04-30  Doug Evans  <dje@google.com>
+
+       * inferiors.c (started_inferior_callback): New function.
+       (attached_inferior_callback): New function.
+       (have_started_inferiors_p, have_attached_inferiors_p): New functions.
+       * server.c (print_started_pid, print_attached_pid): New functions.
+       (detach_or_kill_for_exit): New function.
+       (main): Call it instead of for_each_inferior (kill_inferior_callback).
+       * server.h (have_started_inferiors_p): Declare.
+       (have_attached_inferiors_p): Declare.
+
+       * inferiors.c (remove_process): Fix memory leak, free process.
+       * linux-low.c (linux_remove_process): New function.
+       (linux_kill): Call it instead of remove_process.
+       (linux_detach, linux_wait_1): Ditto.
+
+2009-04-19  Danny Backx  <dannybackx@users.sourceforge.net>
+
+       * configure.srv: Add x86 Windows CE target.
+
+2009-04-03  Ulrich Weigand  <uweigand@de.ibm.com>
+
+       * inferiors.c (get_thread_process): Make global.
+       * server.h (get_thread_process): Add prototype.
+       * thread-db.c (find_one_thread): Use get_thread_process
+       instead of current_process.
+       (thread_db_get_tls_address): Do not crash if called when
+       thread layer is not yet initialized.
+
+2009-04-03  Ulrich Weigand  <uweigand@de.ibm.com>
+
+       * remote-utils.c (prepare_resume_reply): Null-terminate packet.
+       * spu-low.c (current_tid): Rename to ...
+       (current_ptid): ... this.
+       (fetch_ppc_register, fetch_ppc_memory, store_ppc_memory,
+       spu_proc_xfer_spu, spu_resume, spu_request_interrupt): Use
+       ptid_get_lwp (current_ptid) instead of current_tid.
+       (spu_kill, spu_detach, spu_join, spu_wait): Use pid argument
+       instead of current_tid.  Use find_process_pid to verify pid
+       argument is valid.  Pass proper argument to remove_process.
+       (spu_thread_alive): Compare current_ptid instead of current_tid.
+       (spu_resume): Likewise.
+
+2009-04-02  Pedro Alves  <pedro@codesourcery.com>
+
+       * linux-low.c (usr_store_inferior_registers): Declare local `pid'
+       variable.
+
 2009-04-01  Pedro Alves  <pedro@codesourcery.com>
 
        Implement the multiprocess extensions, and add linux multiprocess
This page took 0.03113 seconds and 4 git commands to generate.