aboutsummaryrefslogtreecommitdiff
path: root/gdb
AgeCommit message (Collapse)AuthorFilesLines
2013-04-06*** empty log message ***gdbadmin1-1/+1
2013-04-05 * dwarf2read.c (struct dwarf2_per_objfile): Tweak comment.Doug Evans2-9/+20
(read_cutu_die_from_dwo): Add comments. (read_structure_type): Update comment. (read_enumeration_type, read_namespace_type): Update comment. (read_die_type, get_die_type_at_offset, get_die_type): Update comment.
2013-04-05gdb/doc/Jan Kratochvil2-4/+12
* gdb.texinfo (gdb man): Mention option -p. Include Fortran to the list of supported languages.
2013-04-05gdb/Jan Kratochvil9-535/+623
Convert man pages to texinfo, new gdbinit.5 texinfo page. * Makefile.in (gdb.z): Remove. (install-only): Remove $(man1dir) and gdb.1 installation. * gdb.1: Remove. gdb/gdbserver/ Convert man pages to texinfo, new gdbinit.5 texinfo page. * Makefile.in (install-only): Remove $(man1dir) and gdbserver.1 installation. * gdbserver.1: Remove. gdb/doc/ Convert man pages to texinfo, new gdbinit.5 texinfo page. * Makefile.in (mandir, man1dir, man5dir, SYSTEM_GDBINIT, MANCONF, (TEXI2POD, POD2MAN1, POD2MAN5, MAN1S, MAN5S, MANS, man): New. (diststuff): Add man. (install-man, install-man1, install-man5, uninstall-man, uninstall-man1) (uninstall-man5): New. (STAGESTUFF): Add *.1 and *.5. (GDBvn.texi): Add SYSTEM_GDBINIT. (gdb.1, gdbserver.1, gdbinit.5): New. (maintainer-clean realclean): Add $(MANS). (install): Add install-man. (uninstall): Add uninstall-man. * gdb.texinfo (@include gdb-cfg.texi): Wrap it by @c man begin INCLUDE. (@copying): Wrap it by @c man begin COPYRIGHT. (Top): Add Man Pages. (Man Pages, gdb man, gdbserver man, gdbinit man): New.
2013-04-05gdb/Jan Kratochvil2-7/+24
Fix compatibility with Linux kernel 3.8.3. * linux-tdep.c (linux_find_memory_regions_full): Move variable number to more inner block. Remove parsing of NUMBER from outer block. Parse NUMBER only if KEYWORD has been identified.
2013-04-05gdb/Jan Kratochvil2-6/+12
Fix variable name shadowing. * linux-tdep.c (linux_find_memory_regions_full): Rename outer variable filename to mapsfilename and update its uses.
2013-04-05Avoid warning in "make tags".Eli Zaretskii2-1/+8
* Makefile.in (TAGS): Avoid warning from etags when $GDB_NM_FILE is empty. See http://sourceware.org/ml/gdb-patches/2012-08/msg00504.html and http://sourceware.org/ml/gdb-patches/2013-04/msg00055.html for details of the problem.
2013-04-05*** empty log message ***gdbadmin1-1/+1
2013-04-042013-04-04 Sandra Loosemore <sandra@codesourcery.com>Sandra Loosemore2-1/+6
gdb/testsuite/ * gdb.cp/cplabel.exp: Allow empty directory in file reported for breakpoint location.
2013-04-042013-04-04 Sandra Loosemore <sandra@codesourcery.com>Sandra Loosemore2-7/+18
gdb/testsuite/ * gdb.linespec/linespec.exp: Make dir/file:line tests conditional for non-remote hosts only.
2013-04-04tracepoint->step_count fixesPedro Alves7-12/+298
If a tracepoint's actions list includes a while-stepping action, and then the actions are changed to a list without any while-stepping action, the tracepoint's step_count will be left with a stale value. For example: (gdb) trace subr Tracepoint 1 at 0x4004d9: file ../../../src/gdb/testsuite//actions-changed.c, line 31. (gdb) actions Enter actions for tracepoint 1, one per line. End with a line saying just "end". >collect $reg >end (gdb) set debug remote 1 (gdb) tstart Sending packet: $QTinit#59...Packet received: OK Sending packet: $QTDP:1:00000000004004d9:E:0:0-#a3...Packet received: OK Sending packet: $QTDP:-1:00000000004004d9:R03FFFFFFFFFFFFFFFFFF#2b...Packet received: OK (gdb) tstop Sending packet: $QTStop#4b...Packet received: OK Sending packet: $QTNotes:#e8...Packet received: OK (gdb) actions Enter actions for tracepoint 1, one per line. End with a line saying just "end". >collect $reg >while-stepping 1 >collect $reg >end >end (gdb) tstart Sending packet: $QTinit#59...Packet received: OK Sending packet: $QTDP:1:00000000004004d9:E:1:0-#a4...Packet received: OK Sending packet: $QTDP:-1:00000000004004d9:R03FFFFFFFFFFFFFFFFFF-#58...Packet received: OK Sending packet: $QTDP:-1:00000000004004d9:SR03FFFFFFFFFFFFFFFFFF#7e...Packet received: OK (gdb) tstop Sending packet: $QTStop#4b...Packet received: OK Sending packet: $QTNotes:#e8...Packet received: OK (gdb) actions Enter actions for tracepoint 1, one per line. End with a line saying just "end". >collect $regs >end (gdb) tstart Sending packet: $QTinit#59...Packet received: OK Sending packet: $QTDP:1:00000000004004d9:E:1:0-#a4...Packet received: OK Sending packet: $QTDP:-1:00000000004004d9:R03FFFFFFFFFFFFFFFFFF#2b...Packet received: OK The last "$QTDP:1:00000000004004d9:E:1:0-#a4" should be "$QTDP:1:00000000004004d9:E:0:0-#a3". In pseudo-diff: -$QTDP:1:00000000004004d9:E:1:0-#a4 +$QTDP:1:00000000004004d9:E:0:0-#a3 A related issue is that the "commands" command actually supports setting commands to a range of breakpoints/tracepoints at once. But, hacking "maint info breakpoints" to print t->step_count, reveals: (gdb) trace main Tracepoint 5 at 0x45a2ab: file ../../src/gdb/gdb.c, line 29. (gdb) trace main Note: breakpoint 5 also set at pc 0x45a2ab. Tracepoint 6 at 0x45a2ab: file ../../src/gdb/gdb.c, line 29. (gdb) commands 5-6 Type commands for breakpoint(s) 5-6, one per line. End with a line saying just "end". > while-stepping 5 >end > end (gdb) maint info breakpoints 5 Num Type Disp Enb Address What 5 tracepoint keep y 0x000000000045a2ab in main at ../../src/gdb/gdb.c:29 inf 1 step_count=5 ^^^^^^^^^^^^ while-stepping 5 end not installed on target (gdb) maint info breakpoints 6 Num Type Disp Enb Address What 6 tracepoint keep y 0x000000000045a2ab in main at ../../src/gdb/gdb.c:29 inf 1 step_count=0 ^^^^^^^^^^^^ while-stepping 5 end not installed on target (gdb) that tracepoint 6 doesn't end up with the correct step_count. The issue is that here: static void do_map_commands_command (struct breakpoint *b, void *data) { struct commands_info *info = data; if (info->cmd == NULL) { struct command_line *l; if (info->control != NULL) l = copy_command_lines (info->control->body_list[0]); else { struct cleanup *old_chain; char *str; str = xstrprintf (_("Type commands for breakpoint(s) " "%s, one per line."), info->arg); old_chain = make_cleanup (xfree, str); l = read_command_lines (str, info->from_tty, 1, (is_tracepoint (b) ? check_tracepoint_command : 0), b); do_cleanups (old_chain); } info->cmd = alloc_counted_command_line (l); } validate_actionline is never called for tracepoints other than the first (the copy_command_lines path). Right below, we have: /* If a breakpoint was on the list more than once, we don't need to do anything. */ if (b->commands != info->cmd) { validate_commands_for_breakpoint (b, info->cmd->commands); incref_counted_command_line (info->cmd); decref_counted_command_line (&b->commands); b->commands = info->cmd; observer_notify_breakpoint_modified (b); } And validate_commands_for_breakpoint looks like the right place to put a call; if we reset step_count there too, we have a nice central fix for the first issue as well, because trace_actions_command calls breakpoint_set_commands that also calls validate_commands_for_breakpoint. We end up calling validate_actionline twice for the first tracepoint, since read_command_lines calls it too, through check_tracepoint_command, but that should be harmless. 2013-04-04 Pedro Alves <palves@redhat.com> Hui Zhu <hui@codesourcery.com> * breakpoint.c (validate_commands_for_breakpoint): If validating a tracepoint, reset its STEP_COUNT and call validate_actionline. 2013-04-04 Stan Shebs <stan@codesourcery.com> Pedro Alves <palves@redhat.com> * gdb.trace/Makefile.in (PROGS): Add actions-changed. * gdb.trace/actions-changed.c: New file. * gdb.trace/actions-changed.exp: New file. * lib/trace-support.exp (gdb_trace_setactions): Rename to ... (gdb_trace_setactions_command): ... this. Add "actions_command" parameter, and handle it. (gdb_trace_setactions, gdb_trace_setcommands): New procedures.
2013-04-04gdb/testsuite/Yao Qi2-1/+8
* gdb.server/server-kill.exp: Use command 'tstatus' instead of 'step'.
2013-04-04*** empty log message ***gdbadmin1-1/+1
2013-04-03 * dwarf2read.c (read_die_and_siblings_1): Renamed fromDoug Evans2-11/+77
read_die_and_siblings. (read_die_and_siblings): New function. (read_cutu_die_from_dwo): Dump die if requested. (read_die_and_children): Call read_full_die_1 and read_die_and_siblings_1. (read_full_die): Dump die if requested. * dwarf2read.c (read_comp_units_from_section): Add debugging printf.
2013-04-03 * dwarf2read.c (struct dwo_file): New member comp_dir.Doug Evans2-20/+39
Rename member name to dwo_name. All uses updated. (hash_dwo_file): Include comp_dir in computation. (eq_dwo_file): Ditto. (lookup_dwo_file_slot): New arg comp_dir. All callers updated. (create_dwo_in_dwp, lookup_dwo_in_dwp, open_and_init_dwo_file): Ditto.
2013-04-03 * psymtab.c (read_psymtabs_with_fullname): Don't callDoug Evans2-1/+10
psymtab_to_fullname if the basenames are different.
2013-04-03gdb/Jan Kratochvil2-2/+8
* NEWS (Changes in GDB 7.6): Update the data-disassemble for "fullname". New entry about "fullname" presence.
2013-04-03NEWS: Mention x86_64/Cygwin as new native configuration too.Pedro Alves2-0/+5
x86_64/Cygwin is only mentioned as a new target, but we gained support for building a native x86_64/Cygwin debugger too. gdb/ 2013-04-03 Pedro Alves <palves@redhat.com> * NEWS: Mention x86_64/Cygwin as new native configuration.
2013-04-03gdb/testsuite/Yao Qi2-4/+11
* gdb.trace/mi-traceframe-changed.exp: Update tfile name to "tfile-basic.tf". (test_tfind_tfile): Likewise.
2013-04-03gdb/testsuite/Yao Qi3-13/+24
* gdb.trace/tfile.c (write_basic_trace_file): Pass argument "tfile-basic.tf" instead of "basic.tf". (write_error_trace_file): Pass argument "tfile-error.tf" instead of "error.tf". * gdb.trace/tfile.exp: Update tfile names to "tfile-basic.tf" and "tfile-error.tf".
2013-04-032013-04-02 Sandra Loosemore <sandra@codesourcery.com>Sandra Loosemore2-1/+6
gdb/testsuite/ * gdb.cp/ovsrch.exp (test_class): Correct regexp to allow empty directory in file for breakpoint hit.
2013-04-03*** empty log message ***gdbadmin1-1/+1
2013-04-02 * dwarf2read.c (read_structure_type): Fix typo in comment.Doug Evans2-1/+5
2013-04-02NEWS/manual: Missing documentation for new commands in 7.6.Pedro Alves4-5/+52
I hacked "apropos" to dump the whole set of commands (just make it accept the entry string as regex), and then diffed the output of 7.5 vs 7.6, --enable-targets=all builds. That allowed then checking whether some commands had not been mentioned in NEWS or the manual. These are what I found missing. We've been a bit negligent in requiring documentation bits for debug commands. gdb/ 2013-04-02 Pedro Alves <palves@redhat.com> * NEWS: Mention "set/show debug aarch64", "set/show debug coff-pe-read" and "set/show debug mach-o". gdb/doc/ 2013-04-02 Pedro Alves <palves@redhat.com> * gdb.texinfo (Debugging Output): Document "set/show debug aarch64", "set/show debug coff-pe-read" and "set/show debug mach-o".
2013-04-02Add missing NEWS and manual bits for "set trace-buffer-size".Pedro Alves4-0/+17
Add missing mention of the QTBuffer::size packet configuration command, in both NEWS and manual. gdb/ 2013-04-02 Pedro Alves <palves@redhat.com> * NEWS: Mention "set/show remote trace-buffer-size-packet". gdb/doc/ 2013-04-02 Pedro Alves <palves@redhat.com> * gdb.texinfo (Remote Configuration) <set remote @var{name}-packet table>: Add entry for "trace-buffer-size".
2013-04-02Fix list of files submitted to "make TAGS".Eli Zaretskii2-3/+8
* Makefile.in (HFILES_NO_SRCDIR): Remove call-cmds.h. gdb_string.h is now in common/.
2013-04-02NEWS: Move "set debug notification" and "set trace-buffer-size" under "New ↵Pedro Alves2-8/+13
options". The "New commands" section reads: "New commands (for set/show, see "New options" below)" gdb/ 2013-04-02 Pedro Alves <palves@redhat.com> * NEWS: Move "set debug notification" and "set trace-buffer-size" under "New options".
2013-04-02gdb/Jan Kratochvil2-1/+8
Revert this patch: PR gdb/15275 * remote.c (remote_get_trace_status): Include putpkt in TRY_CATCH.
2013-04-02unpush the remote target if serial_write fails.Pedro Alves2-8/+32
PR gdb/15275 notes that when debugging with a remote connection over a serial link and the link is disconnected, say by disconnecting USB serial port, the GDB quit command no longer works: (gdb) tar ext /dev/ttyACM0 &"tar ext /dev/ttyACM0\n" ~"Remote debugging using /dev/ttyACM0\n" ^done (gdb) set debug remote 1 &"set debug remote 1\n" ^done (gdb) quit &"quit\n" &"Sending packet: $qTStatus#49..." &"putpkt: write failed: Input/output error.\n" ^error,msg="putpkt: write failed: Input/output error." (gdb) (gdb) quit &"quit\n" &"Sending packet: $qTStatus#49..." &"putpkt: write failed: Input/output error.\n" ^error,msg="putpkt: write failed: Input/output error." This is not reproducible with TCP connections, as with that, sending doesn't error out, but instead the error is detected on the subsequent readchar. When that read fails, we unpush the remote target, and throw TARGET_CLOSE_ERROR. To address PR gdb/15275, instead of catching the error in remote_get_trace_status as presently done (which leaves this same issue latent for another packet to trip on), or of making ser-unix.c fake success too on failed writes, so we'd get to readchar detecting the error on serial ports too, better let the error propagate out of serial_write, and catch it at the remote.c level, throwing away the target if writing fails too, instead of delaying that until the next read. gdb/ 2013-04-02 Pedro Alves <palves@redhat.com> PR gdb/15275 * remote.c (send_interrupt_sequence): Use remote_serial_write. (remote_serial_write): New function. (putpkt_binary, getpkt_or_notif_sane_1): Use remote_serial_write.
2013-04-02gdb/ChangeLog:Jiong Wang2-0/+7
* NEWS: Mention TILE-Gx in "New native configurations" and "New targets" sections.
2013-04-02*** empty log message ***gdbadmin1-1/+1
2013-04-01 * dwarf2read.c (lookup_signatured_type_at_offset): Delete.Doug Evans2-36/+4
(process_enumeration_scope): Simplify.
2013-04-01 * dwarf2read.c (struct dwarf2_per_cu_data): Move memberDoug Evans2-65/+60
type_unit_group ... (struct signatured_type): ... to here. (sig_type_ptr): New typedef. (type_unit_group): Delete member 't.first_cu'. Move member 'tus' out of union 't'. All uses updated. (dw2_get_file_names_reader): Assert not called for a type unit. (dw2_get_file_names): Assert not called for a type unit or type unit group. (build_type_psymtabs_reader): Assert called for a type unit. (build_type_psymtab_dependencies): Assert called for a type unit group.
2013-04-01Fix whitespace errors from last commit.Aleksandar Ristovski1-2/+1
2013-04-01 * dwarf2read.c (free_dwo_file): Add comment.Doug Evans2-0/+8
(dwarf2_per_objfile_free): Unref dwp bfd.
2013-04-01 Fix coff-pe-read.c to compile with Wunused.Aleksandar Ristovski2-13/+12
* coff-pe-read.c (add_pe_exported_sym): Remove unused 'dll_name_len'. (add_pe_forwarded_sym): Remove unused 'section', 'dll_name_len'. (read_pe_exported_syms): Remove unused 'exportix'. (pe_text_section_offset): Remove unused 'opthdr_ofs', 'num_entries', 'export_rva', 'export_size', 'expptr', 'exp_funcbase', 'expdata', 'erva', 'name_rvas', 'ordinals', 'nexp', 'ordbase', 'dll_name'. Reference: http://sourceware.org/ml/gdb-patches/2013-03/msg01081.html
2013-04-01 Cleanup: remove unused - breakpoint, buildsymAleksandar Ristovski3-9/+10
* breakpoint.c (parse_cond_to_aexpr): Remove unused 'old_chain'. (print_it_watchpoint): Remove unused 'bl'. (say_where): Remove unused 'uiout'. (bpstat_remove_breakpoint_callback): Remove unused 'uiout'. (bkpt_breakpoint_hit): Remove unused 'b'. (internal_bkpt_print_it): Remove unused 'uiout'. * buildsym.c (augment_type_symtab): Remove unused 'i'. Reference: http://sourceware.org/ml/gdb-patches/2013-03/msg01080.html
2013-04-01gdb/ChangeLogTiago Daitx2-70/+131
2013-03-01 Tiago Stürmer Daitx <tdaitx@linux.vnet.ibm.com> * ppc-sysv-tdep.c (ppc64_sysv_abi_push_float): New function. (ppc64_sysv_abi_push_dummy_call): Handle complex arguments.
2013-04-01*** empty log message ***gdbadmin1-1/+1
2013-03-31*** empty log message ***gdbadmin1-1/+1
2013-03-30*** empty log message ***gdbadmin1-1/+1
2013-03-29 * dwarf2read.c (open_dwo_file): Renamed from open_dwop_file.Doug Evans2-18/+44
Delete arg is_dwp. All callers updated. (open_dwp_file): New function. (open_and_init_dwp_file): Call it. (get_dwp_file): New function. (lookup_dwo_cutu): Call it.
2013-03-29 * dwarf2read.c (open_and_init_dwp_file): Remove incorrect, andDoug Evans2-4/+3
unnecessary, cleanup.
2013-03-29 * dwarf2read.c (lookup_dwo_cutu): Improve complaint text.Doug Evans2-2/+4
2013-03-29 * dwarf2read.c (read_cutu_die_from_dwo): New function.Doug Evans2-155/+246
(lookup_dwo_unit): New function. (init_cutu_and_read_dies): Move DWO handling to new functions.
2013-03-29 * dwarf2read.c (struct signatured_type): Tweak comment.Doug Evans2-16/+28
(struct dwo_unit): Tweak comment. (create_debug_types_hash_table): Tweak comment. Reformat long line. (create_dwo_debug_info_hash_table): Tweak comment. (dwarf2_per_cu_offset_and_type): Tweak comment.
2013-03-29 * dwarf2read.c (lookup_signatured_type): Remove complaint aboutDoug Evans2-7/+8
missing .debug_types section.
2013-03-29gdb/Yao Qi9-6/+61
2013-03-29 Yao Qi <yao@codesourcery.com> * corelow.c: Include "completer.h". (_initialize_corelow): Call add_target_with_completer with argument 'filename_completer'. * tracepoint.c: Likewise. * exec.c (_initialize_exec): Likewise. * target.c (add_target): Rename to ... (add_target_with_completer): ... this. Call set_cmd_completer if parameter completer is not NULL. (add_target): New. * target.h: Include "command.h". (add_target_with_completer): Declare it. gdb/testsuite: 2013-03-29 Yao Qi <yao@codesourcery.com> * gdb.base/completion.exp: Test completion of commands "target core", "target tfile" and "target exec". * gdb.trace/tfile.exp: Test completion of command "target tfile".
2013-03-29Ignore __fu<digits>__ symbols from COFF symbol tablesJoel Brobecker7-0/+151
The debugger sometimes prints strange function names for given addresses. For instance, with the following source code... 4 procedure Foo is 5 A : Integer; 6 begin 7 Do_Nothing (A'Address); 8 end Foo; ... we can see... (gdb) info line 5 Line 5 of "foo.adb" starts at address 0x4017ca <_ada_foo+6> and ends at 0x4017d2 <_fu29__system__scalar_values__is_is4+7>. ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ _fu29__system__scalar_values__is_is4 is an artificial symbol generated by the linker, and interferes with the pc-to-symbol resolution. There isn't much in the general minimal_symbol data that could help us identify them, so this patch changes the COFF reader to simply ignore them. gdb/ChangeLog: * coffread.c (is_import_fixup_symbol): New function. (record_minimal_symbol): Use is_import_fixup_symbol to detect import fixup symbols, and discard them. gdb/testsuite/ChangeLog: * gdb.ada/win_fu_syms: New testcase.
2013-03-29 * dwarf2read.c (create_debug_types_hash_table): Don't allocate theDoug Evans2-8/+11
types hash table until we know we need it.