aboutsummaryrefslogtreecommitdiff
path: root/gdb
AgeCommit message (Collapse)AuthorFilesLines
2011-11-15 * NEWS: Mention new parameter basenames-may-differ.Doug Evans8-2/+97
* dwarf2read.c (dw2_lookup_symtab): Avoid calling gdb_realpath if ! basenames_may_differ. * psymtab.c (lookup_partial_symtab): Ditto. * symtab.c (lookup_symtab): Ditto. (basenames_may_differ): New global. (_initialize_symtab): New parameter basenames-may-differ. * symtab.h (basenames_may_differ): Declare. doc/ * gdb.texinfo (Files): Document basenames-may-differ.
2011-11-152011-11-15 Pedro Alves <pedro@codesourcery.com>Luis Machado2-16/+117
Luis Machado <lgustavo@codesourcery.com> * auxv.c: Include observer.h. (auxv_inferior_data_cleanup): New. (invalidate_auxv_cache_inf): New. (invalidate_auxv_cache): New. (get_auxv_inferior_data): New. (auxv_inferior_data): New static global. (auxv_info): New structure. (target_auxv_search): Use get_auxv_inferior_data instead of target_read_alloc and don't free cached buffers. (fprint_target_auxv): Likewise (_initialize_auxv): Register per-inferior auxv cache and register observers to invalidate auxv cache when needed.
2011-11-15 Make "!" an alias for "shell".Doug Evans8-11/+59
* NEWS: Add mention. * cli/cli-cmds.c (init_cli_cmds): Remove xdb_commands condition on adding "!" command, always add it. * cli/cli-decode.c (find_command_name_length): Recognize "!" as a command of length one. doc/ * gdb.texinfo (Shell Commands): Document "!". testsuite/ * gdb.base/shell.exp: New file.
2011-11-15Fix broken changelog entry.Yao Qi1-1/+2
2011-11-15*** empty log message ***gdbadmin1-1/+1
2011-11-142011-11-14 Stan Shebs <stan@codesourcery.com>Stan Shebs19-45/+882
Kwok Cheung Yeung <kcy@codesourcery.com> * NEWS: Document shorter fast tracepoints and qTMinFTPILen packet. * i386-tdep.c (i386_fast_tracepoint_valid_at): Query target for the minimum instruction size for fast tracepoints. * target.h (struct target_ops): Add new method to_get_min_fast_tracepoint_insn_len. (target_get_min_fast_tracepoint_insn_len): New. * target.c (update_current_target): Set up new target operation. * remote.c (remote_write_bytes_aux): Fix typo. (remote_get_min_fast_tracepoint_insn_len): New. (init_remote_ops): Initialize new field. * gdb.texinfo (Create and Delete Tracepoints): Describe what is needed to get shorter fast tracepoints. (Tracepoint Packets): Document new qTMinFTPILen packet. * linux-x86-low.c (small_jump_insn): New. (i386_install_fast_tracepoint_jump_pad): Add arguments for trampoline and error message, build a trampoline and issue a small jump instruction to it. (x86_install_fast_tracepoint_jump_pad): Add arguments for trampoline and error message. (x86_get_min_fast_tracepoint_insn_len): New. (the_low_target): Add call to x86_get_min_fast_tracepoint_insn_len. * linux-low.h (struct linux_target_ops): Add arguments to install_fast_tracepoint_jump_pad operation, add new operation. * linux-low.c (linux_install_fast_tracepoint_jump_pad): Add arguments. (linux_get_min_fast_tracepoint_insn_len): New function. (linux_target_op): Add new operation. * tracepoint.c (gdb_trampoline_buffer): New IPA variable. (gdb_trampoline_buffer_end): Ditto. (gdb_trampoline_buffer_error): Ditto. (struct ipa_sym_addresses): Add fields for new IPA variables. (symbol_list): Add entries for new IPA variables. (struct tracepoint): Add fields to hold the address range of the trampoline used by the tracepoint. (trampoline_buffer_head): New static variable. (trampoline_buffer_tail): Ditto. (claim_trampoline_space): New function. (have_fast_tracepoint_trampoline_buffer): New function. (clone_fast_tracepoint): Fill in trampoline fields of tracepoint structure. (install_fast_tracepoint): Ditto, also add error buffer argument. (cmd_qtminftpilen): New function. (handle_tracepoint_query): Add response to qTMinFTPILen packet. (fast_tracepoint_from_trampoline_address): New function. (fast_tracepoint_collecting): Handle trampoline as part of jump pad space. (set_trampoline_buffer_space): New function. (initialize_tracepoint): Initialize new IPA variables. * target.h (struct target_ops): Add arguments to install_fast_tracepoint_jump_pad operation, add new get_min_fast_tracepoint_insn_len operation. (target_get_min_fast_tracepoint_insn_len): New. (install_fast_tracepoint_jump_pad): Add arguments. * server.h (IPA_BUFSIZ): Define. * linux-i386-ipa.c: Include extra header files. (initialize_fast_tracepoint_trampoline_buffer): New function. (initialize_low_tracepoint): Call it. * server.h (set_trampoline_buffer_space): Declare. (claim_trampoline_space): Ditto. (have_fast_tracepoint_trampoline_buffer): Ditto. * gdb.trace/ftrace.c: New. * gdb.trace/ftrace.exp: New.
2011-11-14 * tracepoint.c (encode_actions_1): Use the location's gdbarch.Tom Tromey2-8/+13
(encode_actions): Likewise.
2011-11-14gdb/Yao Qi20-93/+944
* remote.c (struct remote_state): <install_in_trace> new field. (PACKET_InstallInTrace): New enum value. (remote_install_in_trace_feature): Support InstallInTrace. (remote_supports_install_in_trace): Likewise. (remote_protocol_features): Likewise. (_initialize_remote): Likewise. (remote_can_download_tracepoint): New. * target.h (struct target): New field `to_can_download_tracepoint'. (target_can_download_tracepoint): New macro. * target.c (update_current_target): Update. * breakpoint.h (struct bp_location): Add comment on field `duplicate'. (should_be_inserted): Don't differentiate breakpoint and tracepoint. (remove_breakpoints): Don't remove tracepoints. (tracepoint_locations_match ): New. (breakpoint_locations_match): Call it. (disable_breakpoints_in_unloaded_shlib): Handle tracepoint. (download_tracepoint_locations): New. (update_global_location_list): Call it. * tracepoint.c (find_matching_tracepoint): Delete. (find_matching_tracepoint_location): Renamed from find_matching_tracepoint. Return bp_location rather than tracepoint. (merge_uploaded_tracepoints): Set `inserted' field to 1 if tracepoint is found. gdb/doc/ * gdb.texinfo (Create and Delete Tracepoints): Describe changed behavior of tracepoint. (General Query Packets): New feature InstallInTrace. (Remote Configuration): Document "set remote install-in-trace-packet". gdb/gdbserver/ * server.c (handle_query): Handle InstallInTrace for qSupported. * tracepoint.c (add_tracepoint): Sort list. (install_tracepoint, download_tracepoint): New. (cmd_qtdp): Call them to install and download tracepoints. (sort_tracepoints): Removed. (cmd_qtstart): Update. gdb/testsuite/ * gdb.trace/change-loc-1.c: New. * gdb.trace/change-loc-2.c: New. * gdb.trace/change-loc.c: New. * gdb.trace/change-loc.exp: New. * gdb.trace/change-loc.h: New. * gdb.trace/trace-break.c (marker): Define new symbol. * gdb.trace/trace-break.exp (break_trace_same_addr_5): New. (break_trace_same_addr_6): New.
2011-11-14 * mem-break.c (inc_ref_fast_tracepoint_jump): New.Yao Qi4-165/+208
* mem-break.h: Declare. * tracepoint.c (cmd_qtstart): Move some code to ... (clone_fast_tracepoint, install_fast_tracepoint): ... here. New. (download_tracepoints): Move some code to ... (download_tracepoint_1): ... here. New.
2011-11-14 * target.h (struct target): <to_download_tracepoint> Change typeYao Qi5-145/+153
of parameter from tracepoint to bp_location. * target.c (update_current_target): Update. * tracepoint.c (start_tracing): Update. * remote.c (remote_download_tracepoint): Remove loop for each location of a tracepoint.
2011-11-14 * i386-nat.c (i386_insert_hw_breakpoint): CallMaciej W. Rozycki2-2/+20
i386_update_inferior_debug_regs. (i386_remove_hw_breakpoint): Likewise.
2011-11-14 * breakpoint.c (init_raw_breakpoint): CallYao Qi2-31/+28
add_location_to_breakpoint to replace duplicated code. (add_location_to_breakpoint): Adjust the breakpoint's address prior to allocating a location.
2011-11-14*** empty log message ***gdbadmin1-1/+1
2011-11-13*** empty log message ***gdbadmin1-1/+1
2011-11-12Move info definitions command to an info macro option.matt rice7-73/+205
2011-11-12*** empty log message ***gdbadmin1-1/+1
2011-11-11 PR gdb/12843Keith Seitz2-0/+34
* gdb.base/linespecs.exp: New file.
2011-11-11 PR gdb/12843Keith Seitz2-0/+18
* linespec.c (locate_first_half): Keep ':' if it looks like it could be part of a Windows path starting with a drive letter.
2011-11-11 * gdb.threads/print-threads.exp: Extend timeout for slowerDoug Evans2-0/+14
tests.
2011-11-11 * gdb.texinfo (Compilation): Don't mention -gdwarf-2. Link to GCCTom Tromey2-43/+56
manual. (Variables): Don't mention -gdwarf-2. Link to Compilation node. (Macros): Add a footnote. (C): Remove paragraph about compiler options. (C Constants): Mention wide character and string constants. (C Plus Plus Expressions): Update compiler option advice. Mention using declarations. Mention ADL. Remove old HP compiler information.
2011-11-11 PR c++/9257:Tom Tromey2-1/+10
* gdb.texinfo (Print Settings): Add an extra note about the need for a vtable.
2011-11-11 * dwarf2read.c (dw2_map_symbol_filenames): New parameterDoug Evans7-13/+37
`need_fullname'. * psymtab.c (map_symbol_filenames_psymtab): Ditto. (map_partial_symbol_filenames): Ditto. All callers updated. * psymtab.h (map_partial_symbol_filenames): Update prototype. * symfile.h (struct quick_symbol_functions, map_symbol_filenames): New parameter need_fullname.
2011-11-11*** empty log message ***gdbadmin1-1/+1
2011-11-10 * psymtab.c (psymtab_to_fullname): Use cached copy if it exists.Doug Evans3-4/+17
* source.c (symtab_to_fullname): Ditto.
2011-11-10 * defs.h (is_cplus_marker, set_demangling_style): Moved to ...Doug Evans15-67/+118
* gdb-demangle.h: ... here. New file. * demangle.c: #include "gdb-demangle.h". (_initialize_demangler): Use initialize_file_ftype for prototype. Move "set demangle" and "set asm-demangle" parameters here from utils.c (demangle, show_demangle, asm_demangle, show_asm_demangle): Move here from utils.c * utils.c: Update. #include "gdb-demangle.h". * symtab.h (asm_demangle): Delete. (demangle): Move declaration next to use. * breakpoint.c: #include "gdb-demangle.h" instead of "demangle.h". * dwarf2read.c: #include "gdb-demangle.h". * gnu-v2-abi.c: Ditto. * jv-typeprint.c: Ditto. * mdebugread.c: Ditto. * p-typeprint.c: Ditto. * stabsread.c: Ditto. * printcmd.c: Ditto. (asm_demangle): Delete declaration. * tui/tui-stack.c: #include "gdb-demangle.h".
2011-11-102011-11-10 Pedro Alves <pedro@codesourcery.com>Pedro Alves2-1/+7
gdb/ * linux-nat.c (linux_nat_wait): Don't force waking up the event loop when returning a TARGET_WAITKIND_NO_RESUMED.
2011-11-102011-11-10 Pedro Alves <pedro@codesourcery.com>Pedro Alves2-0/+7
gdb/ * target.c (target_waitstatus_to_string): Handle TARGET_WAITKIND_NO_RESUMED.
2011-11-10 * gdb.reverse/i387-env-reverse.exp: Extend timeout ofDoug Evans2-0/+7
"record to end of main" test.
2011-11-10 * python/py-type.c (typy_fields_items): Call check_typedef.Doug Evans5-7/+43
testsuite/ * gdb.python/py-type.c (TS): New typedef. (ts): New global. * gdb.python/py-type.exp: Test field list of typedef.
2011-11-10Fix wrong changelog entry date.Joel Brobecker1-1/+1
2011-11-10read_frame_register_value and big endian archesJoel Brobecker7-3/+131
The read_frame_register_value function as it was implemented introduced a regression on big-endian targets. The problem appears when trying to get the value of an entity stored inside a register, and when the size of the entity is smaller than the size of the register. In that case, we were always reading the first N bytes of the register, which is wrong for big-endian architectures, where we need to read the last N bytes of the register. gdb/ChangeLog: * findvar.c (read_frame_register_value): Read correct bytes from register on big-endian architectures. gdb/testsuite/ChangeLog: * gdb.ada/small_reg_param: New testcase.
2011-11-10procfs file descriptor leaksJoel Brobecker2-12/+16
gdb/ChangeLog (from Tom Tromey): * procfs.c (load_syscalls): Make a cleanup. (open_procinfo_files): fd==0 is ok.
2011-11-10[procfs] /proc/.../map file descriptor leakJoel Brobecker2-1/+11
When opening the procfs map file, we create a cleanup routine to make sure that the associated file descriptor gets closed, but we never call the cleanup. So the FD gets leaked. gdb/ChangeLog: * procfs.c (iterate_over_mappings): Call do_cleanups before returning.
2011-11-10 * gdbtypes.c (check_typedef): Document that this function canDoug Evans2-0/+9
throw an exception.
2011-11-10*** empty log message ***gdbadmin1-1/+1
2011-11-09gdbTom Tromey5-0/+96
PR c++/13342: * valops.c (value_full_object): Return early if real type is smaller than the enclosing type. gdb/testsuite * gdb.cp/destrprint.exp: New file. * gdb.cp/destrprint.cc: New file.
2011-11-09gdb/gdbserverYao Qi2-1/+5
* remote-utils.c (relocate_instruction): A comment fix.
2011-11-09gdb/Yao Qi2-1/+5
* amd64-tdep.c (amd64_relocate_instruction): Make it static.
2011-11-09gdb/Meador Inge5-14/+75
* arm-tdep.c (thumb_analyze_prologue): Always fallback on the SP register when the frame can't be determined. * arm-tdep.c (arm_analyze_prologue): Ditto. gdb/testsuite/ * gdb.arch/thumb-prologue.c (switch_stack_to_same): New test function. (switch_stack_to_other): New test function. * gdb.arch/thumb-prologue.exp: New test cases.
2011-11-09*** empty log message ***gdbadmin1-1/+1
2011-11-08 * gdb.texinfo (MIPS): Remove duplicate "auto" reference fromMaciej W. Rozycki2-1/+5
"set mips abi" documentation.
2011-11-08 * lib/mi-support.exp (mi_send_resuming_command_raw): Fix a typo.Maciej W. Rozycki2-1/+5
2011-11-08gdb/testsuite/Yao Qi25-46/+106
* gdb.exp (supports_process_record): New. (supports_reverse): New. * gdb.reverse/break-precsave.exp: Call support_process_record to run test conditionally. * gdb.reverse/consecutive-precsave.exp: Likewise. * gdb.reverse/i386-precsave.exp: Likewise. * gdb.reverse/machinestate-precsave.exp: Likewise. * gdb.reverse/solib-precsave.exp: Likewise. * gdb.reverse/step-precsave.exp: Likewise. * gdb.reverse/until-precsave.exp: Likewise. * gdb.reverse/watch-precsave.exp: Likewise. * gdb.reverse/break-reverse.exp: Call support_reverse to run test conditionally. * gdb.reverse/consecutive-reverse.exp: Likewise. * gdb.reverse/finish-precsave.exp: Likewise. * gdb.reverse/finish-reverse-bkpt.exp: Likewise. * gdb.reverse/finish-reverse.exp: Likewise. * gdb.reverse/i386-reverse.exp: Likewise. * gdb.reverse/i386-sse-reverse.exp: Likewise. * gdb.reverse/machinestate.exp: Likewise. * gdb.reverse/next-reverse-bkpt-over-sr.exp: Likewise. * gdb.reverse/sigall-precsave.exp: Likewise. * gdb.reverse/sigall-reverse.exp: Likewise. * gdb.reverse/solib-reverse.exp: Likewise. * gdb.reverse/step-reverse.exp: Likewise. * gdb.reverse/until-reverse.exp: Likewise. * gdb.reverse/watch-reverse.exp: Likewise.
2011-11-08 * MAINTAINERS: Move Michael Snyder to Past Maintainers.Stan Shebs2-9/+7
2011-11-08*** empty log message ***gdbadmin1-1/+1
2011-11-07Minor reformatting in infrun.c:handle_inferior_eventJoel Brobecker2-2/+6
gdb/ChangeLog: * infrun.c (handle_inferior_event): Minor reformatting.
2011-11-07[gdbserver] Fix watchpoint support on WindowsJoel Brobecker2-12/+19
Watchpoint support doesn't work anymore when using gdbserver on Windows. They just never trigger. The problem comes from the fact that we always set the debug registers to zero, no matter what. This in turn comes from the fact that we use i386_low_insert_watchpoint to compute the DR values: return i386_low_insert_watchpoint (&debug_reg_state, type, addr, len); This function saves the new values in debug_reg_state. However, the values we actually use when setting the DR registers are taken from two different globals: static unsigned dr_status_mirror; static unsigned dr_control_mirror; These are really never actually changed (their value is set from the DR values read from the inferior, but since we never change them, in practice, they never change). The fix is to use the values provided by debug_reg_state, and to eliminate the two dr_[...] globals. gdb/gdbserver/ChangeLog: * win32-i386-low.c (dr_status_mirror, dr_control_mirror): Delete. (i386_dr_low_get_control, i386_dr_low_get_status): Use dr_status_mirror and dr_control_mirror from debug_reg_state. (i386_dr_low_get_status): Use debug_reg_state.dr_status_mirror (i386_initial_stuff): Remove use of deleted globals. (i386_get_thread_context, i386_set_thread_context, i386_thread_added): Use dr_status_mirror and dr_control_mirror from debug_reg_state.
2011-11-07*** empty log message ***gdbadmin1-1/+1
2011-11-06 * source.c (forget_cached_source_info_for_objfile): Move call toDoug Evans2-4/+10
objfile->sf->qf->forget_cached_source_info outside of ALL_OBJFILE_SYMTABS loop. (forget_cached_source_info): Delete unused variable `s'.
2011-11-06*** empty log message ***gdbadmin1-1/+1