2012-03-28 Pedro Alves <palves@redhat.com>
[deliverable/binutils-gdb.git] / gdb / gdbserver / ChangeLog
index 73d1b94498b240e82d2306a4dd36f8a9f4325261..8627aa9c4a7add8c45e1e221fdddb0686c59a7b9 100644 (file)
@@ -1,3 +1,478 @@
+2012-03-28  Pedro Alves  <palves@redhat.com>
+
+       * linux-ia64-low.c (ia64_regmap): Map IA64_EC_REGNUM to PT_AR_EC.
+       (IA64_GR0_REGNUM, IA64_FR0_REGNUM)
+       (IA64_FR1_REGNUM): New defines.
+       (ia64_fetch_register): New.
+       (the_low_target): Install it.
+       * linux-low.h (struct linux_target_ops) <fetch_register>: New
+       field.
+       * linux-low.c (linux_fetch_registers): Try the
+       the_low_target.fetch_register hook first.
+
+       * linux-arm-low.c (the_low_target): Adjust.
+       * linux-bfin-low.c (the_low_target): Adjust.
+       * linux-cris-low.c (the_low_target): Adjust.
+       * linux-crisv32-low.c (the_low_target): Adjust.
+       * linux-m32r-low.c (the_low_target): Adjust.
+       * linux-m68k-low.c (the_low_target): Adjust.
+       * linux-mips-low.c (the_low_target): Adjust.
+       * linux-ppc-low.c (the_low_target): Adjust.
+       * linux-s390-low.c (the_low_target): Adjust.
+       * linux-sh-low.c (the_low_target): Adjust.
+       * linux-sparc-low.c (the_low_target): Adjust.
+       * linux-tic6x-low.c (the_low_target): Adjust.
+       * linux-x86-low.c (the_low_target): Adjust.
+       * linux-xtensa-low.c (the_low_target): Adjust.
+
+2012-03-26  Pedro Alves  <palves@redhat.com>
+
+       * server.c (handle_qxfer_libraries): Don't bail early if
+       the_target->qxfer_libraries_svr4 is not NULL.
+
+2012-03-26  Pedro Alves  <palves@redhat.com>
+
+       * linux-low.c (linux_qxfer_libraries_svr4): Fix pasto in comment.
+
+2012-03-23  Pedro Alves  <palves@redhat.com>
+
+       * linux-low.c (linux_qxfer_libraries_svr4): Terminate the
+       "library-list-svr4" element's start tag when the the DSO list is
+       empty.
+
+2012-03-23  Pedro Alves  <palves@redhat.com>
+
+       * linux-low.c (read_one_ptr): Read the inferior's pointer through
+       a variable whose type size is the same as the inferior's pointer
+       size.
+
+2012-03-21  Thomas Schwinge  <thomas@codesourcery.com>
+
+       * linux-arm-low.c (arm_stopped_by_watchpoint): Use siginfo_t instead of
+       struct siginfo.
+       * linux-low.c (siginfo_fixup, linux_xfer_siginfo): Likewise.
+       * linux-x86-low.c (x86_siginfo_fixup): Likewise.
+       * linux-low.h: Include <signal.h>.
+       (struct siginfo): Remove forward declaration.
+       (struct linux_target_ops) <siginfo_fixup>: Use siginfo_t instead of
+       struct siginfo.
+
+2012-03-21  Mike Frysinger  <vapier@gentoo.org>
+
+       * .gitignore: Ignore more files.
+
+2012-03-19  Pedro Alves  <palves@redhat.com>
+           Jan Kratochvil  <jan.kratochvil@redhat.com>
+
+       * server.c (cont_thread, general_thread): Add describing comments.
+       (start_inferior): Clear `cont_thread'.
+       (handle_v_cont): Don't set `cont_thread' if resuming all threads
+       of a process.
+
+2012-03-15  Yao Qi  <yao@codesourcery.com>
+
+       * tracepoint.c (install_tracepoint): Move duplicated tracepoint
+       handling to ...
+       (cmd_qtdp): ... here.
+
+2012-03-15  Yao Qi  <yao@codesourcery.com>
+
+       * tracepoint.c (struct tracepoint_action_ops): New.
+       (struct tracepoint_action) [!IN_PROCESS_AGENT] <ops>: New field.
+       (m_tracepoint_action_download): New.
+       (r_tracepoint_action_download): New.
+       (x_tracepoint_action_download): New.
+       (l_tracepoint_action_download): New.
+       (add_tracepoint_action): Install `action->ops' according type.
+       (download_tracepoint_1): Move code `download' function pointer
+       of various tracepoint_action_ops.
+
+2012-03-13  Jan Kratochvil  <jan.kratochvil@redhat.com>
+
+       * linux-low.c (linux_attach_lwp_1): New variable buffer.  Call
+       linux_ptrace_attach_warnings.
+
+2012-03-13  Jan Kratochvil  <jan.kratochvil@redhat.com>
+
+       * Makefile.in (linux-ptrace.o): New.
+       * configure.srv (arm*-*-linux*, bfin-*-*linux*, crisv32-*-linux*)
+       (cris-*-linux*, i[34567]86-*-linux*, ia64-*-linux*, m32r*-*-linux*)
+       (m68*-*-linux*, m68*-*-uclinux*, mips*-*-linux*, powerpc*-*-linux*)
+       (s390*-*-linux*, sh*-*-linux*, sparc*-*-linux*, tic6x-*-uclinux)
+       (x86_64-*-linux*, xtensa*-*-linux*): Add linux-ptrace.o to SRV_TGTOBJ
+       of these targets.
+       * linux-low.c (linux_attach_lwp_1): Remove redundent else clause.
+
+2012-03-08  Yao Qi  <yao@codesourcery.com>
+           Pedro Alves  <palves@redhat.com>
+
+       Fix PR server/13392.
+       * linux-x86-low.c (amd64_install_fast_tracepoint_jump_pad): Check
+       offset of JMP insn.
+       * tracepoint.c (remove_tracepoint): New.
+       (cmd_qtdp): Call remove_tracepoint when failed to install.
+
+2012-03-07  Pedro Alves  <palves@redhat.com>
+
+       * linux-low.c (get_detach_signal): New.
+       (linux_detach_one_lwp): Get rid of a pending SIGSTOP with SIGCONT.
+       Pass on pending signals to PTRACE_DETACH.  Check the result of the
+       ptrace call.
+       * server.c (program_signals, program_signals_p): New.
+       (handle_general_set): Handle QProgramSignals.
+       * server.h (program_signals, program_signals_p): Declare.
+
+2012-03-05  Pedro Alves  <palves@redhat.com>
+           Jan Kratochvil  <jan.kratochvil@redhat.com>
+
+       * linux-low.c (get_dynamic): Don't warn when PT_PHDR isn't found.
+       New comment why.
+
+2012-03-03  Yao Qi  <yao@codesourcery.com>
+
+       * tracepoint.c (tracepoint_look_up_symbols): Update call to
+       agent_look_up_symbols.
+
+2012-03-03  Yao Qi  <yao@codesourcery.com>
+
+       * Makefile.in (linux-low.o): Keep dependence on agent.h.
+       (linux-x86-low.o): Likewise.
+       * server.h: Remove in_process_agent_loaded.
+       * tracepoint.c (in_process_agent_loaded): Removed.  Moved it
+       common/agent.c.
+       Update callers.
+
+2012-03-03  Yao Qi  <yao@codesourcery.com>
+
+       * tracepoint.c (gdb_agent_capability): New global.
+       (in_process_agent_loaded_ust): Renamed to
+       `in_process_agent_supports_ust'.
+       Update callers.
+       (in_process_agent_supports_ust): Call agent_capability_check.
+       (clear_installed_tracepoints): Assert that agent supports
+       agent.
+
+2012-03-03  Yao Qi  <yao@codesourcery.com>
+
+       * linux-low.c (linux_supports_agent): New.
+       (linux_target_ops): Initialize field `supports_agent' with
+       linux_supports_agent.
+       * target.h (struct target_ops) <supports_agent>: New.
+       (target_supports_agent): New macro.
+       * server.c (handle_general_set): Handle packet 'QAgent'.
+       (handle_query): Send `QAgent+'.
+       * Makefile.in (server.o): Depends on agent.h.
+
+2012-03-03  Yao Qi  <yao@codesourcery.com>
+
+       * Makefile.in (OBS): Add agent.o.
+       Add new rule for agent.o.
+       Track dependence of tracepoint.c on agent.h.
+       * tracepoint.c (run_inferior_command_1):
+       (run_inferior_command): Call agent_run_command.
+       (gdb_ust_connect_sync_socket): Deleted.  Move it to
+       common/agent.c.
+       (resume_thread, stop_thread): Likewise.
+       (gdb_ust_socket_init): Renamed to ...
+       (gdb_agent_socket_init): ... New.
+       (gdb_ust_thread): Renamed to ...
+       (gdb_agent_helper_thread): ... New.
+       (gdb_ust_init): Move some code to ...
+       (gdb_agent_init): ... here.  New.
+       [HAVE_UST]: Call gdb_ust_init.
+       (initialize_tracepoint_ftlib):  Call gdb_agent_init.
+       * configure.ac: Add `sys/un.h' to AC_CHECK_HEADERS.
+       * config.in, configure: Regenerated.
+
+2012-03-02  Pedro Alves  <palves@redhat.com>
+
+       * inferiors.c (add_pid_to_list, pull_pid_from_list): Delete.
+       * linux-low.c (struct simple_pid_list): New.
+       (stopped_pids): New a struct simple_pid_list pointer.
+       (add_to_pid_list, pull_pid_from_list): New.
+       (handle_extended_wait): Don't assume the first signal new children
+       report is SIGSTOP.  Adjust call to pull_pid_from_list.
+       (linux_wait_for_lwp): Adjust.
+
+2012-03-02  Yao Qi  <yao@codesourcery.com>
+
+       * tracepoint.c (do_action_at_tracepoint): Write `stop_pc' in
+       debug log.
+
+2012-03-02  Yao Qi  <yao@codesourcery.com>
+
+       * tracepoint.c (collect_ust_data_at_tracepoint): Remove parameters
+       `stop_pc' and `tpoint'.  Update caller.
+
+2012-03-01  Maciej W. Rozycki  <macro@codesourcery.com>
+
+       * linux-low.h (linux_target_ops): Add regset_bitmap member.
+       * linux-low.c (use_linux_regsets): New macro.
+       [!HAVE_LINUX_REGSETS] (regsets_fetch_inferior_registers): Likewise.
+       [!HAVE_LINUX_REGSETS] (regsets_store_inferior_registers): Likewise.
+       (linux_register_in_regsets): New function.
+       (usr_fetch_inferior_registers): Skip registers covered by
+       regsets.
+       (usr_store_inferior_registers): Likewise.
+       (usr_fetch_inferior_registers): New macro.
+       (usr_store_inferior_registers): Likewise.
+       (linux_fetch_registers): Handle mixed regset/non-regset targets.
+       (linux_store_registers): Likewise.
+       * linux-mips-low.c (init_registers_mips_dsp_linux): New
+       prototype.
+       (init_registers_mips64_dsp_linux): Likewise.
+       (init_registers_mips_linux): New macro.
+       (init_registers_mips_dsp_linux): Likewise.
+       (mips_dsp_num_regs): Likewise.
+       (DSP_BASE, DSP_CONTROL): New fallback macros.
+       (mips_base_regs): New macro.
+       (mips_regmap): Use it.  Fix the size.
+       (mips_dsp_regmap): New variable.
+       (mips_dsp_regset_bitmap): Likewise.
+       (mips_arch_setup): New function.
+       (mips_cannot_fetch_register): Use the_low_target.regmap rather
+       than mips_regmap.
+       (mips_cannot_store_register): Likewise.
+       (the_low_target): Update .arch_setup, .num_regs and .regmap
+       initializers.  Add .regset_bitmap initializer.
+       * linux-arm-low.c (the_low_target): Add .regset_bitmap
+       initializer.
+       * linux-bfin-low.c (the_low_target): Likewise.
+       * linux-cris-low.c (the_low_target): Likewise.
+       * linux-crisv32-low.c (the_low_target): Likewise.
+       * linux-ia64-low.c (the_low_target): Likewise.
+       * linux-m32r-low.c (the_low_target): Likewise.
+       * linux-m68k-low.c (the_low_target): Likewise.
+       * linux-ppc-low.c (the_low_target): Likewise.
+       * linux-s390-low.c (the_low_target): Likewise.
+       * linux-sh-low.c (the_low_target): Likewise.
+       * linux-sparc-low.c (the_low_target): Likewise.
+       * linux-tic6x-low.c (the_low_target): Likewise.
+       * linux-x86-low.c (the_low_target): Likewise.
+       * linux-xtensa-low.c (the_low_target): Likewise.
+       * configure.srv <mips*-*-linux*>: Add mips-dsp-linux.o and
+       mips64-dsp-linux.o to srv_regobj.  Add mips-dsp-linux.xml,
+       mips64-dsp-linux.xml, mips-dsp.xml and mips64-dsp.xml to
+       srv_xmlfiles.
+       * Makefile.in (mips-dsp-linux.o, mips-dsp-linux.c): New targets.
+       (mips64-dsp-linux.o, mips64-dsp-linux.c): Likewise.
+
+2012-02-29  Yao Qi  <yao@codesourcery.com>
+           Pedro Alves  <palves@redhat.com>
+
+       * linux-low.c: (linux_wait_1): Call unsuspend_all_lwps when
+       `step_over_finished' is true.
+
+2012-02-27  Pedro Alves  <palves@redhat.com>
+
+       * linux-low.c (pid_is_stopped): Delete, moved to common/.
+       (linux_attach_lwp_1): Adjust to use linux_proc_pid_is_stopped.
+
+2012-02-27  Pedro Alves  <palves@redhat.com>
+
+       PR server/9684
+       * linux-low.c (pid_is_stopped): New.
+       (linux_attach_lwp_1): Handle attaching to 'T (stopped)' processes.
+
+2012-02-25  Luis Machado  <lgustavo@codesourcery.com>
+
+       * mem-break.c (clear_gdb_breakpoint_conditions): Fix de-allocation
+       of conditions.
+
+2012-02-24  Maciej W. Rozycki  <macro@codesourcery.com>
+
+       * linux-mips-low.c (mips_regmap): Correct the index of $f9.
+
+2012-02-24  Luis Machado  <lgustavo@codesourcery>
+
+       * server.c (handle_query): Advertise support for target-side
+       breakpoint condition evaluation.
+       (process_point_options): New function.
+       (process_serial_event): When inserting a breakpoint, check for
+       a target-side condition that should be evaluated.
+
+       * mem-break.c: Include regcache.h and ax.h.
+       (point_cond_list_t): New data structure.
+       (breakpoint) <cond_list>: New field.
+       (find_gdb_breakpoint_at): Make non-static.
+       (delete_gdb_breakpoint_at): Clear any target-side
+       conditions.
+       (clear_gdb_breakpoint_conditions): New function.
+       (add_condition_to_breakpoint): Likewise.
+       (add_breakpoint_condition): Likewise.
+       (gdb_condition_true_at_breakpoint): Likewise.
+       (gdb_breakpoint_here): Return result directly instead
+       of going through a local variable.
+
+       * mem-break.h (find_gdb_breakpoint_at): New prototype.
+       (clear_gdb_breakpoint_conditions): Likewise.
+       (add_breakpoint_condition): Likewise.
+       (gdb_condition_true_at_breakpoint): Likewise.
+
+       * linux-low.c (linux_wait_1): Evaluate target-side breakpoint condition.
+       (need_step_over_p): Take target-side breakpoint condition into
+       consideration.
+
+2012-02-24  Luis Machado  <lgustavo@codesourcery>
+
+       * server.h: Include tracepoint.h.
+       (agent_mem_read, agent_get_trace_state_variable_value,
+       agent_set_trace_state_variable_value,
+       agent_tsv_read, agent_mem_read_string, get_get_tsv_func_addr,
+       get_set_tsv_func_addr): New prototypes.
+
+       * ax.h: New include file.
+       * ax.c: New source file.
+
+       * tracepoint.c: Include ax.h.
+       (gdb_agent_op, gdb_agent_op_names, gdb_agent_op_sizes,
+       agent_expr, eval_result_type): Move to ax.h.
+       (parse_agent_expr): Rename to ...
+       (gdb_parse_agent_expr): ... this, make it non-static and move
+       to ax.h.
+       (unparse_agent_expr) Rename to ...
+       (gdb_unparse_agent_expr): ... this, make it non-static and move
+       to ax.h.
+       (eval_agent_expr): Rename to ...
+       (eval_tracepoint_agent_expr): ... this.
+       (agent_mem_read, agent_mem_read_string, agent_tsv_read): Remove
+       forward declarations.
+       (add_tracepoint_action): Call gdb_parse_agent_expr (...).
+       (agent_get_trace_state_variable_value): New function.
+       (agent_set_trace_state_variable_value): New function.
+       (cmd_qtdp): Call gdb_parse_agent_expr (...).
+       (response_tracepoint): Call gdb_unparse_agent_expr (...).
+       (do_action_at_tracepoint): Call eval_tracepoint_agent_expr (...).
+       (condition_true_at_tracepoint): Likewise.
+       (parse_agent_expr): Rename to ...
+       (gdb_parse_agent_expr): ... this and move to ax.c.
+       (unparse_agent_expr): Rename to ...
+       (gdb_unparse_agent_expr): ... this and move to ax.c.
+       (gdb_agent_op_name): Move to ax.c.
+       (eval_agent_expr): Rename to ...
+       (gdb_eval_agent_expr): ... this, use regcache passed as parameter
+       and move to ax.c.
+       (eval_tracepoint_agent_expr): New function.
+       (agent_mem_read, agent_mem_read_string, agent_tsv_read): Make
+       non-static. 
+       (current_insn_ptr, emit_error, struct bytecode_address): Move to
+       ax.c.
+       (emit_prologue, emit_epilogue, emit_add, emit_sub, emit_mul, emit_lsh,
+       emit_rsh_signed, emit_rsh_unsigned, emit_ext, emit_log_not,
+       emit_bit_and, emit_bit_or, emit_bit_xor, emit_bit_not, emit_equal,
+       emit_less_signed, emit_less_unsigned, emit_ref, emit_if_goto,
+       emit_goto, write_goto_address, emit_const, emit_reg, emit_pop,
+       emit_stack, emit_zero_ext, emit_swap, emit_stack_adjust,
+       emit_int_call_1, emit_void_call_2, emit_eq_goto, emit_ne_goto,
+       emit_lt_goto, emit_ge_goto, emit_gt_goto, emit_le_goto): Move to ax.c.
+       (get_get_tsv_func_addr, get_set_tsv_func_addr): New functions.
+       (compile_bytecodes): Remove forward declaration.
+       (is_goto_target): Move to ax.c.
+       (compile_bytecodes): Move to ax.c and call
+       agent_get_trace_state_variable_value (...) and
+       agent_set_trace_state_variable_value (...).
+
+       * Makefile.in: Update ax.c and IPA dependencies.
+
+2012-02-24  Pedro Alves  <palves@redhat.com>
+
+       * tracepoint.c (cmd_bigqtbuffer): Rename as ...
+       (cmd_bigqtbuffer_circular): ... this.  Only handle
+       'QTBuffer:circular:'.
+       (handle_tracepoint_general_set): Adjust.
+
+2012-02-16  Yao Qi  <yao@codesourcery.com>
+
+       * inferiors.c: Move code to ...
+       * dll.c: .... here.  New.
+       * server.h: Declare clear_dlls.
+       * Makefile.in (SFILES): Add dll.c.
+       (OBS): Add dll.o
+       (dll.o): New rule.
+
+2012-02-11  Yao Qi  <yao@codesourcery.com>
+
+       * server.c: (handle_monitor_command): Add a new parameter
+       `own_buf'.
+       (handle_query): Update caller.
+
+2012-02-09  Joel Brobecker  <brobecker@adacore.com>
+
+       * configure.ac: Add readlink to AC_CHECK_FUNCS list.
+       * configure, config.in: Regenerate.
+       * hostio.c: Provide an alternate implementation if HAVE_READLINK
+       is not defined.
+
+2012-02-02  Pedro Alves  <palves@redhat.com>
+
+       Try SIGKILL first, then PTRACE_KILL.
+       * linux-low.c (linux_kill_one_lwp): New.
+       (linux_kill_one_lwp): Rename to ...
+       (kill_one_lwp_callback): ... this.  Use the new
+       linux_kill_one_lwp.
+
+2012-02-02  Pedro Alves  <palves@redhat.com>
+
+       * tracepoint.c (cmd_qtminftpilen): Return 0 if there's no current
+       inferior.
+
+2012-01-27  Pedro Alves  <palves@redhat.com>
+
+       * linux-low.c (linux_child_pid_to_exec_file): Delete.
+       (elf_64_file_p): Make static.
+       (linux_pid_exe_is_elf_64_file): New.
+       * linux-low.h (linux_child_pid_to_exec_file, elf_64_file_p):
+       Delete declarations.
+       (linux_pid_exe_is_elf_64_file): Declare.
+       * linux-x86-low.c (x86_arch_setup): Use
+       linux_pid_exe_is_elf_64_file.
+
+2012-01-25  Jan Kratochvil  <jan.kratochvil@redhat.com>
+
+       * linux-low.c (linux_wait_for_event_1): Rename to ...
+       (linux_wait_for_event): ... here and merge it with former
+       linux_wait_for_event - new variable wait_ptid, use it.
+       (linux_wait_for_event): Remove - merge it to linux_wait_for_event_1.
+
+2012-01-23  Pedro Alves  <palves@redhat.com>
+
+       * server.c (main): Avoid yet another case of infinite loop while
+       detaching/killing after a longjmp.
+
+2012-01-20  Jan Kratochvil  <jan.kratochvil@redhat.com>
+
+       Code cleanup.
+       * linux-low.c (linux_wait_for_event_1): Use ptid_is_pid.
+
+2012-01-20  Ulrich Weigand  <ulrich.weigand@linaro.org>
+
+       * hostio.c (handle_readlink): New function.
+       (handle_vFile): Call it to handle "vFile:readlink" packets.
+
+2012-01-20  Pedro Alves  <palves@redhat.com>
+           Ulrich Weigand  <ulrich.weigand@linaro.org>
+
+       * server.c (handle_v_requests): Only support vAttach and vRun to
+       start multiple processes when in extended protocol mode.
+
+2012-01-17  Pedro Alves  <palves@redhat.com>
+
+       * tracepoint.c (initialize_tracepoint): Use mmap instead of
+       memalign plus mprotect to allocate the scratch buffer.
+
+2012-01-13  Pedro Alves  <palves@redhat.com>
+
+       * server.c (attach_inferior): Clear `cont_thread'.
+
+2012-01-13  Pedro Alves  <palves@redhat.com>
+
+       * server.c (main): Avoid infinite loop while detaching/killing
+       after a longjmp.
+
+2012-01-09  Doug Evans  <dje@google.com>
+
+       * server.c (start_inferior): Set last_ptid in --wrapper case.
+
 2012-01-06  Yao Qi  <yao@codesourcery.com>
 
        * tracepoint.c [IN_PROCESS_AGENT] (debug_threads): Macro
This page took 0.035672 seconds and 4 git commands to generate.