From 2d000704bd6cf20a8d0acfac85b86f20b6dd3b76 Mon Sep 17 00:00:00 2001 From: Anas Nashif Date: Mon, 23 Sep 2013 11:22:18 -0400 Subject: [PATCH] Imported Upstream version 7.5.1 --- bfd/doc/bfdver.texi | 2 +- djunpack.bat | 4 +- gdb/ChangeLog | 115 ++ gdb/amd64-tdep.c | 3 - gdb/auto-load.c | 117 +- gdb/cli/cli-decode.c | 5 +- gdb/common/linux-ptrace.c | 105 +- gdb/defs.h | 1 + gdb/doc/ChangeLog | 4 + gdb/doc/gdb.info | 1206 ++++++++++---------- gdb/doc/gdb.info-1 | 6 +- gdb/doc/gdb.info-2 | 2 +- gdb/doc/gdb.info-3 | 2 +- gdb/doc/gdb.info-4 | 19 +- gdb/doc/gdb.info-5 | 48 +- gdb/doc/gdb.info-6 | 6 +- gdb/doc/gdb.texinfo | 7 + gdb/dwarf2read.c | 15 +- gdb/frame.c | 8 +- gdb/gdbserver/ChangeLog | 9 + gdb/gdbserver/gdbreplay.c | 2 + gdb/gdbserver/linux-crisv32-low.c | 23 +- gdb/gdbserver/server.h | 1 + gdb/i386-tdep.c | 11 - gdb/i386-tdep.h | 8 - gdb/infcmd.c | 5 + gdb/infrun.c | 48 +- gdb/linespec.c | 22 +- gdb/main.c | 4 - gdb/po/gdb.pot | 1081 ++++++++++-------- gdb/ppc-linux-tdep.c | 5 +- gdb/python/py-auto-load.c | 4 - gdb/python/python.h | 4 + gdb/symfile.c | 4 +- gdb/testsuite/ChangeLog | 60 + gdb/testsuite/gdb.arch/amd64-tailcall-ret.S | 357 ++++++ gdb/testsuite/gdb.arch/amd64-tailcall-ret.c | 39 + gdb/testsuite/gdb.arch/amd64-tailcall-ret.exp | 44 + gdb/testsuite/gdb.base/step-symless.c | 38 + gdb/testsuite/gdb.base/step-symless.exp | 41 + gdb/testsuite/gdb.base/valgrind-infcall.exp | 1 - gdb/testsuite/gdb.java/jmisc.exp | 4 +- gdb/testsuite/gdb.java/jprint.exp | 4 +- gdb/testsuite/gdb.linespec/ls-errs.exp | 2 +- gdb/testsuite/gdb.linespec/thread.c | 31 + gdb/testsuite/gdb.linespec/thread.exp | 41 + gdb/testsuite/gdb.mi/mi-var-create-rtti.c | 24 + gdb/testsuite/gdb.mi/mi-var-create-rtti.exp | 52 + gdb/testsuite/gdb.reverse/amd64-tailcall-reverse.S | 353 ++++++ gdb/testsuite/gdb.reverse/amd64-tailcall-reverse.c | 39 + .../gdb.reverse/amd64-tailcall-reverse.exp | 49 + .../gdb.reverse/singlejmp-reverse-nodebug.S | 37 + .../gdb.reverse/singlejmp-reverse-nodebug.c | 21 + gdb/testsuite/gdb.reverse/singlejmp-reverse.S | 311 +++++ gdb/testsuite/gdb.reverse/singlejmp-reverse.c | 42 + gdb/testsuite/gdb.reverse/singlejmp-reverse.exp | 62 + gdb/testsuite/lib/gdb.exp | 116 +- gdb/value.c | 6 +- gdb/version.in | 2 +- libiberty/ChangeLog | 5 + libiberty/md5.c | 12 +- md5.sum | 105 +- 62 files changed, 3474 insertions(+), 1330 deletions(-) create mode 100644 gdb/testsuite/gdb.arch/amd64-tailcall-ret.S create mode 100644 gdb/testsuite/gdb.arch/amd64-tailcall-ret.c create mode 100644 gdb/testsuite/gdb.arch/amd64-tailcall-ret.exp create mode 100644 gdb/testsuite/gdb.base/step-symless.c create mode 100644 gdb/testsuite/gdb.base/step-symless.exp create mode 100644 gdb/testsuite/gdb.linespec/thread.c create mode 100644 gdb/testsuite/gdb.linespec/thread.exp create mode 100644 gdb/testsuite/gdb.mi/mi-var-create-rtti.c create mode 100644 gdb/testsuite/gdb.mi/mi-var-create-rtti.exp create mode 100644 gdb/testsuite/gdb.reverse/amd64-tailcall-reverse.S create mode 100644 gdb/testsuite/gdb.reverse/amd64-tailcall-reverse.c create mode 100644 gdb/testsuite/gdb.reverse/amd64-tailcall-reverse.exp create mode 100644 gdb/testsuite/gdb.reverse/singlejmp-reverse-nodebug.S create mode 100644 gdb/testsuite/gdb.reverse/singlejmp-reverse-nodebug.c create mode 100644 gdb/testsuite/gdb.reverse/singlejmp-reverse.S create mode 100644 gdb/testsuite/gdb.reverse/singlejmp-reverse.c create mode 100644 gdb/testsuite/gdb.reverse/singlejmp-reverse.exp diff --git a/bfd/doc/bfdver.texi b/bfd/doc/bfdver.texi index 5a886f0..41a451b 100644 --- a/bfd/doc/bfdver.texi +++ b/bfd/doc/bfdver.texi @@ -1,4 +1,4 @@ @set VERSION 2.22.52 @set VERSION_PACKAGE (GNU Binutils) -@set UPDATED August 2012 +@set UPDATED November 2012 @set BUGURL @uref{http://www.sourceware.org/bugzilla/} diff --git a/djunpack.bat b/djunpack.bat index fdcdc48..0566c1d 100644 --- a/djunpack.bat +++ b/djunpack.bat @@ -17,8 +17,8 @@ Rem Rem The following 2 lines need to be changed with each new GDB release, to Rem be identical to the name of the top-level directory where the GDB Rem distribution unpacks itself. -set GDBVER=gdb-7.5 -if "%GDBVER%"=="gdb-7.5" GoTo EnvOk +set GDBVER=gdb-7.5.1 +if "%GDBVER%"=="gdb-7.5.1" GoTo EnvOk Rem If their environment space is too small, re-exec with a larger one command.com /e:4096 /c %0 %1 GoTo End diff --git a/gdb/ChangeLog b/gdb/ChangeLog index b88226f..4df03c5 100644 --- a/gdb/ChangeLog +++ b/gdb/ChangeLog @@ -1,3 +1,118 @@ +2012-11-29 Joel Brobecker + + * version.in: Update GDB version number to 7.5.1. + +2012-11-15 Luis Machado + + * value.c (value_actual_type): Check for TYPE_CODE_STRUCT + target types. + +2012-11-10 H.J. Lu + + PR backtrace/14646 + PR gdb/14647 + * i386-tdep.h (gdbarch_tdep): Remove sp_regnum_from_eax and + pc_regnum_from_eax. + * i386-tdep.c (i386_gdbarch_init): Don't use sp_regnum_from_eax + nor pc_regnum_from_eax. + * amd64-tdep.c (amd64_x32_init_abi): Don't set sp_regnum_from_eax + nor pc_regnum_from_eax. + +2012-10-11 Doug Evans + + PR breakpoints/14643. + * linespec.c (struct ls_parser): New member keyword_ok. + (linespec_lexer_lex_string): Add comment. + (linespec_lexer_lex_one): Ignore keywords if it's the wrong place + for one. + (parse_linespec): Set keyword_ok. + +2012-10-06 Jan Kratochvil + + Fix crash during stepping on ppc32. + * ppc-linux-tdep.c (powerpc_linux_in_dynsym_resolve_code): Test NULL + SYM. + +2012-09-17 Jan Kratochvil + + * common/linux-ptrace.c: Change __i386__ to __i386__ || __x86_64__. + (linux_ptrace_test_ret_to_nx): Extend comment for x86_64. Change + __i386__ to __i386__ || __x86_64__. Extend code also for __x86_64__. + Extend code also for PaX support. Convert all gdb_assert to warning + calls. + +2012-09-17 Jan Kratochvil + + Implement auto-load user conveniences suggested by Doug Evans. + * auto-load.c: Include top.h. + (file_is_auto_load_safe): New variable advice_printed. Print advice. + (_initialize_auto_load): New variable scripts_directory_help. Mention + GDBPY_AUTO_FILE_NAME and GDB_AUTO_FILE_NAME for set auto-load + scripts-directory. Document in online help one can use also files for + set auto-load safe-path. + * python/py-auto-load.c: (GDBPY_AUTO_FILE_NAME): Move it from here ... + * python/python.h (GDBPY_AUTO_FILE_NAME): ... to here. + +2012-09-17 Jan Kratochvil + + PR 14119 + * frame.c (skip_inlined_frames): Skip also TAILCALL_FRAME frames. + (frame_pop): Drop also TAILCALL_FRAME frames. + * infcmd.c (finish_command): Ignore also TAILCALL_FRAME frames. + +2012-09-17 Jan Kratochvil + Pedro Alves + + PR 14548 + * infrun.c (handle_inferior_event): Do not reverse-continue back to the + function start if we are already at function start. Both for + reverse-next and for reverse-step into function without line number + info. + +2012-08-29 Doug Evans + + * main.c (print_gdb_help): Remove reference to + --use-deprecated-index-sections. + +2012-08-27 Eli Zaretskii + Jan Kratochvil + + * auto-load.c (auto_load_objfile_script): Rename to ... + (auto_load_objfile_script_1): ... here, change variable realname to + parameter realname, document it, add return value, add variable retval. + (auto_load_objfile_script): New function. + +2012-08-27 Jan Kratochvil + + * cli/cli-decode.c (print_doc_line): Keep skipping '.' and ',' not + followed by a whitespace. + +2012-08-27 Jan Kratochvil + + PR gdb/14494. + * dwarf2read.c (dwarf2_locate_sections): Move variable aflag here. + Move the SEC_HAS_CONTENTS check here - for any NAMES use. + (dwarf2_locate_sections) : Move the variable and check from + here. + +2012-08-22 Keith Seitz + + * defs.h: Include build-gnulib/config.h + +2012-08-21 Pierre Muller + + * symfile.c (allocate_symtab): Use host_address_to_string + function instead of cast of pointer to long which is not + compatible with x86_64-w64-mingw32 build. + +2012-08-17 Joel Brobecker + + * version.in: Set version to 7.5.0.20120817-cvs. + +2012-08-17 Joel Brobecker + + GDB 7.5 released. + 2012-08-17 Joel Brobecker * version.in: Update GDB version number to 7.5. diff --git a/gdb/amd64-tdep.c b/gdb/amd64-tdep.c index 5424926..8ae1142 100644 --- a/gdb/amd64-tdep.c +++ b/gdb/amd64-tdep.c @@ -2946,9 +2946,6 @@ amd64_x32_init_abi (struct gdbarch_info info, struct gdbarch *gdbarch) tdesc = tdesc_x32; tdep->tdesc = tdesc; - tdep->sp_regnum_from_eax = AMD64_RSP_REGNUM; - tdep->pc_regnum_from_eax = AMD64_RIP_REGNUM; - tdep->num_dword_regs = 17; set_tdesc_pseudo_register_type (gdbarch, amd64_x32_pseudo_register_type); diff --git a/gdb/auto-load.c b/gdb/auto-load.c index 87dd1e4..5ace0de 100644 --- a/gdb/auto-load.c +++ b/gdb/auto-load.c @@ -37,6 +37,7 @@ #include "completer.h" #include "observer.h" #include "fnmatch.h" +#include "top.h" /* The suffix of per-objfile scripts to auto-load as non-Python command files. E.g. When the program loads libfoo.so, look for libfoo-gdb.gdb. */ @@ -441,6 +442,7 @@ file_is_auto_load_safe (const char *filename, const char *debug_fmt, ...) { char *filename_real = NULL; struct cleanup *back_to; + static int advice_printed = 0; if (debug_auto_load) { @@ -470,6 +472,30 @@ file_is_auto_load_safe (const char *filename, const char *debug_fmt, ...) "`auto-load safe-path' set to \"%s\"."), filename_real, auto_load_safe_path); + if (!advice_printed) + { + const char *homedir = getenv ("HOME"); + char *homeinit; + + if (homedir == NULL) + homedir = "$HOME"; + homeinit = xstrprintf ("%s/%s", homedir, gdbinit); + make_cleanup (xfree, homeinit); + + printf_filtered (_("\ +To enable execution of this file add\n\ +\tadd-auto-load-safe-path %s\n\ +line to your configuration file \"%s\".\n\ +To completely disable this security protection add\n\ +\tset auto-load safe-path /\n\ +line to your configuration file \"%s\".\n\ +For more information about this security protection see the\n\ +\"Auto-loading safe path\" section in the GDB manual. E.g., run from the shell:\n\ +\tinfo \"(gdb)Auto-loading safe path\"\n"), + filename_real, homeinit, homeinit); + advice_printed = 1; + } + do_cleanups (back_to); return 0; } @@ -693,27 +719,25 @@ clear_section_scripts (void) } } -/* Look for the auto-load script in LANGUAGE associated with OBJFILE and load - it. */ +/* Look for the auto-load script in LANGUAGE associated with OBJFILE where + OBJFILE's gdb_realpath is REALNAME and load it. Return 1 if we found any + matching script, return 0 otherwise. */ -void -auto_load_objfile_script (struct objfile *objfile, - const struct script_language *language) +static int +auto_load_objfile_script_1 (struct objfile *objfile, const char *realname, + const struct script_language *language) { - char *realname; char *filename, *debugfile; - int len; + int len, retval; FILE *input; struct cleanup *cleanups; - realname = gdb_realpath (objfile->name); len = strlen (realname); filename = xmalloc (len + strlen (language->suffix) + 1); memcpy (filename, realname, len); strcpy (filename + len, language->suffix); cleanups = make_cleanup (xfree, filename); - make_cleanup (xfree, realname); input = fopen (filename, "r"); debugfile = filename; @@ -768,6 +792,44 @@ auto_load_objfile_script (struct objfile *objfile, and these scripts are required to be idempotent under multiple loads anyway. */ language->source_script_for_objfile (objfile, input, debugfile); + + retval = 1; + } + else + retval = 0; + + do_cleanups (cleanups); + return retval; +} + +/* Look for the auto-load script in LANGUAGE associated with OBJFILE and load + it. */ + +void +auto_load_objfile_script (struct objfile *objfile, + const struct script_language *language) +{ + char *realname = gdb_realpath (objfile->name); + struct cleanup *cleanups = make_cleanup (xfree, realname); + + if (!auto_load_objfile_script_1 (objfile, realname, language)) + { + /* For Windows/DOS .exe executables, strip the .exe suffix, so that + FOO-gdb.gdb could be used for FOO.exe, and try again. */ + + size_t len = strlen (realname); + const size_t lexe = sizeof (".exe") - 1; + + if (len > lexe && strcasecmp (realname + len - lexe, ".exe") == 0) + { + len -= lexe; + realname[len] = '\0'; + if (debug_auto_load) + fprintf_unfiltered (gdb_stdlog, _("auto-load: Stripped .exe suffix, " + "retrying with \"%s\".\n"), + realname); + auto_load_objfile_script_1 (objfile, realname, language); + } } do_cleanups (cleanups); @@ -1130,6 +1192,7 @@ void _initialize_auto_load (void) { struct cmd_list_element *cmd; + char *scripts_directory_help; auto_load_pspace_data = register_program_space_data_with_cleanup (auto_load_pspace_data_cleanup); @@ -1172,30 +1235,50 @@ Usage: info auto-load local-gdbinit"), auto_load_info_cmdlist_get ()); auto_load_dir = xstrdup (AUTO_LOAD_DIR); + scripts_directory_help = xstrprintf ( +#ifdef HAVE_PYTHON + _("\ +Automatically loaded Python scripts (named OBJFILE%s) and GDB scripts\n\ +(named OBJFILE%s) are located in one of the directories listed by this\n\ +option.\n\ +%s"), + GDBPY_AUTO_FILE_NAME, +#else + _("\ +Automatically loaded GDB scripts (named OBJFILE%s) are located in one\n\ +of the directories listed by this option.\n\ +%s"), +#endif + GDB_AUTO_FILE_NAME, + _("\ +This option is ignored for the kinds of scripts \ +having 'set auto-load ... off'.\n\ +Directories listed here need to be present also \ +in the 'set auto-load safe-path'\n\ +option.")); add_setshow_optional_filename_cmd ("scripts-directory", class_support, &auto_load_dir, _("\ Set the list of directories from which to load auto-loaded scripts."), _("\ -Show the list of directories from which to load auto-loaded scripts."), _("\ -Automatically loaded Python scripts and GDB scripts are located in one of the\n\ -directories listed by this option. This option is ignored for the kinds of\n\ -scripts having 'set auto-load ... off'. Directories listed here need to be\n\ -present also in the 'set auto-load safe-path' option."), +Show the list of directories from which to load auto-loaded scripts."), + scripts_directory_help, set_auto_load_dir, show_auto_load_dir, auto_load_set_cmdlist_get (), auto_load_show_cmdlist_get ()); + xfree (scripts_directory_help); auto_load_safe_path = xstrdup (AUTO_LOAD_SAFE_PATH); auto_load_safe_path_vec_update (); add_setshow_optional_filename_cmd ("safe-path", class_support, &auto_load_safe_path, _("\ -Set the list of directories from which it is safe to auto-load files."), _("\ -Show the list of directories from which it is safe to auto-load files."), _("\ +Set the list of files and directories that are safe for auto-loading."), _("\ +Show the list of files and directories that are safe for auto-loading."), _("\ Various files loaded automatically for the 'set auto-load ...' options must\n\ be located in one of the directories listed by this option. Warning will be\n\ printed and file will not be used otherwise.\n\ +You can mix both directory and filename entries.\n\ Setting this parameter to an empty list resets it to its default value.\n\ Setting this parameter to '/' (without the quotes) allows any file\n\ -for the 'set auto-load ...' options. Each directory can be also shell\n\ +for the 'set auto-load ...' options. Each path entry can be also shell\n\ wildcard pattern; '*' does not match directory separator.\n\ This option is ignored for the kinds of files having 'set auto-load ... off'.\n\ This options has security implications for untrusted inferiors."), diff --git a/gdb/cli/cli-decode.c b/gdb/cli/cli-decode.c index c337b43..6fa929b 100644 --- a/gdb/cli/cli-decode.c +++ b/gdb/cli/cli-decode.c @@ -1003,8 +1003,11 @@ print_doc_line (struct ui_file *stream, char *str) line_buffer = (char *) xmalloc (line_size); } + /* Keep printing '.' or ',' not followed by a whitespace for embedded strings + like '.gdbinit'. */ p = str; - while (*p && *p != '\n' && *p != '.' && *p != ',') + while (*p && *p != '\n' + && ((*p != '.' && *p != ',') || (p[1] && !isspace (p[1])))) p++; if (p - str > line_size - 1) { diff --git a/gdb/common/linux-ptrace.c b/gdb/common/linux-ptrace.c index fdec5d6..ae17786 100644 --- a/gdb/common/linux-ptrace.c +++ b/gdb/common/linux-ptrace.c @@ -49,7 +49,7 @@ linux_ptrace_attach_warnings (pid_t pid, struct buffer *buffer) (int) pid); } -#ifdef __i386__ +#if defined __i386__ || defined __x86_64__ /* Address of the 'ret' instruction in asm code block below. */ extern void (linux_ptrace_test_ret_to_nx_instr) (void); @@ -60,15 +60,17 @@ extern void (linux_ptrace_test_ret_to_nx_instr) (void); #include #include -#endif /* __i386__ */ +#endif /* defined __i386__ || defined __x86_64__ */ /* Test broken off-trunk Linux kernel patchset for NX support on i386. It was - removed in Fedora kernel 88fa1f0332d188795ed73d7ac2b1564e11a0b4cd. */ + removed in Fedora kernel 88fa1f0332d188795ed73d7ac2b1564e11a0b4cd. + + Test also x86_64 arch for PaX support. */ static void linux_ptrace_test_ret_to_nx (void) { -#ifdef __i386__ +#if defined __i386__ || defined __x86_64__ pid_t child, got_pid; gdb_byte *return_address, *pc; long l; @@ -101,39 +103,105 @@ linux_ptrace_test_ret_to_nx (void) strerror (errno)); else { +#if defined __i386__ asm volatile ("pushl %0;" ".globl linux_ptrace_test_ret_to_nx_instr;" "linux_ptrace_test_ret_to_nx_instr:" "ret" : : "r" (return_address) : "%esp", "memory"); +#elif defined __x86_64__ + asm volatile ("pushq %0;" + ".globl linux_ptrace_test_ret_to_nx_instr;" + "linux_ptrace_test_ret_to_nx_instr:" + "ret" + : : "r" (return_address) : "%rsp", "memory"); +#else +# error "!__i386__ && !__x86_64__" +#endif gdb_assert_not_reached ("asm block did not terminate"); } _exit (1); } + errno = 0; got_pid = waitpid (child, &status, 0); - gdb_assert (got_pid == child); - gdb_assert (WIFSTOPPED (status)); + if (got_pid != child) + { + warning (_("linux_ptrace_test_ret_to_nx: waitpid returned %ld: %s"), + (long) got_pid, strerror (errno)); + return; + } + + if (WIFSIGNALED (status)) + { + if (WTERMSIG (status) != SIGKILL) + warning (_("linux_ptrace_test_ret_to_nx: WTERMSIG %d is not SIGKILL!"), + (int) WTERMSIG (status)); + else + warning (_("Cannot call inferior functions, Linux kernel PaX " + "protection forbids return to non-executable pages!")); + return; + } + + if (!WIFSTOPPED (status)) + { + warning (_("linux_ptrace_test_ret_to_nx: status %d is not WIFSTOPPED!"), + status); + return; + } /* We may get SIGSEGV due to missing PROT_EXEC of the return_address. */ - gdb_assert (WSTOPSIG (status) == SIGTRAP || WSTOPSIG (status) == SIGSEGV); + if (WSTOPSIG (status) != SIGTRAP && WSTOPSIG (status) != SIGSEGV) + { + warning (_("linux_ptrace_test_ret_to_nx: " + "WSTOPSIG %d is neither SIGTRAP nor SIGSEGV!"), + (int) WSTOPSIG (status)); + return; + } errno = 0; +#if defined __i386__ l = ptrace (PTRACE_PEEKUSER, child, (void *) (uintptr_t) (EIP * 4), NULL); - gdb_assert (errno == 0); +#elif defined __x86_64__ + l = ptrace (PTRACE_PEEKUSER, child, (void *) (uintptr_t) (RIP * 8), NULL); +#else +# error "!__i386__ && !__x86_64__" +#endif + if (errno != 0) + { + warning (_("linux_ptrace_test_ret_to_nx: Cannot PTRACE_PEEKUSER: %s"), + strerror (errno)); + return; + } pc = (void *) (uintptr_t) l; if (ptrace (PTRACE_KILL, child, NULL, NULL) != 0) - warning (_("linux_ptrace_test_ret_to_nx: Cannot PTRACE_KILL: %s"), - strerror (errno)); + { + warning (_("linux_ptrace_test_ret_to_nx: Cannot PTRACE_KILL: %s"), + strerror (errno)); + return; + } else { int kill_status; + errno = 0; got_pid = waitpid (child, &kill_status, 0); - gdb_assert (got_pid == child); - gdb_assert (WIFSIGNALED (kill_status)); + if (got_pid != child) + { + warning (_("linux_ptrace_test_ret_to_nx: " + "PTRACE_KILL waitpid returned %ld: %s"), + (long) got_pid, strerror (errno)); + return; + } + if (!WIFSIGNALED (kill_status)) + { + warning (_("linux_ptrace_test_ret_to_nx: " + "PTRACE_KILL status %d is not WIFSIGNALED!"), + status); + return; + } } /* + 1 is there as x86* stops after the 'int3' instruction. */ @@ -150,11 +218,14 @@ linux_ptrace_test_ret_to_nx (void) return; } - gdb_assert ((void (*) (void)) pc == &linux_ptrace_test_ret_to_nx_instr); - - warning (_("Cannot call inferior functions, you have broken " - "Linux kernel i386 NX (non-executable pages) support!")); -#endif /* __i386__ */ + if ((void (*) (void)) pc != &linux_ptrace_test_ret_to_nx_instr) + warning (_("linux_ptrace_test_ret_to_nx: PC %p is neither near return " + "address %p nor is the return instruction %p!"), + pc, return_address, &linux_ptrace_test_ret_to_nx_instr); + else + warning (_("Cannot call inferior functions, you have broken " + "Linux kernel i386 NX (non-executable pages) support!")); +#endif /* defined __i386__ || defined __x86_64__ */ } /* Display possible problems on this system. Display them only once per GDB diff --git a/gdb/defs.h b/gdb/defs.h index 1c6fa79..04ced04 100644 --- a/gdb/defs.h +++ b/gdb/defs.h @@ -27,6 +27,7 @@ #endif #include "config.h" /* Generated by configure. */ +#include "build-gnulib/config.h" #include #include diff --git a/gdb/doc/ChangeLog b/gdb/doc/ChangeLog index 8bb3013..762c1dc 100644 --- a/gdb/doc/ChangeLog +++ b/gdb/doc/ChangeLog @@ -1,3 +1,7 @@ +2012-08-27 Jan Kratochvil + + * gdb.texinfo (objfile-gdb.py file): New paragraph for .exe stripping. + 2012-08-07 Jan Kratochvil * gdbint.texinfo (Debugging GDB): In section diff --git a/gdb/doc/gdb.info b/gdb/doc/gdb.info index 23eb4bf..0bdcd84 100644 --- a/gdb/doc/gdb.info +++ b/gdb/doc/gdb.info @@ -23,7 +23,7 @@ developing GNU and promoting software freedom." This file documents the GNU debugger GDB. This is the Tenth Edition, of `Debugging with GDB: the GNU -Source-Level Debugger' for GDB (GDB) Version 7.5. +Source-Level Debugger' for GDB (GDB) Version 7.5.1. Copyright (C) 1988, 1989, 1990, 1991, 1992, 1993, 1994, 1995, 1996, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, @@ -42,610 +42,610 @@ developing GNU and promoting software freedom."  Indirect: -gdb.info-1: 1910 -gdb.info-2: 298476 -gdb.info-3: 597893 -gdb.info-4: 897339 -gdb.info-5: 1194684 -gdb.info-6: 1474501 +gdb.info-1: 1912 +gdb.info-2: 298482 +gdb.info-3: 597899 +gdb.info-4: 897345 +gdb.info-5: 1195094 +gdb.info-6: 1474957  Tag Table: (Indirect) -Node: Top1910 -Node: Summary5338 -Node: Free Software7211 -Node: Free Documentation7952 -Node: Contributors12887 -Node: Sample Session20981 -Node: Invocation27817 -Node: Invoking GDB28361 -Node: File Options30674 -Node: Mode Options33732 -Ref: -nx33959 -Node: Startup40406 -Ref: Home Directory Init File40957 -Ref: Option -init-eval-command41067 -Ref: Init File in the Current Directory during Startup41412 -Ref: Startup-Footnote-143584 -Node: Quitting GDB43693 -Node: Shell Commands44590 -Node: Logging Output45517 -Node: Commands46363 -Node: Command Syntax47001 -Node: Completion49167 -Ref: Completion-Footnote-154531 -Node: Help54691 -Node: Running60060 -Node: Compilation61289 -Node: Starting63373 -Node: Arguments72298 -Node: Environment73568 -Node: Working Directory76836 -Node: Input/Output77944 -Node: Attach79915 -Node: Kill Process82382 -Node: Inferiors and Programs83363 -Node: Threads90608 -Ref: set libthread-db-search-path98017 -Node: Forks100075 -Node: Checkpoint/Restart106385 -Ref: Checkpoint/Restart-Footnote-1110914 -Node: Stopping110949 -Node: Breakpoints112212 -Node: Set Breaks115755 -Node: Set Watchpoints134488 -Node: Set Catchpoints143891 -Node: Delete Breaks153327 -Node: Disabling155263 -Node: Conditions158652 -Node: Break Commands164300 -Node: Dynamic Printf167522 -Node: Save Breakpoints171782 -Node: Static Probe Points172957 -Node: Error in Breakpoints175644 -Node: Breakpoint-related Warnings176380 -Node: Continuing and Stepping178707 -Node: Skipping Over Functions and Files188093 -Node: Signals191665 -Ref: extra signal information195947 -Node: Thread Stops197450 -Node: All-Stop Mode198549 -Node: Non-Stop Mode202447 -Node: Background Execution205924 -Node: Thread-Specific Breakpoints208493 -Node: Interrupted System Calls209815 -Node: Observer Mode211329 -Node: Reverse Execution214768 -Ref: Reverse Execution-Footnote-1219395 -Ref: Reverse Execution-Footnote-2220022 -Node: Process Record and Replay220072 -Node: Stack227319 -Node: Frames228812 -Node: Backtrace231564 -Ref: Backtrace-Footnote-1236777 -Node: Selection236965 -Node: Frame Info239829 -Node: Source241823 -Node: List242889 -Node: Specify Location245502 -Node: Edit250106 -Ref: Edit-Footnote-1251581 -Node: Search251816 -Node: Source Path252624 -Ref: set substitute-path258991 -Node: Machine Code261212 -Node: Data267886 -Node: Expressions275502 -Node: Ambiguous Expressions277594 -Node: Variables280828 -Node: Arrays286446 -Node: Output Formats288977 -Ref: Output Formats-Footnote-1292165 -Node: Memory292322 -Node: Auto Display298476 -Node: Print Settings303018 -Ref: set print entry-values310598 -Node: Pretty Printing321843 -Node: Pretty-Printer Introduction322356 -Node: Pretty-Printer Example324111 -Node: Pretty-Printer Commands324889 -Node: Value History327313 -Node: Convenience Vars329734 -Node: Registers334580 -Ref: Registers-Footnote-1339257 -Node: Floating Point Hardware339652 -Node: Vector Unit340184 -Node: OS Information340571 -Ref: linux info os infotypes343148 -Node: Memory Region Attributes347348 -Node: Dump/Restore Files352018 -Node: Core File Generation354323 -Node: Character Sets355557 -Node: Caching Remote Data361922 -Ref: Caching Remote Data-Footnote-1364187 -Node: Searching Memory364425 -Node: Optimized Code367302 -Node: Inline Functions368979 -Node: Tail Call Frames371606 -Ref: set debug entry-values373746 -Node: Macros377820 -Ref: Macros-Footnote-1385396 -Node: Tracepoints385549 -Node: Set Tracepoints387610 -Node: Create and Delete Tracepoints390548 -Node: Enable and Disable Tracepoints396948 -Node: Tracepoint Passcounts398188 -Node: Tracepoint Conditions399615 -Node: Trace State Variables401309 -Node: Tracepoint Actions403499 -Node: Listing Tracepoints409804 -Node: Listing Static Tracepoint Markers410925 -Node: Starting and Stopping Trace Experiments412771 -Ref: disconnected tracing414516 -Node: Tracepoint Restrictions418134 -Node: Analyze Collected Data421904 -Node: tfind423209 -Node: tdump427631 -Node: save tracepoints430146 -Node: Tracepoint Variables430642 -Node: Trace Files431770 -Node: Overlays433228 -Node: How Overlays Work433948 -Ref: A code overlay436508 -Node: Overlay Commands439946 -Node: Automatic Overlay Debugging444136 -Node: Overlay Sample Program446277 -Node: Languages448037 -Node: Setting449200 -Node: Filenames450902 -Node: Manually451713 -Node: Automatically452922 -Node: Show453983 -Node: Checks455305 -Node: Type Checking456695 -Node: Range Checking459428 -Node: Supported Languages461829 -Node: C463129 -Node: C Operators464093 -Node: C Constants468412 -Node: C Plus Plus Expressions471293 -Node: C Defaults474636 -Node: C Checks475319 -Node: Debugging C476042 -Node: Debugging C Plus Plus476526 -Node: Decimal Floating Point479984 -Node: D481243 -Node: Go481500 -Node: Objective-C482594 -Node: Method Names in Commands483057 -Node: The Print Command with Objective-C484752 -Node: OpenCL C485403 -Node: OpenCL C Datatypes485678 -Node: OpenCL C Expressions486053 -Node: OpenCL C Operators486410 -Node: Fortran486642 -Node: Fortran Operators487364 -Node: Fortran Defaults488220 -Node: Special Fortran Commands488605 -Node: Pascal489111 -Node: Modula-2489626 -Node: M2 Operators490601 -Node: Built-In Func/Proc493600 -Node: M2 Constants496461 -Node: M2 Types498062 -Node: M2 Defaults501281 -Node: Deviations501881 -Node: M2 Checks502982 -Node: M2 Scope503800 -Node: GDB/M2504824 -Node: Ada505736 -Node: Ada Mode Intro506799 -Node: Omissions from Ada508709 -Node: Additions to Ada513063 -Node: Stopping Before Main Program516993 -Node: Ada Tasks517522 -Node: Ada Tasks and Core Files523935 -Node: Ravenscar Profile524853 -Node: Ada Glitches525923 -Node: Unsupported Languages528717 -Node: Symbols529407 -Node: Altering543995 -Node: Assignment544964 -Node: Jumping548069 -Node: Signaling550204 -Node: Returning551335 -Node: Calling554687 -Node: Patching557714 -Node: GDB Files558791 -Node: Files559436 -Ref: Shared Libraries572281 -Ref: Files-Footnote-1583915 -Node: Separate Debug Files584090 -Ref: debug-file-directory587195 -Node: Index Files595824 -Node: Symbol Errors597893 -Node: Data Files601506 -Node: Targets602462 -Node: Active Targets603942 -Node: Target Commands605016 -Ref: load609289 -Node: Byte Order610270 -Node: Remote Debugging611247 -Node: Connecting612509 -Node: File Transfer617449 -Node: Server618389 -Ref: Monitor Commands for gdbserver628611 -Ref: Server-Footnote-1633265 -Node: Remote Configuration633385 -Ref: set remotebreak634409 -Ref: set remote hardware-watchpoint-limit635873 -Ref: set remote hardware-breakpoint-limit635873 -Ref: set remote hardware-watchpoint-length-limit636099 -Ref: set remote exec-file636514 -Node: Remote Stub643479 -Node: Stub Contents646376 -Node: Bootstrapping648483 -Node: Debug Session652292 -Node: Configurations654334 -Node: Native655103 -Node: HP-UX655738 -Node: BSD libkvm Interface656027 -Node: SVR4 Process Information657098 -Node: DJGPP Native660528 -Node: Cygwin Native667108 -Node: Non-debug DLL Symbols671057 -Node: Hurd Native675605 -Node: Neutrino680868 -Node: Darwin681258 -Node: Embedded OS682516 -Node: VxWorks682992 -Node: VxWorks Connection685209 -Node: VxWorks Download686143 -Node: VxWorks Attach687878 -Node: Embedded Processors688276 -Node: ARM689455 -Node: M32R/D693576 -Node: M68K695278 -Node: MicroBlaze695571 -Node: MIPS Embedded697021 -Node: OpenRISC 1000701959 -Node: PowerPC Embedded704828 -Node: PA708595 -Node: Sparclet708879 -Node: Sparclet File710349 -Node: Sparclet Connection711229 -Node: Sparclet Download711707 -Node: Sparclet Execution712756 -Node: Sparclite713347 -Node: Z8000713722 -Node: AVR715106 -Node: CRIS715469 -Node: Super-H716447 -Node: Architectures717650 -Node: i386718063 -Node: Alpha718746 -Node: MIPS718879 -Node: HPPA722772 -Node: SPU723291 -Node: PowerPC725479 -Node: Controlling GDB726197 -Node: Prompt727094 -Node: Editing728813 -Node: Command History729756 -Node: Screen Size733160 -Node: Numbers734994 -Node: ABI736971 -Node: Auto-loading739895 -Ref: set auto-load off740762 -Ref: show auto-load741398 -Ref: info auto-load742177 -Node: Init File in the Current Directory745758 -Ref: set auto-load local-gdbinit746333 -Ref: show auto-load local-gdbinit746515 -Ref: info auto-load local-gdbinit746679 -Node: libthread_db.so.1 file746827 -Ref: set auto-load libthread-db747764 -Ref: show auto-load libthread-db747895 -Ref: info auto-load libthread-db748032 -Node: objfile-gdb.gdb file748216 -Ref: set auto-load gdb-scripts748825 -Ref: show auto-load gdb-scripts748949 -Ref: info auto-load gdb-scripts749079 -Node: Auto-loading safe path749310 -Ref: set auto-load safe-path750465 -Ref: show auto-load safe-path751204 -Ref: add-auto-load-safe-path751327 -Node: Auto-loading verbose mode754221 -Ref: set debug auto-load755384 -Ref: show debug auto-load755485 -Node: Messages/Warnings755607 -Ref: confirmation requests757042 -Node: Debugging Output758249 -Node: Other Misc Settings765051 -Node: Extending GDB766080 -Node: Sequences767708 -Node: Define768303 -Node: Hooks772104 -Node: Command Files774471 -Node: Output779541 -Node: Python784474 -Node: Python Commands785649 -Node: Python API787443 -Node: Basic Python789376 -Ref: prompt_hook796842 -Node: Exception Handling797439 -Node: Values From Inferior799935 -Node: Types In Python812580 -Node: Pretty Printing API821319 -Node: Selecting Pretty-Printers825212 -Node: Writing a Pretty-Printer827545 -Node: Inferiors In Python832868 -Node: Events In Python835875 -Node: Threads In Python841283 -Node: Commands In Python843895 -Node: Parameters In Python853081 -Node: Functions In Python858542 -Node: Progspaces In Python860657 -Node: Objfiles In Python862009 -Node: Frames In Python863940 -Node: Blocks In Python870377 -Node: Symbols In Python873348 -Node: Symbol Tables In Python880887 -Node: Breakpoints In Python883878 -Node: Finish Breakpoints in Python890990 -Node: Lazy Strings In Python893097 -Node: Python Auto-loading895300 -Ref: set auto-load python-scripts895964 -Ref: show auto-load python-scripts896064 -Ref: info auto-load python-scripts896170 -Node: objfile-gdb.py file897339 -Ref: set auto-load scripts-directory898121 -Ref: with-auto-load-dir898497 -Ref: show auto-load scripts-directory899315 -Node: dotdebug_gdb_scripts section899644 -Node: Which flavor to choose?901165 -Node: Python modules902991 -Node: gdb.printing903377 -Node: gdb.types904791 -Node: gdb.prompt906493 -Node: Aliases908142 -Node: Interpreters910985 -Node: TUI913084 -Node: TUI Overview914031 -Node: TUI Keys916464 -Node: TUI Single Key Mode918768 -Node: TUI Commands919643 -Node: TUI Configuration922027 -Node: Emacs923323 -Node: GDB/MI928797 -Node: GDB/MI General Design930677 -Node: Context management933200 -Node: Asynchronous and non-stop modes936335 -Node: Thread groups938327 -Node: GDB/MI Command Syntax940605 -Node: GDB/MI Input Syntax940848 -Node: GDB/MI Output Syntax942402 -Node: GDB/MI Compatibility with CLI945974 -Node: GDB/MI Development and Front Ends946711 -Node: GDB/MI Output Records948368 -Node: GDB/MI Result Records948740 -Node: GDB/MI Stream Records949746 -Node: GDB/MI Async Records951011 -Node: GDB/MI Frame Information958843 -Node: GDB/MI Thread Information959921 -Node: GDB/MI Ada Exception Information960900 -Node: GDB/MI Simple Examples961323 -Node: GDB/MI Command Description Format963500 -Node: GDB/MI Breakpoint Commands964380 -Node: GDB/MI Program Context982251 -Node: GDB/MI Thread Commands986519 -Node: GDB/MI Ada Tasking Commands990475 -Node: GDB/MI Program Execution992729 -Node: GDB/MI Stack Manipulation1004515 -Node: GDB/MI Variable Objects1015417 -Ref: -var-set-format1025320 -Ref: -var-list-children1026438 -Ref: -var-update1034789 -Ref: -var-set-frozen1037784 -Ref: -var-set-update-range1038580 -Ref: -var-set-visualizer1039110 -Node: GDB/MI Data Manipulation1040607 -Node: GDB/MI Tracepoint Commands1058192 -Node: GDB/MI Symbol Query1065521 -Node: GDB/MI File Commands1066210 -Node: GDB/MI Target Manipulation1069547 -Node: GDB/MI File Transfer Commands1075769 -Node: GDB/MI Miscellaneous Commands1077091 -Ref: -interpreter-exec1089683 -Node: Annotations1091996 -Node: Annotations Overview1092915 -Node: Server Prefix1095378 -Node: Prompting1096112 -Node: Errors1097629 -Node: Invalidation1098525 -Node: Annotations for Running1099002 -Node: Source Annotations1100522 -Node: JIT Interface1101447 -Node: Declarations1103247 -Node: Registering Code1104634 -Node: Unregistering Code1105606 -Node: Custom Debug Info1106233 -Node: Using JIT Debug Info Readers1107529 -Node: Writing JIT Debug Info Readers1108396 -Node: In-Process Agent1110593 -Ref: Control Agent1112536 -Node: In-Process Agent Protocol1113403 -Node: IPA Protocol Objects1114195 -Ref: agent expression object1115197 -Ref: tracepoint action object1115403 -Ref: tracepoint object1115484 -Node: IPA Protocol Commands1118441 -Node: GDB Bugs1119776 -Node: Bug Criteria1120508 -Node: Bug Reporting1121385 -Node: Command Line Editing1129008 -Node: Introduction and Notation1129660 -Node: Readline Interaction1131280 -Node: Readline Bare Essentials1132469 -Node: Readline Movement Commands1134256 -Node: Readline Killing Commands1135219 -Node: Readline Arguments1137137 -Node: Searching1138179 -Node: Readline Init File1140328 -Node: Readline Init File Syntax1141479 -Node: Conditional Init Constructs1156537 -Node: Sample Init File1159068 -Node: Bindable Readline Commands1162183 -Node: Commands For Moving1163238 -Node: Commands For History1164097 -Node: Commands For Text1167499 -Node: Commands For Killing1170223 -Node: Numeric Arguments1172363 -Node: Commands For Completion1173500 -Node: Keyboard Macros1175467 -Node: Miscellaneous Commands1176036 -Node: Readline vi Mode1179890 -Node: Using History Interactively1180800 -Node: History Interaction1181343 -Node: Event Designators1182765 -Node: Word Designators1183905 -Node: Modifiers1185542 -Node: In Memoriam1186765 -Node: Formatting Documentation1187648 -Ref: Formatting Documentation-Footnote-11190961 -Node: Installing GDB1191025 -Node: Requirements1191597 -Ref: Expat1192166 -Node: Running Configure1194684 -Node: Separate Objdir1198223 -Node: Config Names1201107 -Node: Configure Options1202552 -Node: System-wide configuration1204922 -Node: Maintenance Commands1206217 -Ref: maint info breakpoints1207871 -Node: Remote Protocol1222269 -Node: Overview1222899 -Ref: Binary Data1225461 -Node: Packets1227984 -Ref: thread-id syntax1228884 -Ref: extended mode1230329 -Ref: bc1232050 -Ref: bs1232260 -Ref: read registers packet1233864 -Ref: cycle step packet1235797 -Ref: write register packet1237673 -Ref: step with signal packet1238669 -Ref: vCont packet1240123 -Ref: vStopped packet1245039 -Ref: X packet1245382 -Ref: insert breakpoint or watchpoint packet1245668 -Node: Stop Reply Packets1249705 -Node: General Query Packets1254445 -Ref: QNonStop1264659 -Ref: QPassSignals1265283 -Ref: QProgramSignals1266452 -Ref: qSearch memory1268928 -Ref: QStartNoAckMode1269426 -Ref: qSupported1269956 -Ref: multiprocess extensions1279773 -Ref: install tracepoint in tracing1281802 -Ref: qXfer read1284820 -Ref: qXfer auxiliary vector read1285314 -Ref: qXfer target description read1285663 -Ref: qXfer library list read1286107 -Ref: qXfer svr4 library list read1286762 -Ref: qXfer memory map read1287397 -Ref: qXfer sdata read1287783 -Ref: qXfer siginfo read1288247 -Ref: qXfer spu read1288643 -Ref: qXfer threads read1289166 -Ref: qXfer traceframe info read1289568 -Ref: qXfer unwind info block1289984 -Ref: qXfer fdpic loadmap read1290216 -Ref: qXfer osdata read1290631 -Ref: qXfer write1291833 -Ref: qXfer siginfo write1292390 -Ref: qXfer spu write1292786 -Ref: General Query Packets-Footnote-11294873 -Node: Architecture-Specific Protocol Details1295200 -Node: ARM-Specific Protocol Details1295709 -Node: ARM Breakpoint Kinds1295957 -Node: MIPS-Specific Protocol Details1296289 -Node: MIPS Register packet Format1296572 -Node: MIPS Breakpoint Kinds1297501 -Node: Tracepoint Packets1297920 -Ref: QTEnable1306913 -Ref: QTDisable1307109 -Ref: qTfSTM1312633 -Ref: qTsSTM1312633 -Ref: qTSTMat1313671 -Node: Host I/O Packets1316599 -Node: Interrupts1321217 -Node: Notification Packets1323120 -Node: Remote Non-Stop1325391 -Node: Packet Acknowledgment1329650 -Node: Examples1331765 -Node: File-I/O Remote Protocol Extension1332391 -Node: File-I/O Overview1332853 -Node: Protocol Basics1335050 -Node: The F Request Packet1337282 -Node: The F Reply Packet1338183 -Node: The Ctrl-C Message1339101 -Node: Console I/O1340730 -Node: List of Supported Calls1341947 -Node: open1342309 -Node: close1344803 -Node: read1345185 -Node: write1345792 -Node: lseek1346559 -Node: rename1347437 -Node: unlink1348833 -Node: stat/fstat1349772 -Node: gettimeofday1350659 -Node: isatty1351094 -Node: system1351690 -Node: Protocol-specific Representation of Datatypes1353232 -Node: Integral Datatypes1353609 -Node: Pointer Values1354416 -Node: Memory Transfer1355124 -Node: struct stat1355744 -Node: struct timeval1357946 -Node: Constants1358463 -Node: Open Flags1358912 -Node: mode_t Values1359253 -Node: Errno Values1359745 -Node: Lseek Flags1360556 -Node: Limits1360741 -Node: File-I/O Examples1361101 -Node: Library List Format1362217 -Node: Library List Format for SVR4 Targets1365000 -Node: Memory Map Format1367470 -Node: Thread List Format1370047 -Node: Traceframe Info Format1370865 -Node: Agent Expressions1372322 -Node: General Bytecode Design1375143 -Node: Bytecode Descriptions1379943 -Node: Using Agent Expressions1393379 -Node: Varying Target Capabilities1395357 -Node: Rationale1396519 -Node: Target Descriptions1403905 -Node: Retrieving Descriptions1405781 -Node: Target Description Format1406866 -Node: Predefined Target Types1415915 -Node: Standard Target Features1417300 -Node: ARM Features1419090 -Node: i386 Features1420582 -Node: MIPS Features1421686 -Node: M68K Features1422870 -Node: PowerPC Features1423533 -Node: TIC6x Features1424840 -Node: Operating System Information1425389 -Node: Process list1426227 -Node: Trace File Format1427289 -Node: Index Section Format1429283 -Node: Copying1436911 -Node: GNU Free Documentation License1474501 -Node: Concept Index1499667 -Node: Command and Variable Index1616465 +Node: Top1912 +Node: Summary5342 +Node: Free Software7215 +Node: Free Documentation7956 +Node: Contributors12891 +Node: Sample Session20985 +Node: Invocation27823 +Node: Invoking GDB28367 +Node: File Options30680 +Node: Mode Options33738 +Ref: -nx33965 +Node: Startup40412 +Ref: Home Directory Init File40963 +Ref: Option -init-eval-command41073 +Ref: Init File in the Current Directory during Startup41418 +Ref: Startup-Footnote-143590 +Node: Quitting GDB43699 +Node: Shell Commands44596 +Node: Logging Output45523 +Node: Commands46369 +Node: Command Syntax47007 +Node: Completion49173 +Ref: Completion-Footnote-154537 +Node: Help54697 +Node: Running60066 +Node: Compilation61295 +Node: Starting63379 +Node: Arguments72304 +Node: Environment73574 +Node: Working Directory76842 +Node: Input/Output77950 +Node: Attach79921 +Node: Kill Process82388 +Node: Inferiors and Programs83369 +Node: Threads90614 +Ref: set libthread-db-search-path98023 +Node: Forks100081 +Node: Checkpoint/Restart106391 +Ref: Checkpoint/Restart-Footnote-1110920 +Node: Stopping110955 +Node: Breakpoints112218 +Node: Set Breaks115761 +Node: Set Watchpoints134494 +Node: Set Catchpoints143897 +Node: Delete Breaks153333 +Node: Disabling155269 +Node: Conditions158658 +Node: Break Commands164306 +Node: Dynamic Printf167528 +Node: Save Breakpoints171788 +Node: Static Probe Points172963 +Node: Error in Breakpoints175650 +Node: Breakpoint-related Warnings176386 +Node: Continuing and Stepping178713 +Node: Skipping Over Functions and Files188099 +Node: Signals191671 +Ref: extra signal information195953 +Node: Thread Stops197456 +Node: All-Stop Mode198555 +Node: Non-Stop Mode202453 +Node: Background Execution205930 +Node: Thread-Specific Breakpoints208499 +Node: Interrupted System Calls209821 +Node: Observer Mode211335 +Node: Reverse Execution214774 +Ref: Reverse Execution-Footnote-1219401 +Ref: Reverse Execution-Footnote-2220028 +Node: Process Record and Replay220078 +Node: Stack227325 +Node: Frames228818 +Node: Backtrace231570 +Ref: Backtrace-Footnote-1236783 +Node: Selection236971 +Node: Frame Info239835 +Node: Source241829 +Node: List242895 +Node: Specify Location245508 +Node: Edit250112 +Ref: Edit-Footnote-1251587 +Node: Search251822 +Node: Source Path252630 +Ref: set substitute-path258997 +Node: Machine Code261218 +Node: Data267892 +Node: Expressions275508 +Node: Ambiguous Expressions277600 +Node: Variables280834 +Node: Arrays286452 +Node: Output Formats288983 +Ref: Output Formats-Footnote-1292171 +Node: Memory292328 +Node: Auto Display298482 +Node: Print Settings303024 +Ref: set print entry-values310604 +Node: Pretty Printing321849 +Node: Pretty-Printer Introduction322362 +Node: Pretty-Printer Example324117 +Node: Pretty-Printer Commands324895 +Node: Value History327319 +Node: Convenience Vars329740 +Node: Registers334586 +Ref: Registers-Footnote-1339263 +Node: Floating Point Hardware339658 +Node: Vector Unit340190 +Node: OS Information340577 +Ref: linux info os infotypes343154 +Node: Memory Region Attributes347354 +Node: Dump/Restore Files352024 +Node: Core File Generation354329 +Node: Character Sets355563 +Node: Caching Remote Data361928 +Ref: Caching Remote Data-Footnote-1364193 +Node: Searching Memory364431 +Node: Optimized Code367308 +Node: Inline Functions368985 +Node: Tail Call Frames371612 +Ref: set debug entry-values373752 +Node: Macros377826 +Ref: Macros-Footnote-1385402 +Node: Tracepoints385555 +Node: Set Tracepoints387616 +Node: Create and Delete Tracepoints390554 +Node: Enable and Disable Tracepoints396954 +Node: Tracepoint Passcounts398194 +Node: Tracepoint Conditions399621 +Node: Trace State Variables401315 +Node: Tracepoint Actions403505 +Node: Listing Tracepoints409810 +Node: Listing Static Tracepoint Markers410931 +Node: Starting and Stopping Trace Experiments412777 +Ref: disconnected tracing414522 +Node: Tracepoint Restrictions418140 +Node: Analyze Collected Data421910 +Node: tfind423215 +Node: tdump427637 +Node: save tracepoints430152 +Node: Tracepoint Variables430648 +Node: Trace Files431776 +Node: Overlays433234 +Node: How Overlays Work433954 +Ref: A code overlay436514 +Node: Overlay Commands439952 +Node: Automatic Overlay Debugging444142 +Node: Overlay Sample Program446283 +Node: Languages448043 +Node: Setting449206 +Node: Filenames450908 +Node: Manually451719 +Node: Automatically452928 +Node: Show453989 +Node: Checks455311 +Node: Type Checking456701 +Node: Range Checking459434 +Node: Supported Languages461835 +Node: C463135 +Node: C Operators464099 +Node: C Constants468418 +Node: C Plus Plus Expressions471299 +Node: C Defaults474642 +Node: C Checks475325 +Node: Debugging C476048 +Node: Debugging C Plus Plus476532 +Node: Decimal Floating Point479990 +Node: D481249 +Node: Go481506 +Node: Objective-C482600 +Node: Method Names in Commands483063 +Node: The Print Command with Objective-C484758 +Node: OpenCL C485409 +Node: OpenCL C Datatypes485684 +Node: OpenCL C Expressions486059 +Node: OpenCL C Operators486416 +Node: Fortran486648 +Node: Fortran Operators487370 +Node: Fortran Defaults488226 +Node: Special Fortran Commands488611 +Node: Pascal489117 +Node: Modula-2489632 +Node: M2 Operators490607 +Node: Built-In Func/Proc493606 +Node: M2 Constants496467 +Node: M2 Types498068 +Node: M2 Defaults501287 +Node: Deviations501887 +Node: M2 Checks502988 +Node: M2 Scope503806 +Node: GDB/M2504830 +Node: Ada505742 +Node: Ada Mode Intro506805 +Node: Omissions from Ada508715 +Node: Additions to Ada513069 +Node: Stopping Before Main Program516999 +Node: Ada Tasks517528 +Node: Ada Tasks and Core Files523941 +Node: Ravenscar Profile524859 +Node: Ada Glitches525929 +Node: Unsupported Languages528723 +Node: Symbols529413 +Node: Altering544001 +Node: Assignment544970 +Node: Jumping548075 +Node: Signaling550210 +Node: Returning551341 +Node: Calling554693 +Node: Patching557720 +Node: GDB Files558797 +Node: Files559442 +Ref: Shared Libraries572287 +Ref: Files-Footnote-1583921 +Node: Separate Debug Files584096 +Ref: debug-file-directory587201 +Node: Index Files595830 +Node: Symbol Errors597899 +Node: Data Files601512 +Node: Targets602468 +Node: Active Targets603948 +Node: Target Commands605022 +Ref: load609295 +Node: Byte Order610276 +Node: Remote Debugging611253 +Node: Connecting612515 +Node: File Transfer617455 +Node: Server618395 +Ref: Monitor Commands for gdbserver628617 +Ref: Server-Footnote-1633271 +Node: Remote Configuration633391 +Ref: set remotebreak634415 +Ref: set remote hardware-watchpoint-limit635879 +Ref: set remote hardware-breakpoint-limit635879 +Ref: set remote hardware-watchpoint-length-limit636105 +Ref: set remote exec-file636520 +Node: Remote Stub643485 +Node: Stub Contents646382 +Node: Bootstrapping648489 +Node: Debug Session652298 +Node: Configurations654340 +Node: Native655109 +Node: HP-UX655744 +Node: BSD libkvm Interface656033 +Node: SVR4 Process Information657104 +Node: DJGPP Native660534 +Node: Cygwin Native667114 +Node: Non-debug DLL Symbols671063 +Node: Hurd Native675611 +Node: Neutrino680874 +Node: Darwin681264 +Node: Embedded OS682522 +Node: VxWorks682998 +Node: VxWorks Connection685215 +Node: VxWorks Download686149 +Node: VxWorks Attach687884 +Node: Embedded Processors688282 +Node: ARM689461 +Node: M32R/D693582 +Node: M68K695284 +Node: MicroBlaze695577 +Node: MIPS Embedded697027 +Node: OpenRISC 1000701965 +Node: PowerPC Embedded704834 +Node: PA708601 +Node: Sparclet708885 +Node: Sparclet File710355 +Node: Sparclet Connection711235 +Node: Sparclet Download711713 +Node: Sparclet Execution712762 +Node: Sparclite713353 +Node: Z8000713728 +Node: AVR715112 +Node: CRIS715475 +Node: Super-H716453 +Node: Architectures717656 +Node: i386718069 +Node: Alpha718752 +Node: MIPS718885 +Node: HPPA722778 +Node: SPU723297 +Node: PowerPC725485 +Node: Controlling GDB726203 +Node: Prompt727100 +Node: Editing728819 +Node: Command History729762 +Node: Screen Size733166 +Node: Numbers735000 +Node: ABI736977 +Node: Auto-loading739901 +Ref: set auto-load off740768 +Ref: show auto-load741404 +Ref: info auto-load742183 +Node: Init File in the Current Directory745764 +Ref: set auto-load local-gdbinit746339 +Ref: show auto-load local-gdbinit746521 +Ref: info auto-load local-gdbinit746685 +Node: libthread_db.so.1 file746833 +Ref: set auto-load libthread-db747770 +Ref: show auto-load libthread-db747901 +Ref: info auto-load libthread-db748038 +Node: objfile-gdb.gdb file748222 +Ref: set auto-load gdb-scripts748831 +Ref: show auto-load gdb-scripts748955 +Ref: info auto-load gdb-scripts749085 +Node: Auto-loading safe path749316 +Ref: set auto-load safe-path750471 +Ref: show auto-load safe-path751210 +Ref: add-auto-load-safe-path751333 +Node: Auto-loading verbose mode754227 +Ref: set debug auto-load755390 +Ref: show debug auto-load755491 +Node: Messages/Warnings755613 +Ref: confirmation requests757048 +Node: Debugging Output758255 +Node: Other Misc Settings765057 +Node: Extending GDB766086 +Node: Sequences767714 +Node: Define768309 +Node: Hooks772110 +Node: Command Files774477 +Node: Output779547 +Node: Python784480 +Node: Python Commands785655 +Node: Python API787449 +Node: Basic Python789382 +Ref: prompt_hook796848 +Node: Exception Handling797445 +Node: Values From Inferior799941 +Node: Types In Python812586 +Node: Pretty Printing API821325 +Node: Selecting Pretty-Printers825218 +Node: Writing a Pretty-Printer827551 +Node: Inferiors In Python832874 +Node: Events In Python835881 +Node: Threads In Python841289 +Node: Commands In Python843901 +Node: Parameters In Python853087 +Node: Functions In Python858548 +Node: Progspaces In Python860663 +Node: Objfiles In Python862015 +Node: Frames In Python863946 +Node: Blocks In Python870383 +Node: Symbols In Python873354 +Node: Symbol Tables In Python880893 +Node: Breakpoints In Python883884 +Node: Finish Breakpoints in Python890996 +Node: Lazy Strings In Python893103 +Node: Python Auto-loading895306 +Ref: set auto-load python-scripts895970 +Ref: show auto-load python-scripts896070 +Ref: info auto-load python-scripts896176 +Node: objfile-gdb.py file897345 +Ref: set auto-load scripts-directory898519 +Ref: with-auto-load-dir898895 +Ref: show auto-load scripts-directory899713 +Node: dotdebug_gdb_scripts section900042 +Node: Which flavor to choose?901563 +Node: Python modules903389 +Node: gdb.printing903775 +Node: gdb.types905189 +Node: gdb.prompt906891 +Node: Aliases908540 +Node: Interpreters911383 +Node: TUI913482 +Node: TUI Overview914429 +Node: TUI Keys916862 +Node: TUI Single Key Mode919166 +Node: TUI Commands920041 +Node: TUI Configuration922425 +Node: Emacs923721 +Node: GDB/MI929195 +Node: GDB/MI General Design931075 +Node: Context management933598 +Node: Asynchronous and non-stop modes936733 +Node: Thread groups938725 +Node: GDB/MI Command Syntax941003 +Node: GDB/MI Input Syntax941246 +Node: GDB/MI Output Syntax942800 +Node: GDB/MI Compatibility with CLI946372 +Node: GDB/MI Development and Front Ends947109 +Node: GDB/MI Output Records948766 +Node: GDB/MI Result Records949138 +Node: GDB/MI Stream Records950144 +Node: GDB/MI Async Records951409 +Node: GDB/MI Frame Information959241 +Node: GDB/MI Thread Information960319 +Node: GDB/MI Ada Exception Information961298 +Node: GDB/MI Simple Examples961721 +Node: GDB/MI Command Description Format963898 +Node: GDB/MI Breakpoint Commands964778 +Node: GDB/MI Program Context982649 +Node: GDB/MI Thread Commands986917 +Node: GDB/MI Ada Tasking Commands990873 +Node: GDB/MI Program Execution993127 +Node: GDB/MI Stack Manipulation1004913 +Node: GDB/MI Variable Objects1015815 +Ref: -var-set-format1025718 +Ref: -var-list-children1026836 +Ref: -var-update1035187 +Ref: -var-set-frozen1038182 +Ref: -var-set-update-range1038978 +Ref: -var-set-visualizer1039508 +Node: GDB/MI Data Manipulation1041005 +Node: GDB/MI Tracepoint Commands1058590 +Node: GDB/MI Symbol Query1065919 +Node: GDB/MI File Commands1066608 +Node: GDB/MI Target Manipulation1069945 +Node: GDB/MI File Transfer Commands1076167 +Node: GDB/MI Miscellaneous Commands1077489 +Ref: -interpreter-exec1090081 +Node: Annotations1092394 +Node: Annotations Overview1093313 +Node: Server Prefix1095776 +Node: Prompting1096510 +Node: Errors1098027 +Node: Invalidation1098923 +Node: Annotations for Running1099400 +Node: Source Annotations1100920 +Node: JIT Interface1101845 +Node: Declarations1103645 +Node: Registering Code1105032 +Node: Unregistering Code1106004 +Node: Custom Debug Info1106631 +Node: Using JIT Debug Info Readers1107927 +Node: Writing JIT Debug Info Readers1108794 +Node: In-Process Agent1110991 +Ref: Control Agent1112934 +Node: In-Process Agent Protocol1113801 +Node: IPA Protocol Objects1114593 +Ref: agent expression object1115595 +Ref: tracepoint action object1115801 +Ref: tracepoint object1115882 +Node: IPA Protocol Commands1118839 +Node: GDB Bugs1120174 +Node: Bug Criteria1120906 +Node: Bug Reporting1121783 +Node: Command Line Editing1129406 +Node: Introduction and Notation1130058 +Node: Readline Interaction1131678 +Node: Readline Bare Essentials1132867 +Node: Readline Movement Commands1134654 +Node: Readline Killing Commands1135617 +Node: Readline Arguments1137535 +Node: Searching1138577 +Node: Readline Init File1140726 +Node: Readline Init File Syntax1141877 +Node: Conditional Init Constructs1156935 +Node: Sample Init File1159466 +Node: Bindable Readline Commands1162581 +Node: Commands For Moving1163636 +Node: Commands For History1164495 +Node: Commands For Text1167897 +Node: Commands For Killing1170621 +Node: Numeric Arguments1172761 +Node: Commands For Completion1173898 +Node: Keyboard Macros1175865 +Node: Miscellaneous Commands1176434 +Node: Readline vi Mode1180288 +Node: Using History Interactively1181198 +Node: History Interaction1181741 +Node: Event Designators1183163 +Node: Word Designators1184303 +Node: Modifiers1185940 +Node: In Memoriam1187163 +Node: Formatting Documentation1188046 +Ref: Formatting Documentation-Footnote-11191367 +Node: Installing GDB1191435 +Node: Requirements1192007 +Ref: Expat1192576 +Node: Running Configure1195094 +Node: Separate Objdir1198663 +Node: Config Names1201559 +Node: Configure Options1203008 +Node: System-wide configuration1205378 +Node: Maintenance Commands1206673 +Ref: maint info breakpoints1208327 +Node: Remote Protocol1222725 +Node: Overview1223355 +Ref: Binary Data1225917 +Node: Packets1228440 +Ref: thread-id syntax1229340 +Ref: extended mode1230785 +Ref: bc1232506 +Ref: bs1232716 +Ref: read registers packet1234320 +Ref: cycle step packet1236253 +Ref: write register packet1238129 +Ref: step with signal packet1239125 +Ref: vCont packet1240579 +Ref: vStopped packet1245495 +Ref: X packet1245838 +Ref: insert breakpoint or watchpoint packet1246124 +Node: Stop Reply Packets1250161 +Node: General Query Packets1254901 +Ref: QNonStop1265115 +Ref: QPassSignals1265739 +Ref: QProgramSignals1266908 +Ref: qSearch memory1269384 +Ref: QStartNoAckMode1269882 +Ref: qSupported1270412 +Ref: multiprocess extensions1280229 +Ref: install tracepoint in tracing1282258 +Ref: qXfer read1285276 +Ref: qXfer auxiliary vector read1285770 +Ref: qXfer target description read1286119 +Ref: qXfer library list read1286563 +Ref: qXfer svr4 library list read1287218 +Ref: qXfer memory map read1287853 +Ref: qXfer sdata read1288239 +Ref: qXfer siginfo read1288703 +Ref: qXfer spu read1289099 +Ref: qXfer threads read1289622 +Ref: qXfer traceframe info read1290024 +Ref: qXfer unwind info block1290440 +Ref: qXfer fdpic loadmap read1290672 +Ref: qXfer osdata read1291087 +Ref: qXfer write1292289 +Ref: qXfer siginfo write1292846 +Ref: qXfer spu write1293242 +Ref: General Query Packets-Footnote-11295329 +Node: Architecture-Specific Protocol Details1295656 +Node: ARM-Specific Protocol Details1296165 +Node: ARM Breakpoint Kinds1296413 +Node: MIPS-Specific Protocol Details1296745 +Node: MIPS Register packet Format1297028 +Node: MIPS Breakpoint Kinds1297957 +Node: Tracepoint Packets1298376 +Ref: QTEnable1307369 +Ref: QTDisable1307565 +Ref: qTfSTM1313089 +Ref: qTsSTM1313089 +Ref: qTSTMat1314127 +Node: Host I/O Packets1317055 +Node: Interrupts1321673 +Node: Notification Packets1323576 +Node: Remote Non-Stop1325847 +Node: Packet Acknowledgment1330106 +Node: Examples1332221 +Node: File-I/O Remote Protocol Extension1332847 +Node: File-I/O Overview1333309 +Node: Protocol Basics1335506 +Node: The F Request Packet1337738 +Node: The F Reply Packet1338639 +Node: The Ctrl-C Message1339557 +Node: Console I/O1341186 +Node: List of Supported Calls1342403 +Node: open1342765 +Node: close1345259 +Node: read1345641 +Node: write1346248 +Node: lseek1347015 +Node: rename1347893 +Node: unlink1349289 +Node: stat/fstat1350228 +Node: gettimeofday1351115 +Node: isatty1351550 +Node: system1352146 +Node: Protocol-specific Representation of Datatypes1353688 +Node: Integral Datatypes1354065 +Node: Pointer Values1354872 +Node: Memory Transfer1355580 +Node: struct stat1356200 +Node: struct timeval1358402 +Node: Constants1358919 +Node: Open Flags1359368 +Node: mode_t Values1359709 +Node: Errno Values1360201 +Node: Lseek Flags1361012 +Node: Limits1361197 +Node: File-I/O Examples1361557 +Node: Library List Format1362673 +Node: Library List Format for SVR4 Targets1365456 +Node: Memory Map Format1367926 +Node: Thread List Format1370503 +Node: Traceframe Info Format1371321 +Node: Agent Expressions1372778 +Node: General Bytecode Design1375599 +Node: Bytecode Descriptions1380399 +Node: Using Agent Expressions1393835 +Node: Varying Target Capabilities1395813 +Node: Rationale1396975 +Node: Target Descriptions1404361 +Node: Retrieving Descriptions1406237 +Node: Target Description Format1407322 +Node: Predefined Target Types1416371 +Node: Standard Target Features1417756 +Node: ARM Features1419546 +Node: i386 Features1421038 +Node: MIPS Features1422142 +Node: M68K Features1423326 +Node: PowerPC Features1423989 +Node: TIC6x Features1425296 +Node: Operating System Information1425845 +Node: Process list1426683 +Node: Trace File Format1427745 +Node: Index Section Format1429739 +Node: Copying1437367 +Node: GNU Free Documentation License1474957 +Node: Concept Index1500123 +Node: Command and Variable Index1616921  End Tag Table diff --git a/gdb/doc/gdb.info-1 b/gdb/doc/gdb.info-1 index 46012f3..0e46981 100644 --- a/gdb/doc/gdb.info-1 +++ b/gdb/doc/gdb.info-1 @@ -23,7 +23,7 @@ developing GNU and promoting software freedom." This file documents the GNU debugger GDB. This is the Tenth Edition, of `Debugging with GDB: the GNU -Source-Level Debugger' for GDB (GDB) Version 7.5. +Source-Level Debugger' for GDB (GDB) Version 7.5.1. Copyright (C) 1988, 1989, 1990, 1991, 1992, 1993, 1994, 1995, 1996, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, @@ -48,7 +48,7 @@ Debugging with GDB This file describes GDB, the GNU symbolic debugger. - This is the Tenth Edition, for GDB (GDB) Version 7.5. + This is the Tenth Edition, for GDB (GDB) Version 7.5.1. Copyright (C) 1988-2012 Free Software Foundation, Inc. @@ -496,7 +496,7 @@ Let us use GDB to try to see what is going on. There is absolutely no warranty for GDB; type "show warranty" for details. - GDB 7.5, Copyright 1999 Free Software Foundation, Inc... + GDB 7.5.1, Copyright 1999 Free Software Foundation, Inc... (gdb) GDB reads only enough symbol data to know where to find the rest when diff --git a/gdb/doc/gdb.info-2 b/gdb/doc/gdb.info-2 index 878d95a..8360468 100644 --- a/gdb/doc/gdb.info-2 +++ b/gdb/doc/gdb.info-2 @@ -23,7 +23,7 @@ developing GNU and promoting software freedom." This file documents the GNU debugger GDB. This is the Tenth Edition, of `Debugging with GDB: the GNU -Source-Level Debugger' for GDB (GDB) Version 7.5. +Source-Level Debugger' for GDB (GDB) Version 7.5.1. Copyright (C) 1988, 1989, 1990, 1991, 1992, 1993, 1994, 1995, 1996, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, diff --git a/gdb/doc/gdb.info-3 b/gdb/doc/gdb.info-3 index 5a20e5a..d5d80da 100644 --- a/gdb/doc/gdb.info-3 +++ b/gdb/doc/gdb.info-3 @@ -23,7 +23,7 @@ developing GNU and promoting software freedom." This file documents the GNU debugger GDB. This is the Tenth Edition, of `Debugging with GDB: the GNU -Source-Level Debugger' for GDB (GDB) Version 7.5. +Source-Level Debugger' for GDB (GDB) Version 7.5.1. Copyright (C) 1988, 1989, 1990, 1991, 1992, 1993, 1994, 1995, 1996, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, diff --git a/gdb/doc/gdb.info-4 b/gdb/doc/gdb.info-4 index 0ecc602..e53a5c0 100644 --- a/gdb/doc/gdb.info-4 +++ b/gdb/doc/gdb.info-4 @@ -23,7 +23,7 @@ developing GNU and promoting software freedom." This file documents the GNU debugger GDB. This is the Tenth Edition, of `Debugging with GDB: the GNU -Source-Level Debugger' for GDB (GDB) Version 7.5. +Source-Level Debugger' for GDB (GDB) Version 7.5.1. Copyright (C) 1988, 1989, 1990, 1991, 1992, 1993, 1994, 1995, 1996, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, @@ -59,6 +59,13 @@ in all of the directories as specified below. Note that loading of this script file also requires accordingly configured `auto-load safe-path' (*note Auto-loading safe path::). + For object files using `.exe' suffix GDB tries to load first the +scripts normally according to its `.exe' filename. But if no scripts +are found GDB also tries script filenames matching the object file +without its `.exe' suffix. This `.exe' stripping is case insensitive +and it is attempted on any platform. This makes the script filenames +compatible between Unix and MS-Windows hosts. + `set auto-load scripts-directory [DIRECTORIES]' Control GDB auto-loaded scripts location. Multiple directory entries may be delimited by the host platform path separator in use @@ -8737,7 +8744,7 @@ and TeX (or `texi2roff') to typeset the printed version. GDB includes an already formatted copy of the on-line Info version of this manual in the `gdb' subdirectory. The main Info file is -`gdb-7.5/gdb/gdb.info', and it refers to subordinate files matching +`gdb-7.5.1/gdb/gdb.info', and it refers to subordinate files matching `gdb.info*' in the same directory. If necessary, you can print out these files, or read them with any editor; but they are easier to read using the `info' subsystem in GNU Emacs or the standalone `info' @@ -8747,8 +8754,8 @@ program, available as part of the GNU Texinfo distribution. Info formatting programs, such as `texinfo-format-buffer' or `makeinfo'. If you have `makeinfo' installed, and are in the top level GDB -source directory (`gdb-7.5', in the case of version 7.5), you can make -the Info file by typing: +source directory (`gdb-7.5.1', in the case of version 7.5.1), you can +make the Info file by typing: cd gdb make gdb.info @@ -8773,7 +8780,7 @@ format. On its own, TeX cannot either read or typeset a Texinfo file. If you have TeX and a DVI printer program installed, you can typeset and print this manual. First switch to the `gdb' subdirectory of the -main source directory (for example, to `gdb-7.5/gdb') and type: +main source directory (for example, to `gdb-7.5.1/gdb') and type: make gdb.dvi @@ -8781,7 +8788,7 @@ main source directory (for example, to `gdb-7.5/gdb') and type: ---------- Footnotes ---------- - (1) In `gdb-7.5/gdb/refcard.ps' of the version 7.5 release. + (1) In `gdb-7.5.1/gdb/refcard.ps' of the version 7.5.1 release.  File: gdb.info, Node: Installing GDB, Next: Maintenance Commands, Prev: Formatting Documentation, Up: Top diff --git a/gdb/doc/gdb.info-5 b/gdb/doc/gdb.info-5 index 41c2d69..bd33722 100644 --- a/gdb/doc/gdb.info-5 +++ b/gdb/doc/gdb.info-5 @@ -23,7 +23,7 @@ developing GNU and promoting software freedom." This file documents the GNU debugger GDB. This is the Tenth Edition, of `Debugging with GDB: the GNU -Source-Level Debugger' for GDB (GDB) Version 7.5. +Source-Level Debugger' for GDB (GDB) Version 7.5.1. Copyright (C) 1988, 1989, 1990, 1991, 1992, 1993, 1994, 1995, 1996, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, @@ -54,39 +54,39 @@ preparing GDB for installation; you can then use `make' to build the in a single directory, whose name is usually composed by appending the version number to `gdb'. - For example, the GDB version 7.5 distribution is in the `gdb-7.5' -directory. That directory contains: + For example, the GDB version 7.5.1 distribution is in the +`gdb-7.5.1' directory. That directory contains: -`gdb-7.5/configure (and supporting files)' +`gdb-7.5.1/configure (and supporting files)' script for configuring GDB and all its supporting libraries -`gdb-7.5/gdb' +`gdb-7.5.1/gdb' the source specific to GDB itself -`gdb-7.5/bfd' +`gdb-7.5.1/bfd' source for the Binary File Descriptor library -`gdb-7.5/include' +`gdb-7.5.1/include' GNU include files -`gdb-7.5/libiberty' +`gdb-7.5.1/libiberty' source for the `-liberty' free software library -`gdb-7.5/opcodes' +`gdb-7.5.1/opcodes' source for the library of opcode tables and disassemblers -`gdb-7.5/readline' +`gdb-7.5.1/readline' source for the GNU command-line interface -`gdb-7.5/glob' +`gdb-7.5.1/glob' source for the GNU filename pattern-matching subroutine -`gdb-7.5/mmalloc' +`gdb-7.5.1/mmalloc' source for the GNU memory-mapped malloc package The simplest way to configure and build GDB is to run `configure' from the `gdb-VERSION-NUMBER' source directory, which in this example -is the `gdb-7.5' directory. +is the `gdb-7.5.1' directory. First switch to the `gdb-VERSION-NUMBER' source directory if you are not already in it; then run `configure'. Pass the identifier for the @@ -94,7 +94,7 @@ platform on which GDB will run as an argument. For example: - cd gdb-7.5 + cd gdb-7.5.1 ./configure HOST make @@ -115,8 +115,8 @@ you may need to run `sh' on it explicitly: sh configure HOST If you run `configure' from a directory that contains source -directories for multiple libraries or programs, such as the `gdb-7.5' -source directory for version 7.5, `configure' creates configuration +directories for multiple libraries or programs, such as the `gdb-7.5.1' +source directory for version 7.5.1, `configure' creates configuration files for every directory level underneath (unless you tell it not to, with the `--norecursion' option). @@ -157,13 +157,13 @@ directory. If the path to `configure' would be the same as the argument to `--srcdir', you can leave out the `--srcdir' option; it is assumed.) - For example, with version 7.5, you can build GDB in a separate + For example, with version 7.5.1, you can build GDB in a separate directory for a Sun 4 like this: - cd gdb-7.5 + cd gdb-7.5.1 mkdir ../gdb-sun4 cd ../gdb-sun4 - ../gdb-7.5/configure sun4 + ../gdb-7.5.1/configure sun4 make When `configure' builds a configuration using a remote source @@ -174,7 +174,7 @@ directory `gdb-sun4/libiberty', and GDB itself in `gdb-sun4/gdb'. Make sure that your path to the `configure' script has just one instance of `gdb' in it. If your path to `configure' looks like -`../gdb-7.5/gdb/configure', you are configuring only one subdirectory +`../gdb-7.5.1/gdb/configure', you are configuring only one subdirectory of GDB, not the whole package. This leads to build errors about missing include files such as `bfd/bfd.h'. @@ -190,9 +190,9 @@ called `configure' (or one of its subdirectories). The `Makefile' that `configure' generates in each source directory also runs recursively. If you type `make' in a source directory such -as `gdb-7.5' (or in a separate configured directory configured with -`--srcdir=DIRNAME/gdb-7.5'), you will build all the required libraries, -and then build GDB. +as `gdb-7.5.1' (or in a separate configured directory configured with +`--srcdir=DIRNAME/gdb-7.5.1'), you will build all the required +libraries, and then build GDB. When you have multiple hosts or targets configured in separate directories, you can run `make' on them in parallel (for example, if @@ -236,7 +236,7 @@ you can use it to test your guesses on abbreviations--for example: Invalid configuration `i986v': machine `i986v' not recognized `config.sub' is also distributed in the GDB source directory -(`gdb-7.5', for version 7.5). +(`gdb-7.5.1', for version 7.5.1).  File: gdb.info, Node: Configure Options, Next: System-wide configuration, Prev: Config Names, Up: Installing GDB diff --git a/gdb/doc/gdb.info-6 b/gdb/doc/gdb.info-6 index 3e73bb4..ab52e20 100644 --- a/gdb/doc/gdb.info-6 +++ b/gdb/doc/gdb.info-6 @@ -23,7 +23,7 @@ developing GNU and promoting software freedom." This file documents the GNU debugger GDB. This is the Tenth Edition, of `Debugging with GDB: the GNU -Source-Level Debugger' for GDB (GDB) Version 7.5. +Source-Level Debugger' for GDB (GDB) Version 7.5.1. Copyright (C) 1988, 1989, 1990, 1991, 1992, 1993, 1994, 1995, 1996, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, @@ -3454,7 +3454,7 @@ Command, Variable, and Function Index * set auto-load python-scripts: Python Auto-loading. (line 18) * set auto-load safe-path: Auto-loading safe path. (line 27) -* set auto-load scripts-directory: objfile-gdb.py file. (line 19) +* set auto-load scripts-directory: objfile-gdb.py file. (line 26) * set auto-solib-add: Files. (line 303) * set backtrace: Backtrace. (line 104) * set basenames-may-differ: Files. (line 522) @@ -3671,7 +3671,7 @@ Command, Variable, and Function Index * show auto-load python-scripts: Python Auto-loading. (line 21) * show auto-load safe-path: Auto-loading safe path. (line 41) -* show auto-load scripts-directory: objfile-gdb.py file. (line 43) +* show auto-load scripts-directory: objfile-gdb.py file. (line 50) * show auto-solib-add: Files. (line 320) * show backtrace: Backtrace. (line 111) * show basenames-may-differ: Files. (line 525) diff --git a/gdb/doc/gdb.texinfo b/gdb/doc/gdb.texinfo index 68ea817..a404d42 100644 --- a/gdb/doc/gdb.texinfo +++ b/gdb/doc/gdb.texinfo @@ -25785,6 +25785,13 @@ If this file does not exist, then @value{GDBN} will look for Note that loading of this script file also requires accordingly configured @code{auto-load safe-path} (@pxref{Auto-loading safe path}). +For object files using @file{.exe} suffix @value{GDBN} tries to load first the +scripts normally according to its @file{.exe} filename. But if no scripts are +found @value{GDBN} also tries script filenames matching the object file without +its @file{.exe} suffix. This @file{.exe} stripping is case insensitive and it +is attempted on any platform. This makes the script filenames compatible +between Unix and MS-Windows hosts. + @table @code @anchor{set auto-load scripts-directory} @kindex set auto-load scripts-directory diff --git a/gdb/dwarf2read.c b/gdb/dwarf2read.c index deee5a2..48b8c08 100644 --- a/gdb/dwarf2read.c +++ b/gdb/dwarf2read.c @@ -1691,13 +1691,17 @@ static void dwarf2_locate_sections (bfd *abfd, asection *sectp, void *vnames) { const struct dwarf2_debug_sections *names; + flagword aflag = bfd_get_section_flags (abfd, sectp); if (vnames == NULL) names = &dwarf2_elf_names; else names = (const struct dwarf2_debug_sections *) vnames; - if (section_is_p (sectp->name, &names->info)) + if ((aflag & SEC_HAS_CONTENTS) == 0) + { + } + else if (section_is_p (sectp->name, &names->info)) { dwarf2_per_objfile->info.asection = sectp; dwarf2_per_objfile->info.size = bfd_get_section_size (sectp); @@ -1744,13 +1748,8 @@ dwarf2_locate_sections (bfd *abfd, asection *sectp, void *vnames) } else if (section_is_p (sectp->name, &names->eh_frame)) { - flagword aflag = bfd_get_section_flags (abfd, sectp); - - if (aflag & SEC_HAS_CONTENTS) - { - dwarf2_per_objfile->eh_frame.asection = sectp; - dwarf2_per_objfile->eh_frame.size = bfd_get_section_size (sectp); - } + dwarf2_per_objfile->eh_frame.asection = sectp; + dwarf2_per_objfile->eh_frame.size = bfd_get_section_size (sectp); } else if (section_is_p (sectp->name, &names->ranges)) { diff --git a/gdb/frame.c b/gdb/frame.c index e012f2d..b769873 100644 --- a/gdb/frame.c +++ b/gdb/frame.c @@ -309,7 +309,8 @@ fprint_frame (struct ui_file *file, struct frame_info *fi) static struct frame_info * skip_inlined_frames (struct frame_info *frame) { - while (get_frame_type (frame) == INLINE_FRAME) + while (get_frame_type (frame) == INLINE_FRAME + || get_frame_type (frame) == TAILCALL_FRAME) frame = get_prev_frame (frame); return frame; @@ -814,6 +815,11 @@ frame_pop (struct frame_info *this_frame) if (!prev_frame) error (_("Cannot pop the initial frame.")); + /* Ignore TAILCALL_FRAME type frames, they were executed already before + entering THISFRAME. */ + while (get_frame_type (prev_frame) == TAILCALL_FRAME) + prev_frame = get_prev_frame (prev_frame); + /* Make a copy of all the register values unwound from this frame. Save them in a scratch buffer so that there isn't a race between trying to extract the old values from the current regcache while diff --git a/gdb/gdbserver/ChangeLog b/gdb/gdbserver/ChangeLog index 7fc0588..f741bd6 100644 --- a/gdb/gdbserver/ChangeLog +++ b/gdb/gdbserver/ChangeLog @@ -1,3 +1,12 @@ +2012-09-05 Michael Brandt + + * linux-crisv32-low.c: Fix compile errors. + +2012-08-22 Keith Seitz + + * server.h: Include build-gnulib-gbserver/config.h. + * gdbreplay.c: Likewise. + 2012-08-02 Ulrich Weigand * hostio.c (handle_pread): If pread fails, fall back to attempting diff --git a/gdb/gdbserver/gdbreplay.c b/gdb/gdbserver/gdbreplay.c index bb5202c..5aaa98e 100644 --- a/gdb/gdbserver/gdbreplay.c +++ b/gdb/gdbserver/gdbreplay.c @@ -19,6 +19,8 @@ along with this program. If not, see . */ #include "config.h" +#include "build-gnulib-gdbserver/config.h" + #include #if HAVE_SYS_FILE_H #include diff --git a/gdb/gdbserver/linux-crisv32-low.c b/gdb/gdbserver/linux-crisv32-low.c index 1cc4cd1..d0e2f56 100644 --- a/gdb/gdbserver/linux-crisv32-low.c +++ b/gdb/gdbserver/linux-crisv32-low.c @@ -231,6 +231,7 @@ cris_remove_point (char type, CORE_ADDR addr, int len) unsigned long bp_ctrl; unsigned long start, end; struct regcache *regcache; + unsigned long bp_d_regs[12]; /* Breakpoint/watchpoint types: 0 = memory breakpoint for instructions @@ -259,8 +260,6 @@ cris_remove_point (char type, CORE_ADDR addr, int len) single switch (addr) as there may be several watchpoints with the same start address for example. */ - unsigned long bp_d_regs[12]; - /* Get all range registers to simplify search. */ collect_register_by_name (regcache, "s3", &bp_d_regs[0]); collect_register_by_name (regcache, "s4", &bp_d_regs[1]); @@ -321,8 +320,9 @@ static int cris_stopped_by_watchpoint (void) { unsigned long exs; + struct regcache *regcache = get_thread_regcache (current_inferior, 1); - collect_register_by_name ("exs", &exs); + collect_register_by_name (regcache, "exs", &exs); return (((exs & 0xff00) >> 8) == 0xc); } @@ -331,47 +331,46 @@ static CORE_ADDR cris_stopped_data_address (void) { unsigned long eda; + struct regcache *regcache = get_thread_regcache (current_inferior, 1); - collect_register_by_name ("eda", &eda); + collect_register_by_name (regcache, "eda", &eda); /* FIXME: Possibly adjust to match watched range. */ return eda; } static void -cris_fill_gregset (void *buf) +cris_fill_gregset (struct regcache *regcache, void *buf) { int i; for (i = 0; i < cris_num_regs; i++) { if (cris_regmap[i] != -1) - collect_register (i, ((char *) buf) + cris_regmap[i]); + collect_register (regcache, i, ((char *) buf) + cris_regmap[i]); } } static void -cris_store_gregset (const void *buf) +cris_store_gregset (struct regcache *regcache, const void *buf) { int i; for (i = 0; i < cris_num_regs; i++) { if (cris_regmap[i] != -1) - supply_register (i, ((char *) buf) + cris_regmap[i]); + supply_register (regcache, i, ((char *) buf) + cris_regmap[i]); } } -typedef unsigned long elf_gregset_t[cris_num_regs]; - struct regset_info target_regsets[] = { - { PTRACE_GETREGS, PTRACE_SETREGS, 0, sizeof (elf_gregset_t), + { PTRACE_GETREGS, PTRACE_SETREGS, 0, cris_num_regs * 4, GENERAL_REGS, cris_fill_gregset, cris_store_gregset }, { 0, 0, 0, -1, -1, NULL, NULL } }; struct linux_target_ops the_low_target = { - init_register_crisv32, + init_registers_crisv32, -1, NULL, NULL, diff --git a/gdb/gdbserver/server.h b/gdb/gdbserver/server.h index 02dfa29..40d05a5 100644 --- a/gdb/gdbserver/server.h +++ b/gdb/gdbserver/server.h @@ -21,6 +21,7 @@ #define SERVER_H #include "config.h" +#include "build-gnulib-gdbserver/config.h" #ifdef __MINGW32CE__ #include "wincecompat.h" diff --git a/gdb/i386-tdep.c b/gdb/i386-tdep.c index 6a02906..fd5969d 100644 --- a/gdb/i386-tdep.c +++ b/gdb/i386-tdep.c @@ -7805,9 +7805,6 @@ i386_gdbarch_init (struct gdbarch_info info, struct gdbarch_list *arches) tdep->num_mmx_regs = 8; tdep->num_ymm_regs = 0; - tdep->sp_regnum_from_eax = -1; - tdep->pc_regnum_from_eax = -1; - tdesc_data = tdesc_data_alloc (); set_gdbarch_relocate_instruction (gdbarch, i386_relocate_instruction); @@ -7852,14 +7849,6 @@ i386_gdbarch_init (struct gdbarch_info info, struct gdbarch_list *arches) /* Support dword pseudo-register if it hasn't been disabled. */ tdep->eax_regnum = ymm0_regnum; ymm0_regnum += tdep->num_dword_regs; - if (tdep->sp_regnum_from_eax != -1) - set_gdbarch_sp_regnum (gdbarch, - (tdep->eax_regnum - + tdep->sp_regnum_from_eax)); - if (tdep->pc_regnum_from_eax != -1) - set_gdbarch_pc_regnum (gdbarch, - (tdep->eax_regnum - + tdep->pc_regnum_from_eax)); } else tdep->eax_regnum = -1; diff --git a/gdb/i386-tdep.h b/gdb/i386-tdep.h index 76afdce..5f233f5 100644 --- a/gdb/i386-tdep.h +++ b/gdb/i386-tdep.h @@ -149,14 +149,6 @@ struct gdbarch_tdep of pseudo dword register support. */ int eax_regnum; - /* Register number for SP, relative to %eax. Set this to -1 to - indicate the absence of pseudo SP register support. */ - int sp_regnum_from_eax; - - /* Register number for PC, relative to %eax. Set this to -1 to - indicate the absence of pseudo PC register support. */ - int pc_regnum_from_eax; - /* Number of core registers. */ int num_core_regs; diff --git a/gdb/infcmd.c b/gdb/infcmd.c index 475ac90..7e31600 100644 --- a/gdb/infcmd.c +++ b/gdb/infcmd.c @@ -1777,6 +1777,11 @@ finish_command (char *arg, int from_tty) return; } + /* Ignore TAILCALL_FRAME type frames, they were executed already before + entering THISFRAME. */ + while (get_frame_type (frame) == TAILCALL_FRAME) + frame = get_prev_frame (frame); + /* Find the function we will return from. */ function = find_pc_function (get_frame_pc (get_selected_frame (NULL))); diff --git a/gdb/infrun.c b/gdb/infrun.c index 11f981f..d443ae7 100644 --- a/gdb/infrun.c +++ b/gdb/infrun.c @@ -4896,14 +4896,22 @@ process_event_stop_test: if (execution_direction == EXEC_REVERSE) { - struct symtab_and_line sr_sal; - - /* Normal function call return (static or dynamic). */ - init_sal (&sr_sal); - sr_sal.pc = ecs->stop_func_start; - sr_sal.pspace = get_frame_program_space (frame); - insert_step_resume_breakpoint_at_sal (gdbarch, - sr_sal, null_frame_id); + /* If we're already at the start of the function, we've either + just stepped backward into a single instruction function, + or stepped back out of a signal handler to the first instruction + of the function. Just keep going, which will single-step back + to the caller. */ + if (ecs->stop_func_start != stop_pc) + { + struct symtab_and_line sr_sal; + + /* Normal function call return (static or dynamic). */ + init_sal (&sr_sal); + sr_sal.pc = ecs->stop_func_start; + sr_sal.pspace = get_frame_program_space (frame); + insert_step_resume_breakpoint_at_sal (gdbarch, + sr_sal, null_frame_id); + } } else insert_step_resume_breakpoint_at_caller (frame); @@ -4973,15 +4981,23 @@ process_event_stop_test: if (execution_direction == EXEC_REVERSE) { - /* Set a breakpoint at callee's start address. - From there we can step once and be back in the caller. */ - struct symtab_and_line sr_sal; + /* If we're already at the start of the function, we've either just + stepped backward into a single instruction function without line + number info, or stepped back out of a signal handler to the first + instruction of the function without line number info. Just keep + going, which will single-step back to the caller. */ + if (ecs->stop_func_start != stop_pc) + { + /* Set a breakpoint at callee's start address. + From there we can step once and be back in the caller. */ + struct symtab_and_line sr_sal; - init_sal (&sr_sal); - sr_sal.pc = ecs->stop_func_start; - sr_sal.pspace = get_frame_program_space (frame); - insert_step_resume_breakpoint_at_sal (gdbarch, - sr_sal, null_frame_id); + init_sal (&sr_sal); + sr_sal.pc = ecs->stop_func_start; + sr_sal.pspace = get_frame_program_space (frame); + insert_step_resume_breakpoint_at_sal (gdbarch, + sr_sal, null_frame_id); + } } else /* Set a breakpoint at callee's return address (the address diff --git a/gdb/linespec.c b/gdb/linespec.c index c9b7ecc..6832999 100644 --- a/gdb/linespec.c +++ b/gdb/linespec.c @@ -286,6 +286,11 @@ struct ls_parser /* Is the entire linespec quote-enclosed? */ int is_quote_enclosed; + /* Is a keyword syntactically valid at this point? + In, e.g., "break thread thread 1", the leading "keyword" must not + be interpreted as such. */ + int keyword_ok; + /* The state of the parse. */ struct linespec_state state; #define PARSER_STATE(PPTR) (&(PPTR)->state) @@ -607,6 +612,10 @@ linespec_lexer_lex_string (linespec_parser *parser) if (isspace (*PARSER_STREAM (parser))) { p = skip_spaces (PARSER_STREAM (parser)); + /* When we get here we know we've found something followed by + a space (we skip over parens and templates below). + So if we find a keyword now, we know it is a keyword and not, + say, a function name. */ if (linespec_lexer_lex_keyword (p) != NULL) { LS_TOKEN_STOKEN (token).ptr = start; @@ -716,8 +725,10 @@ linespec_lexer_lex_one (linespec_parser *parser) /* Skip any whitespace. */ PARSER_STREAM (parser) = skip_spaces (PARSER_STREAM (parser)); - /* Check for a keyword. */ - keyword = linespec_lexer_lex_keyword (PARSER_STREAM (parser)); + /* Check for a keyword, they end the linespec. */ + keyword = NULL; + if (parser->keyword_ok) + keyword = linespec_lexer_lex_keyword (PARSER_STREAM (parser)); if (keyword != NULL) { parser->lexer.current.type = LSTOKEN_KEYWORD; @@ -2018,6 +2029,10 @@ parse_linespec (linespec_parser *parser, char **argptr) } } + /* A keyword at the start cannot be interpreted as such. + Consider "b thread thread 42". */ + parser->keyword_ok = 0; + parser->lexer.saved_arg = *argptr; parser->lexer.stream = argptr; file_exception.reason = 0; @@ -2092,6 +2107,9 @@ parse_linespec (linespec_parser *parser, char **argptr) else if (token.type != LSTOKEN_STRING && token.type != LSTOKEN_NUMBER) unexpected_linespec_error (parser); + /* Now we can recognize keywords. */ + parser->keyword_ok = 1; + /* Shortcut: If the next token is not LSTOKEN_COLON, we know that this token cannot represent a filename. */ token = linespec_lexer_peek_token (parser); diff --git a/gdb/main.c b/gdb/main.c index d075694..976f8ae 100644 --- a/gdb/main.c +++ b/gdb/main.c @@ -1083,10 +1083,6 @@ Options:\n\n\ "), stream); #endif fputs_unfiltered (_("\ - --use-deprecated-index-sections\n\ - Do not reject deprecated .gdb_index sections.\n\ -"), stream); - fputs_unfiltered (_("\ --version Print version information and then exit.\n\ -w Use a window interface.\n\ --write Set writing into executable and core files.\n\ diff --git a/gdb/po/gdb.pot b/gdb/po/gdb.pot index b0693bd..c882586 100644 --- a/gdb/po/gdb.pot +++ b/gdb/po/gdb.pot @@ -8,7 +8,7 @@ msgid "" msgstr "" "Project-Id-Version: PACKAGE VERSION\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2012-08-17 17:36+0000\n" +"POT-Creation-Date: 2012-11-29 09:55+0000\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: FULL NAME \n" "Language-Team: LANGUAGE \n" @@ -102,7 +102,7 @@ msgid "No definition of \"%s\" found." msgstr "" #: ada-exp.y:1399 c-exp.y:886 c-exp.y:938 cli/cli-cmds.c:919 f-exp.y:525 -#: go-exp.y:628 linespec.c:1371 linespec.c:2881 objc-exp.y:734 objc-exp.y:788 +#: go-exp.y:628 linespec.c:1382 linespec.c:2899 objc-exp.y:734 objc-exp.y:788 #: p-exp.y:722 p-exp.y:791 source.c:177 symtab.c:3238 msgid "No symbol table is loaded. Use the \"file\" command." msgstr "" @@ -238,7 +238,7 @@ msgstr "" msgid "Request to select 0 symbols!" msgstr "" -#: ada-lang.c:3541 linespec.c:1278 +#: ada-lang.c:3541 linespec.c:1289 msgid "" "canceled because the command is ambiguous\n" "See set/show multiple-symbol." @@ -287,7 +287,7 @@ msgstr "" msgid "[%d] %s at ?\n" msgstr "" -#: ada-lang.c:3657 ada-lang.c:3670 linespec.c:1306 +#: ada-lang.c:3657 ada-lang.c:3670 linespec.c:1317 msgid "one or more choice numbers" msgstr "" @@ -1484,7 +1484,7 @@ msgid "Unexpected error clearing breakpoint" msgstr "" #: arm-linux-tdep.c:1129 i386-tdep.c:3512 i386-tdep.c:3601 i386-tdep.c:3618 -#: ppc-linux-tdep.c:1335 stap-probe.c:487 +#: ppc-linux-tdep.c:1336 stap-probe.c:487 #, possible-c-format msgid "Invalid register name `%s' on expression `%s'." msgstr "" @@ -1851,206 +1851,226 @@ msgid "" "Process record doesnt support thumb32 instruction 0x%0x at address %s.\n" msgstr "" -#: auto-load.c:57 +#: auto-load.c:58 #, possible-c-format msgid "Debugging output for files of 'set auto-load ...' is %s.\n" msgstr "" -#: auto-load.c:75 +#: auto-load.c:76 #, possible-c-format msgid "Auto-loading of canned sequences of commands scripts is %s.\n" msgstr "" -#: auto-load.c:107 +#: auto-load.c:108 #, possible-c-format msgid "Auto-loading of .gdbinit script from current directory is %s.\n" msgstr "" -#: auto-load.c:136 +#: auto-load.c:137 #, possible-c-format msgid "List of directories from which to load auto-loaded scripts is %s.\n" msgstr "" -#: auto-load.c:167 +#: auto-load.c:168 #, possible-c-format msgid "auto-load: Expanded $-variables to \"%s\".\n" msgstr "" -#: auto-load.c:186 +#: auto-load.c:187 #, possible-c-format msgid "auto-load: Updating directories of \"%s\".\n" msgstr "" -#: auto-load.c:209 +#: auto-load.c:210 #, possible-c-format msgid "auto-load: Using directory \"%s\".\n" msgstr "" -#: auto-load.c:213 +#: auto-load.c:214 #, possible-c-format msgid "auto-load: Resolved directory \"%s\" as \"%s\".\n" msgstr "" -#: auto-load.c:228 +#: auto-load.c:229 #, possible-c-format msgid "auto-load: And canonicalized as \"%s\".\n" msgstr "" -#: auto-load.c:272 +#: auto-load.c:273 msgid "Auto-load files are safe to load from any directory.\n" msgstr "" -#: auto-load.c:275 +#: auto-load.c:276 #, possible-c-format msgid "List of directories from which it is safe to auto-load files is %s.\n" msgstr "" -#: auto-load.c:289 +#: auto-load.c:290 msgid "" "Directory argument required.\n" "Use 'set auto-load safe-path /' for disabling the auto-load safe-path " "security." msgstr "" -#: auto-load.c:311 +#: auto-load.c:312 #, possible-c-format msgid "auto-load: Matching file \"%s\" to pattern \"%s\"\n" msgstr "" -#: auto-load.c:329 +#: auto-load.c:330 msgid "auto-load: Matched - empty pattern\n" msgstr "" -#: auto-load.c:344 +#: auto-load.c:345 #, possible-c-format msgid "auto-load: Not matched - pattern \"%s\".\n" msgstr "" -#: auto-load.c:353 +#: auto-load.c:354 #, possible-c-format msgid "auto-load: Matched - file \"%s\" to pattern \"%s\".\n" msgstr "" -#: auto-load.c:407 +#: auto-load.c:408 #, possible-c-format msgid "auto-load: Resolved file \"%s\" as \"%s\".\n" msgstr "" -#: auto-load.c:422 +#: auto-load.c:423 #, possible-c-format msgid "auto-load: File \"%s\" matches directory \"%s\".\n" msgstr "" -#: auto-load.c:469 +#: auto-load.c:471 #, possible-c-format msgid "" "File \"%s\" auto-loading has been declined by your `auto-load safe-path' set " "to \"%s\"." msgstr "" -#: auto-load.c:490 +#: auto-load.c:485 +#, possible-c-format +msgid "" +"To enable execution of this file add\n" +"\tadd-auto-load-safe-path %s\n" +"line to your configuration file \"%s\".\n" +"To completely disable this security protection add\n" +"\tset auto-load safe-path /\n" +"line to your configuration file \"%s\".\n" +"For more information about this security protection see the\n" +"\"Auto-loading safe path\" section in the GDB manual. E.g., run from the " +"shell:\n" +"\tinfo \"(gdb)Auto-loading safe path\"\n" +msgstr "" + +#: auto-load.c:516 #, possible-c-format msgid "" "auto-load: Loading canned sequences of commands script \"%s\" for objfile \"%" "s\".\n" msgstr "" -#: auto-load.c:721 auto-load.c:752 +#: auto-load.c:745 auto-load.c:776 #, possible-c-format msgid "auto-load: Attempted file \"%s\" %s.\n" msgstr "" -#: auto-load.c:722 auto-load.c:755 +#: auto-load.c:746 auto-load.c:779 msgid "exists" msgstr "" -#: auto-load.c:722 auto-load.c:755 +#: auto-load.c:746 auto-load.c:779 msgid "does not exist" msgstr "" -#: auto-load.c:737 +#: auto-load.c:761 #, possible-c-format msgid "auto-load: Searching 'set auto-load scripts-directory' path \"%s\".\n" msgstr "" -#: auto-load.c:901 solib.c:886 solib.c:968 xcoffsolib.c:113 +#: auto-load.c:828 +#, possible-c-format +msgid "auto-load: Stripped .exe suffix, retrying with \"%s\".\n" +msgstr "" + +#: auto-load.c:963 solib.c:886 solib.c:968 xcoffsolib.c:113 #, possible-c-format msgid "Invalid regexp: %s" msgstr "" -#: auto-load.c:978 +#: auto-load.c:1040 msgid "Local .gdbinit file was not found.\n" msgstr "" -#: auto-load.c:980 +#: auto-load.c:1042 #, possible-c-format msgid "Local .gdbinit file \"%s\" has been loaded.\n" msgstr "" -#: auto-load.c:983 +#: auto-load.c:1045 #, possible-c-format msgid "Local .gdbinit file \"%s\" has not been loaded.\n" msgstr "" -#: auto-load.c:1020 +#: auto-load.c:1082 msgid "" "Valid is only global 'set auto-load no'; otherwise check the auto-load sub-" "commands." msgstr "" -#: auto-load.c:1039 +#: auto-load.c:1101 msgid "" "Auto-loading specific settings.\n" "Configure various auto-load-specific variables such as\n" "automatic loading of Python scripts." msgstr "" -#: auto-load.c:1066 +#: auto-load.c:1128 msgid "" "Show auto-loading specific settings.\n" "Show configuration of various auto-load-specific variables such as\n" "automatic loading of Python scripts." msgstr "" -#: auto-load.c:1117 +#: auto-load.c:1179 msgid "" "Print current status of auto-loaded files.\n" "Print whether various files like Python scripts or .gdbinit files have been\n" "found and/or loaded." msgstr "" -#: auto-load.c:1140 +#: auto-load.c:1203 msgid "Enable or disable auto-loading of canned sequences of commands scripts." msgstr "" -#: auto-load.c:1141 +#: auto-load.c:1204 msgid "" "Show whether auto-loading of canned sequences of commands scripts is enabled." msgstr "" -#: auto-load.c:1143 +#: auto-load.c:1206 msgid "" "If enabled, canned sequences of commands are loaded when the debugger reads\n" "an executable or shared library.\n" "This options has security implications for untrusted inferiors." msgstr "" -#: auto-load.c:1152 +#: auto-load.c:1215 msgid "" "Print the list of automatically loaded sequences of commands.\n" "Usage: info auto-load gdb-scripts [REGEXP]" msgstr "" -#: auto-load.c:1157 +#: auto-load.c:1220 msgid "Enable or disable auto-loading of .gdbinit script in current directory." msgstr "" -#: auto-load.c:1158 +#: auto-load.c:1221 msgid "" "Show whether auto-loading .gdbinit script in current directory is enabled." msgstr "" -#: auto-load.c:1160 +#: auto-load.c:1223 msgid "" "If enabled, canned sequences of commands are loaded when debugger starts\n" "from .gdbinit file in current directory. Such files are deprecated,\n" @@ -2058,53 +2078,71 @@ msgid "" "This options has security implications for untrusted inferiors." msgstr "" -#: auto-load.c:1170 +#: auto-load.c:1233 msgid "" "Print whether current directory .gdbinit file has been loaded.\n" "Usage: info auto-load local-gdbinit" msgstr "" -#: auto-load.c:1176 -msgid "Set the list of directories from which to load auto-loaded scripts." +#: auto-load.c:1240 +#, possible-c-format +msgid "" +"Automatically loaded Python scripts (named OBJFILE%s) and GDB scripts\n" +"(named OBJFILE%s) are located in one of the directories listed by this\n" +"option.\n" +"%s" msgstr "" -#: auto-load.c:1177 -msgid "Show the list of directories from which to load auto-loaded scripts." +#: auto-load.c:1247 +#, possible-c-format +msgid "" +"Automatically loaded GDB scripts (named OBJFILE%s) are located in one\n" +"of the directories listed by this option.\n" +"%s" msgstr "" -#: auto-load.c:1178 +#: auto-load.c:1253 msgid "" -"Automatically loaded Python scripts and GDB scripts are located in one of " -"the\n" -"directories listed by this option. This option is ignored for the kinds of\n" -"scripts having 'set auto-load ... off'. Directories listed here need to be\n" -"present also in the 'set auto-load safe-path' option." +"This option is ignored for the kinds of scripts having 'set auto-load ... " +"off'.\n" +"Directories listed here need to be present also in the 'set auto-load safe-" +"path'\n" +"option." +msgstr "" + +#: auto-load.c:1260 +msgid "Set the list of directories from which to load auto-loaded scripts." +msgstr "" + +#: auto-load.c:1261 +msgid "Show the list of directories from which to load auto-loaded scripts." msgstr "" -#: auto-load.c:1190 -msgid "Set the list of directories from which it is safe to auto-load files." +#: auto-load.c:1272 +msgid "Set the list of files and directories that are safe for auto-loading." msgstr "" -#: auto-load.c:1191 -msgid "Show the list of directories from which it is safe to auto-load files." +#: auto-load.c:1273 +msgid "Show the list of files and directories that are safe for auto-loading." msgstr "" -#: auto-load.c:1192 +#: auto-load.c:1274 msgid "" "Various files loaded automatically for the 'set auto-load ...' options must\n" "be located in one of the directories listed by this option. Warning will " "be\n" "printed and file will not be used otherwise.\n" +"You can mix both directory and filename entries.\n" "Setting this parameter to an empty list resets it to its default value.\n" "Setting this parameter to '/' (without the quotes) allows any file\n" -"for the 'set auto-load ...' options. Each directory can be also shell\n" +"for the 'set auto-load ...' options. Each path entry can be also shell\n" "wildcard pattern; '*' does not match directory separator.\n" "This option is ignored for the kinds of files having 'set auto-load ... " "off'.\n" "This options has security implications for untrusted inferiors." msgstr "" -#: auto-load.c:1210 +#: auto-load.c:1293 msgid "" "Add entries to the list of directories from which it is safe to auto-load " "files.\n" @@ -2113,15 +2151,15 @@ msgid "" "access the current full list setting." msgstr "" -#: auto-load.c:1218 +#: auto-load.c:1301 msgid "Set auto-load verifications debugging." msgstr "" -#: auto-load.c:1219 +#: auto-load.c:1302 msgid "Show auto-load verifications debugging." msgstr "" -#: auto-load.c:1220 +#: auto-load.c:1303 msgid "" "When non-zero, debugging output for files of 'set auto-load ...'\n" "is displayed." @@ -3245,7 +3283,7 @@ msgid "" "Use the \"delete\" command to delete unwanted breakpoints." msgstr "" -#: breakpoint.c:9640 linespec.c:1833 +#: breakpoint.c:9640 linespec.c:1844 #, possible-c-format msgid "No line %d in file \"%s\"." msgstr "" @@ -4650,7 +4688,7 @@ msgid "\"info\" must be followed by the name of an info command.\n" msgstr "" #: cli/cli-cmds.c:334 cli/cli-script.c:1520 infcmd.c:1165 infcmd.c:1179 -#: infcmd.c:2319 symfile.c:1086 symfile.c:1254 symfile.c:2401 +#: infcmd.c:2324 symfile.c:1086 symfile.c:1254 symfile.c:2401 #: tracepoint.c:2200 tracepoint.c:2206 msgid "Not confirmed." msgstr "" @@ -5198,22 +5236,22 @@ msgid "" " alias -a set print elms = set print elements" msgstr "" -#: cli/cli-decode.c:1328 +#: cli/cli-decode.c:1331 #, possible-c-format msgid "Undefined %scommand: \"%s\". Try \"help%s%.*s\"." msgstr "" -#: cli/cli-decode.c:1361 +#: cli/cli-decode.c:1364 #, possible-c-format msgid "Lack of needed %scommand" msgstr "" -#: cli/cli-decode.c:1426 +#: cli/cli-decode.c:1429 #, possible-c-format msgid "Ambiguous %scommand \"%s\": %s." msgstr "" -#: cli/cli-decode.c:1760 +#: cli/cli-decode.c:1763 msgid "Invalid command" msgstr "" @@ -5909,27 +5947,76 @@ msgstr "" msgid "warning: process %d is a zombie - the process has already terminated\n" msgstr "" -#: common/linux-ptrace.c:81 +#: common/linux-ptrace.c:83 #, possible-c-format msgid "linux_ptrace_test_ret_to_nx: Cannot mmap: %s" msgstr "" -#: common/linux-ptrace.c:93 +#: common/linux-ptrace.c:95 #, possible-c-format msgid "linux_ptrace_test_ret_to_nx: Cannot fork: %s" msgstr "" -#: common/linux-ptrace.c:100 +#: common/linux-ptrace.c:102 #, possible-c-format msgid "linux_ptrace_test_ret_to_nx: Cannot PTRACE_TRACEME: %s" msgstr "" -#: common/linux-ptrace.c:128 +#: common/linux-ptrace.c:131 +#, possible-c-format +msgid "linux_ptrace_test_ret_to_nx: waitpid returned %ld: %s" +msgstr "" + +#: common/linux-ptrace.c:139 +#, possible-c-format +msgid "linux_ptrace_test_ret_to_nx: WTERMSIG %d is not SIGKILL!" +msgstr "" + +#: common/linux-ptrace.c:142 +msgid "" +"Cannot call inferior functions, Linux kernel PaX protection forbids return " +"to non-executable pages!" +msgstr "" + +#: common/linux-ptrace.c:149 +#, possible-c-format +msgid "linux_ptrace_test_ret_to_nx: status %d is not WIFSTOPPED!" +msgstr "" + +#: common/linux-ptrace.c:157 +#, possible-c-format +msgid "" +"linux_ptrace_test_ret_to_nx: WSTOPSIG %d is neither SIGTRAP nor SIGSEGV!" +msgstr "" + +#: common/linux-ptrace.c:173 +#, possible-c-format +msgid "linux_ptrace_test_ret_to_nx: Cannot PTRACE_PEEKUSER: %s" +msgstr "" + +#: common/linux-ptrace.c:181 #, possible-c-format msgid "linux_ptrace_test_ret_to_nx: Cannot PTRACE_KILL: %s" msgstr "" -#: common/linux-ptrace.c:155 +#: common/linux-ptrace.c:193 +#, possible-c-format +msgid "linux_ptrace_test_ret_to_nx: PTRACE_KILL waitpid returned %ld: %s" +msgstr "" + +#: common/linux-ptrace.c:200 +#, possible-c-format +msgid "linux_ptrace_test_ret_to_nx: PTRACE_KILL status %d is not WIFSIGNALED!" +msgstr "" + +#: common/linux-ptrace.c:222 +#, possible-c-format +msgid "" +"linux_ptrace_test_ret_to_nx: PC %p is neither near return address %p nor is " +"the return instruction %p!" +msgstr "" + +#: common/linux-ptrace.c:226 msgid "" "Cannot call inferior functions, you have broken Linux kernel i386 NX (non-" "executable pages) support!" @@ -8154,44 +8241,44 @@ msgstr "" msgid "invalid attribute class or form for '%s' in '%s'" msgstr "" -#: dwarf2read.c:1791 +#: dwarf2read.c:1790 #, possible-c-format msgid "" "Support for zlib-compressed DWARF data (from '%s') is disabled in this copy " "of GDB" msgstr "" -#: dwarf2read.c:1807 dwarf2read.c:1951 +#: dwarf2read.c:1806 dwarf2read.c:1950 #, possible-c-format msgid "Dwarf Error: Can't read DWARF data from '%s'" msgstr "" -#: dwarf2read.c:1814 +#: dwarf2read.c:1813 #, possible-c-format msgid "Dwarf Error: Corrupt DWARF ZLIB header from '%s'" msgstr "" -#: dwarf2read.c:1839 +#: dwarf2read.c:1838 #, possible-c-format msgid "Dwarf Error: setting up DWARF uncompression in '%s': %d" msgstr "" -#: dwarf2read.c:1845 +#: dwarf2read.c:1844 #, possible-c-format msgid "Dwarf Error: zlib error uncompressing from '%s': %d" msgstr "" -#: dwarf2read.c:1852 +#: dwarf2read.c:1851 #, possible-c-format msgid "Dwarf Error: concluding DWARF uncompression in '%s': %d" msgstr "" -#: dwarf2read.c:2549 +#: dwarf2read.c:2548 #, possible-c-format msgid "Skipping obsolete .gdb_index section in %s." msgstr "" -#: dwarf2read.c:2568 +#: dwarf2read.c:2567 #, possible-c-format msgid "" "Skipping deprecated .gdb_index section in %s.\n" @@ -8199,274 +8286,274 @@ msgid "" "to use the section anyway." msgstr "" -#: dwarf2read.c:3099 +#: dwarf2read.c:3098 #, possible-c-format msgid " Number of unread CUs: %d\n" msgstr "" -#: dwarf2read.c:3449 +#: dwarf2read.c:3448 #, possible-c-format msgid "(Internal error: pc %s in read in CU, but not in symtab.)" msgstr "" -#: dwarf2read.c:3683 +#: dwarf2read.c:3682 msgid "read_comp_unit_head: dwarf from non elf file" msgstr "" -#: dwarf2read.c:3702 +#: dwarf2read.c:3701 #, possible-c-format msgid "" "Dwarf Error: wrong version in compilation unit header (is %d, should be 2, " "3, or 4) [in module %s]" msgstr "" -#: dwarf2read.c:3709 +#: dwarf2read.c:3708 #, possible-c-format msgid "" "Dwarf Error: bad offset (0x%lx) in compilation unit header (offset 0x%lx + " "6) [in module %s]" msgstr "" -#: dwarf2read.c:3718 +#: dwarf2read.c:3717 #, possible-c-format msgid "" "Dwarf Error: bad length (0x%lx) in compilation unit header (offset 0x%lx + " "0) [in module %s]" msgstr "" -#: dwarf2read.c:4050 +#: dwarf2read.c:4049 #, possible-c-format msgid "" "debug type entry at offset 0x%x is duplicate to the entry at offset 0x%x, " "signature 0x%s" msgstr "" -#: dwarf2read.c:4113 +#: dwarf2read.c:4112 msgid "missing `.debug_types' section for DW_FORM_ref_sig8 die" msgstr "" -#: dwarf2read.c:4316 +#: dwarf2read.c:4315 #, possible-c-format msgid "" "Dwarf Error: compilation unit with DW_AT_GNU_dwo_name has children (offset 0x" "%x) [in module %s]" msgstr "" -#: dwarf2read.c:4359 +#: dwarf2read.c:4358 #, possible-c-format msgid "Dwarf Error: missing dwo_id [in module %s]" msgstr "" -#: dwarf2read.c:4377 +#: dwarf2read.c:4376 #, possible-c-format msgid "" "Dwarf Error: CU at offset 0x%x references unknown DWO with ID %s [in module %" "s]" msgstr "" -#: dwarf2read.c:5438 dwarf2read.c:6837 +#: dwarf2read.c:5437 dwarf2read.c:6836 #, possible-c-format msgid "" "Dwarf Error: DW_TAG_imported_unit is not supported in type units [in module %" "s]" msgstr "" -#: dwarf2read.c:5551 +#: dwarf2read.c:5550 #, possible-c-format msgid "unhandled containing DIE tag %d for DIE at %d" msgstr "" -#: dwarf2read.c:5890 dwarf2read.c:12326 +#: dwarf2read.c:5889 dwarf2read.c:12325 msgid "malformed enumerator DIE ignored" msgstr "" -#: dwarf2read.c:5928 +#: dwarf2read.c:5927 #, possible-c-format msgid "Dwarf Error: Could not find abbrev number %d [in module %s]" msgstr "" -#: dwarf2read.c:5983 dwarf2read.c:12553 +#: dwarf2read.c:5982 dwarf2read.c:12552 msgid "ignoring absolute DW_AT_sibling" msgstr "" -#: dwarf2read.c:6061 dwarf2read.c:13035 +#: dwarf2read.c:6060 dwarf2read.c:13034 #, possible-c-format msgid "Dwarf Error: Cannot handle %s in DWARF reader [in module %s]" msgstr "" -#: dwarf2read.c:6106 +#: dwarf2read.c:6105 #, possible-c-format msgid "bug: psymtab for %s is already read in." msgstr "" -#: dwarf2read.c:6113 mdebugread.c:286 +#: dwarf2read.c:6112 mdebugread.c:286 #, possible-c-format msgid "Reading in symbols for %s..." msgstr "" -#: dwarf2read.c:6142 mdebugread.c:299 psymtab.c:98 symfile.c:1141 +#: dwarf2read.c:6141 mdebugread.c:299 psymtab.c:98 symfile.c:1141 msgid "done.\n" msgstr "" -#: dwarf2read.c:6508 +#: dwarf2read.c:6507 #, possible-c-format msgid "Symtab %s has objects from two different Go packages: %s and %s" msgstr "" -#: dwarf2read.c:6936 +#: dwarf2read.c:6935 #, possible-c-format msgid "Tag '%s' has unexpected children" msgstr "" -#: dwarf2read.c:7139 +#: dwarf2read.c:7138 msgid "template parameter missing DW_AT_type" msgstr "" -#: dwarf2read.c:7155 +#: dwarf2read.c:7154 msgid "template parameter missing DW_AT_const_value" msgstr "" -#: dwarf2read.c:7362 +#: dwarf2read.c:7361 #, possible-c-format msgid "" "Computed physname <%s> does not match demangled <%s> (from linkage <%s>) - " "DIE at 0x%x [in module %s]" msgstr "" -#: dwarf2read.c:7412 dwarf2read.c:7508 +#: dwarf2read.c:7411 dwarf2read.c:7507 #, possible-c-format msgid "Tag '%s' has no DW_AT_import" msgstr "" -#: dwarf2read.c:7499 +#: dwarf2read.c:7498 #, possible-c-format msgid "child DW_TAG_imported_declaration expected - DIE at 0x%x [in module %s]" msgstr "" -#: dwarf2read.c:7520 +#: dwarf2read.c:7519 #, possible-c-format msgid "" "child DW_TAG_imported_declaration has unknown imported name - DIE at 0x%x " "[in module %s]" msgstr "" -#: dwarf2read.c:7689 +#: dwarf2read.c:7688 msgid "CU refers to both DW_AT_GNU_macros and DW_AT_macro_info" msgstr "" -#: dwarf2read.c:8010 +#: dwarf2read.c:8009 #, possible-c-format msgid "" "Dwarf Error: debug entry at offset 0x%x is missing its dwo_id [in module %s]" msgstr "" -#: dwarf2read.c:8030 +#: dwarf2read.c:8029 #, possible-c-format msgid "" "debug entry at offset 0x%x is duplicate to the entry at offset 0x%x, dwo_id " "0x%s [in module %s]" msgstr "" -#: dwarf2read.c:8273 +#: dwarf2read.c:8272 #, possible-c-format msgid "Could not find DWO CU referenced by CU at offset 0x%x [in module %s]" msgstr "" -#: dwarf2read.c:8311 +#: dwarf2read.c:8310 #, possible-c-format msgid "Could not find DWO TU referenced by TU at offset 0x%x [in module %s]" msgstr "" -#: dwarf2read.c:8432 +#: dwarf2read.c:8431 #, possible-c-format msgid "DIE 0x%x and its abstract origin 0x%x have different tags" msgstr "" -#: dwarf2read.c:8475 +#: dwarf2read.c:8474 #, possible-c-format msgid "Child DIE 0x%x and its abstract origin 0x%x have different tags" msgstr "" -#: dwarf2read.c:8480 +#: dwarf2read.c:8479 #, possible-c-format msgid "Child DIE 0x%x and its abstract origin 0x%x have different parents" msgstr "" -#: dwarf2read.c:8493 +#: dwarf2read.c:8492 #, possible-c-format msgid "" "Multiple children of DIE 0x%x refer to DIE 0x%x as their abstract origin" msgstr "" -#: dwarf2read.c:8557 +#: dwarf2read.c:8556 #, possible-c-format msgid "missing name for subprogram DIE at %d" msgstr "" -#: dwarf2read.c:8568 +#: dwarf2read.c:8567 #, possible-c-format msgid "cannot get low and high bounds for subprogram DIE at %d" msgstr "" -#: dwarf2read.c:8780 +#: dwarf2read.c:8779 #, possible-c-format msgid "missing DW_AT_low_pc for DW_TAG_GNU_call_site DIE 0x%x [in module %s]" msgstr "" -#: dwarf2read.c:8796 +#: dwarf2read.c:8795 #, possible-c-format msgid "Duplicate PC %s for DW_TAG_GNU_call_site DIE 0x%x [in module %s]" msgstr "" -#: dwarf2read.c:8811 +#: dwarf2read.c:8810 #, possible-c-format msgid "" "Tag %d is not DW_TAG_GNU_call_site_parameter in DW_TAG_GNU_call_site child " "DIE 0x%x [in module %s]" msgstr "" -#: dwarf2read.c:8869 +#: dwarf2read.c:8868 #, possible-c-format msgid "" "Cannot find function owning DW_TAG_GNU_call_site DIE 0x%x [in module %s]" msgstr "" -#: dwarf2read.c:8906 +#: dwarf2read.c:8905 #, possible-c-format msgid "" "DW_AT_GNU_call_site_target target DIE has invalid physname, for referencing " "DIE 0x%x [in module %s]" msgstr "" -#: dwarf2read.c:8919 +#: dwarf2read.c:8918 #, possible-c-format msgid "" "DW_AT_GNU_call_site_target target DIE has invalid low pc, for referencing " "DIE 0x%x [in module %s]" msgstr "" -#: dwarf2read.c:8928 +#: dwarf2read.c:8927 #, possible-c-format msgid "" "DW_TAG_GNU_call_site DW_AT_GNU_call_site_target is neither block nor " "reference, for DIE 0x%x [in module %s]" msgstr "" -#: dwarf2read.c:8968 +#: dwarf2read.c:8967 #, possible-c-format msgid "" "DW_AT_abstract_origin offset is not in CU for DW_TAG_GNU_call_site child DIE " "0x%x [in module %s]" msgstr "" -#: dwarf2read.c:8980 +#: dwarf2read.c:8979 #, possible-c-format msgid "" "No DW_FORM_block* DW_AT_location for DW_TAG_GNU_call_site child DIE 0x%x [in " "module %s]" msgstr "" -#: dwarf2read.c:8998 +#: dwarf2read.c:8997 #, possible-c-format msgid "" "Only single DW_OP_reg or DW_OP_fbreg is supported for DW_FORM_block* " @@ -8474,136 +8561,136 @@ msgid "" "module %s]" msgstr "" -#: dwarf2read.c:9011 +#: dwarf2read.c:9010 #, possible-c-format msgid "" "No DW_FORM_block* DW_AT_GNU_call_site_value for DW_TAG_GNU_call_site child " "DIE 0x%x [in module %s]" msgstr "" -#: dwarf2read.c:9029 +#: dwarf2read.c:9028 #, possible-c-format msgid "" "No DW_FORM_block* DW_AT_GNU_call_site_data_value for DW_TAG_GNU_call_site " "child DIE 0x%x [in module %s]" msgstr "" -#: dwarf2read.c:9073 +#: dwarf2read.c:9072 #, possible-c-format msgid "Offset %d out of bounds for DW_AT_ranges attribute" msgstr "" -#: dwarf2read.c:9127 dwarf2read.c:9443 +#: dwarf2read.c:9126 dwarf2read.c:9442 msgid "Invalid .debug_ranges data (no base address)" msgstr "" -#: dwarf2read.c:9135 dwarf2read.c:9452 +#: dwarf2read.c:9134 dwarf2read.c:9451 msgid "Invalid .debug_ranges data (inverted range)" msgstr "" -#: dwarf2read.c:9411 +#: dwarf2read.c:9410 #, possible-c-format msgid "Offset %lu out of bounds for DW_AT_ranges attribute" msgstr "" -#: dwarf2read.c:9893 +#: dwarf2read.c:9892 #, possible-c-format msgid "unsupported accessibility %d" msgstr "" -#: dwarf2read.c:9905 +#: dwarf2read.c:9904 msgid "unexpected virtuality in component of Ada type" msgstr "" -#: dwarf2read.c:9930 +#: dwarf2read.c:9929 msgid "unexpected member function in Ada type" msgstr "" -#: dwarf2read.c:10013 +#: dwarf2read.c:10012 #, possible-c-format msgid "member function type missing for '%s'" msgstr "" -#: dwarf2read.c:10102 +#: dwarf2read.c:10101 #, possible-c-format msgid "" "Member function \"%s\" (offset %d) is virtual but the vtable offset is not " "specified" msgstr "" -#: dwarf2read.c:10121 +#: dwarf2read.c:10120 msgid "unexpected member functions in Ada type" msgstr "" -#: dwarf2read.c:10464 +#: dwarf2read.c:10463 #, possible-c-format msgid "virtual function table pointer not found when defining class '%s'" msgstr "" -#: dwarf2read.c:10822 +#: dwarf2read.c:10821 msgid "DW_AT_byte_size for array type smaller than the total size of elements" msgstr "" -#: dwarf2read.c:11042 +#: dwarf2read.c:11041 #, possible-c-format msgid "DW_TAG_module has no name, offset 0x%x" msgstr "" -#: dwarf2read.c:11149 +#: dwarf2read.c:11148 #, possible-c-format msgid "invalid pointer size %d" msgstr "" -#: dwarf2read.c:11497 +#: dwarf2read.c:11496 #, possible-c-format msgid "Self-referential DW_TAG_typedef - DIE at 0x%x [in module %s]" msgstr "" -#: dwarf2read.c:11534 +#: dwarf2read.c:11533 msgid "DW_AT_name missing from DW_TAG_base_type" msgstr "" -#: dwarf2read.c:11587 +#: dwarf2read.c:11586 #, possible-c-format msgid "unsupported DW_AT_encoding: '%s'" msgstr "" -#: dwarf2read.c:11662 +#: dwarf2read.c:11661 #, possible-c-format msgid "Missing DW_AT_lower_bound - DIE at 0x%x [in module %s]" msgstr "" -#: dwarf2read.c:11893 +#: dwarf2read.c:11892 #, possible-c-format msgid "Dwarf Error: could not find abbrev number %d [in module %s]" msgstr "" -#: dwarf2read.c:12310 +#: dwarf2read.c:12309 #, possible-c-format msgid "" "DW_TAG_typedef has childen - GCC PR debug/47510 bug - DIE at 0x%x [in module " "%s]" msgstr "" -#: dwarf2read.c:12619 +#: dwarf2read.c:12618 #, possible-c-format msgid "DW_AT_low_pc %s is zero for DIE at 0x%x [in module %s]" msgstr "" -#: dwarf2read.c:12630 +#: dwarf2read.c:12629 #, possible-c-format msgid "" "DW_AT_low_pc %s is not < DW_AT_high_pc %s for DIE at 0x%x [in module %s]" msgstr "" -#: dwarf2read.c:12684 +#: dwarf2read.c:12683 #, possible-c-format msgid "" "Dwarf Error: Type Unit at offset 0x%lx contains external reference to offset " "0x%lx [in module %s].\n" msgstr "" -#: dwarf2read.c:12718 +#: dwarf2read.c:12717 #, possible-c-format msgid "could not find partial DIE 0x%x in cache [from module %s]\n" msgstr "" @@ -8612,110 +8699,110 @@ msgstr "" #. Later we can turn this into a complaint. #. For now flag a hard error. #. Later we can turn this into a complaint if warranted. -#: dwarf2read.c:13009 dwarf2read.c:13021 +#: dwarf2read.c:13008 dwarf2read.c:13020 #, possible-c-format msgid "Dwarf Error: %s found in non-DWO CU [in module %s]" msgstr "" -#: dwarf2read.c:13052 +#: dwarf2read.c:13051 #, possible-c-format msgid "Suspicious DW_AT_byte_size value treated as zero instead of %s" msgstr "" -#: dwarf2read.c:13137 +#: dwarf2read.c:13136 #, possible-c-format msgid "read_address: bad switch, signed [in module %s]" msgstr "" -#: dwarf2read.c:13156 +#: dwarf2read.c:13155 #, possible-c-format msgid "read_address: bad switch, unsigned [in module %s]" msgstr "" -#: dwarf2read.c:13250 +#: dwarf2read.c:13249 msgid "intermixed 32-bit and 64-bit DWARF sections" msgstr "" -#: dwarf2read.c:13286 +#: dwarf2read.c:13285 #, possible-c-format msgid "read_offset_1: bad switch [in module %s]" msgstr "" -#: dwarf2read.c:13324 +#: dwarf2read.c:13323 #, possible-c-format msgid "DW_FORM_strp used without .debug_str section [in module %s]" msgstr "" -#: dwarf2read.c:13327 +#: dwarf2read.c:13326 #, possible-c-format msgid "DW_FORM_strp pointing outside of .debug_str section [in module %s]" msgstr "" -#: dwarf2read.c:13416 +#: dwarf2read.c:13415 #, possible-c-format msgid "DW_FORM_addr_index used without .debug_addr section [in module %s]" msgstr "" -#: dwarf2read.c:13419 +#: dwarf2read.c:13418 #, possible-c-format msgid "" "DW_FORM_addr_index pointing outside of .debug_addr section [in module %s]" msgstr "" -#: dwarf2read.c:13542 +#: dwarf2read.c:13541 #, possible-c-format msgid "" "DW_FORM_str_index used without .debug_str.dwo section in CU at offset 0x%lx " "[in module %s]" msgstr "" -#: dwarf2read.c:13546 +#: dwarf2read.c:13545 #, possible-c-format msgid "" "DW_FORM_str_index used without .debug_str_offsets.dwo section in CU at " "offset 0x%lx [in module %s]" msgstr "" -#: dwarf2read.c:13550 +#: dwarf2read.c:13549 #, possible-c-format msgid "" "DW_FORM_str_index pointing outside of .debug_str_offsets.dwo section in CU " "at offset 0x%lx [in module %s]" msgstr "" -#: dwarf2read.c:13560 +#: dwarf2read.c:13559 #, possible-c-format msgid "" "Offset from DW_FORM_str_index pointing outside of .debug_str.dwo section in " "CU at offset 0x%lx [in module %s]" msgstr "" -#: dwarf2read.c:13838 +#: dwarf2read.c:13837 msgid "missing .debug_line.dwo section" msgstr "" -#: dwarf2read.c:13840 +#: dwarf2read.c:13839 msgid "missing .debug_line section" msgstr "" -#: dwarf2read.c:13892 +#: dwarf2read.c:13891 msgid "invalid maximum_ops_per_instruction in `.debug_line' section" msgstr "" -#: dwarf2read.c:13942 +#: dwarf2read.c:13941 msgid "line number info header doesn't fit in `.debug_line' section" msgstr "" -#: dwarf2read.c:14161 +#: dwarf2read.c:14160 #, possible-c-format msgid ".debug_line address at offset 0x%lx is 0 [in module %s]" msgstr "" -#: dwarf2read.c:14198 dwarf2read.c:14207 +#: dwarf2read.c:14197 dwarf2read.c:14206 msgid "mangled .debug_line section" msgstr "" -#: dwarf2read.c:14621 +#: dwarf2read.c:14620 msgid "file index out of range" msgstr "" @@ -8723,351 +8810,351 @@ msgstr "" #. trash data, but since we must specifically ignore things #. we don't recognize, there is nothing else we should do at #. this point. -#: dwarf2read.c:14882 +#: dwarf2read.c:14881 #, possible-c-format msgid "unsupported tag: '%s'" msgstr "" -#: dwarf2read.c:15052 +#: dwarf2read.c:15051 #, possible-c-format msgid "unsupported const value attribute form: '%s'" msgstr "" -#: dwarf2read.c:15172 +#: dwarf2read.c:15171 #, possible-c-format msgid "" "Dwarf Error: Problem turning containing type into gdb type [in module %s]" msgstr "" -#: dwarf2read.c:15203 dwarf2read.c:16333 +#: dwarf2read.c:15202 dwarf2read.c:16332 #, possible-c-format msgid "" "Dwarf Error: Cannot find signatured DIE referenced from DIE at 0x%x [in " "module %s]" msgstr "" -#: dwarf2read.c:15221 +#: dwarf2read.c:15220 #, possible-c-format msgid "Dwarf Error: Bad type attribute %s [in module %s]" msgstr "" #. read_type_die already issued a complaint. -#: dwarf2read.c:15248 +#: dwarf2read.c:15247 #, possible-c-format msgid "" msgstr "" -#: dwarf2read.c:15350 +#: dwarf2read.c:15349 #, possible-c-format msgid "unexpected tag in read_type_die: '%s'" msgstr "" -#: dwarf2read.c:15566 +#: dwarf2read.c:15565 #, possible-c-format msgid "template param type '%s' defined within parent '%s'" msgstr "" -#: dwarf2read.c:16116 +#: dwarf2read.c:16115 #, possible-c-format msgid "unsupported die ref attribute form: '%s'" msgstr "" -#: dwarf2read.c:16138 +#: dwarf2read.c:16137 #, possible-c-format msgid "Attribute value is not a constant (%s)" msgstr "" -#: dwarf2read.c:16161 +#: dwarf2read.c:16160 #, possible-c-format msgid "Dwarf Error: Expected reference attribute [in module %s]" msgstr "" -#: dwarf2read.c:16229 +#: dwarf2read.c:16228 #, possible-c-format msgid "" "Dwarf Error: Cannot find DIE at 0x%x referenced from DIE at 0x%x [in module %" "s]" msgstr "" -#: dwarf2read.c:16260 +#: dwarf2read.c:16259 #, possible-c-format msgid "Dwarf Error: Cannot find DIE at 0x%x referenced in module %s" msgstr "" -#: dwarf2read.c:16287 +#: dwarf2read.c:16286 #, possible-c-format msgid "" "Dwarf Error: DIE at 0x%x referenced in module %s is neither DW_FORM_block* " "nor DW_FORM_exprloc" msgstr "" -#: dwarf2read.c:16355 +#: dwarf2read.c:16354 #, possible-c-format msgid "" "Dwarf Error: Cannot find signatured DIE at 0x%x referenced from DIE at 0x%x " "[in module %s]" msgstr "" -#: dwarf2read.c:16698 +#: dwarf2read.c:16697 #, possible-c-format msgid "unsupported stack op: '%s'" msgstr "" -#: dwarf2read.c:16701 +#: dwarf2read.c:16700 #, possible-c-format msgid "unsupported stack op: '%02x'" msgstr "" -#: dwarf2read.c:16713 +#: dwarf2read.c:16712 msgid "location description stack overflow" msgstr "" -#: dwarf2read.c:16720 +#: dwarf2read.c:16719 msgid "location description stack underflow" msgstr "" -#: dwarf2read.c:16805 +#: dwarf2read.c:16804 #, possible-c-format msgid "bad file number in macro information (%d)" msgstr "" -#: dwarf2read.c:16863 +#: dwarf2read.c:16862 #, possible-c-format msgid "" "macro definition contains spaces in formal argument list:\n" "`%s'" msgstr "" -#: dwarf2read.c:17086 +#: dwarf2read.c:17085 #, possible-c-format msgid "invalid form 0x%x in `%s'" msgstr "" -#: dwarf2read.c:17115 +#: dwarf2read.c:17114 #, possible-c-format msgid "unrecognized DW_MACFINO opcode 0x%x" msgstr "" -#: dwarf2read.c:17160 +#: dwarf2read.c:17159 #, possible-c-format msgid "unrecognized version `%d' in .debug_macro section" msgstr "" -#: dwarf2read.c:17289 +#: dwarf2read.c:17288 #, possible-c-format msgid "debug info with no main source gives macro %s on line %d: %s" msgstr "" -#: dwarf2read.c:17291 dwarf2read.c:17300 +#: dwarf2read.c:17290 dwarf2read.c:17299 msgid "definition" msgstr "" -#: dwarf2read.c:17291 dwarf2read.c:17300 +#: dwarf2read.c:17290 dwarf2read.c:17299 msgid "undefinition" msgstr "" -#: dwarf2read.c:17298 +#: dwarf2read.c:17297 #, possible-c-format msgid "debug info gives %s macro %s with %s line %d: %s" msgstr "" -#: dwarf2read.c:17299 dwarf2read.c:17329 +#: dwarf2read.c:17298 dwarf2read.c:17328 msgid "command-line" msgstr "" -#: dwarf2read.c:17299 +#: dwarf2read.c:17298 msgid "in-file" msgstr "" -#: dwarf2read.c:17301 dwarf2read.c:17330 +#: dwarf2read.c:17300 dwarf2read.c:17329 msgid "zero" msgstr "" -#: dwarf2read.c:17301 dwarf2read.c:17330 +#: dwarf2read.c:17300 dwarf2read.c:17329 msgid "non-zero" msgstr "" -#: dwarf2read.c:17327 +#: dwarf2read.c:17326 #, possible-c-format msgid "debug info gives source %d included from %s at %s line %d" msgstr "" -#: dwarf2read.c:17329 +#: dwarf2read.c:17328 msgid "file" msgstr "" -#: dwarf2read.c:17348 +#: dwarf2read.c:17347 msgid "macro debug info has an unmatched `close_file' directive" msgstr "" -#: dwarf2read.c:17374 +#: dwarf2read.c:17373 msgid "no terminating 0-type entry for macros in `.debug_macinfo' section" msgstr "" -#: dwarf2read.c:17396 +#: dwarf2read.c:17395 msgid "recursive DW_MACRO_GNU_transparent_include in .debug_macro section" msgstr "" -#: dwarf2read.c:17490 +#: dwarf2read.c:17489 #, possible-c-format msgid "missing %s section" msgstr "" -#: dwarf2read.c:17746 +#: dwarf2read.c:17745 msgid "Location list used without specifying the CU base address." msgstr "" -#: dwarf2read.c:17903 +#: dwarf2read.c:17902 #, possible-c-format msgid "" "Dwarf Error: could not find partial DIE containing offset 0x%lx [in module %" "s]" msgstr "" -#: dwarf2read.c:17916 +#: dwarf2read.c:17915 #, possible-c-format msgid "invalid dwarf2 offset %u" msgstr "" -#: dwarf2read.c:18199 +#: dwarf2read.c:18198 #, possible-c-format msgid "A problem internal to GDB: DIE 0x%x has type already set" msgstr "" -#: dwarf2read.c:18964 +#: dwarf2read.c:18963 msgid "Ada is not currently supported by the index" msgstr "" -#: dwarf2read.c:18988 +#: dwarf2read.c:18987 msgid "couldn't data write to file" msgstr "" -#: dwarf2read.c:19101 +#: dwarf2read.c:19100 msgid "Cannot use an index to create the index" msgstr "" -#: dwarf2read.c:19104 +#: dwarf2read.c:19103 msgid "Cannot make an index when the file has multiple .debug_types sections" msgstr "" -#: dwarf2read.c:19115 +#: dwarf2read.c:19114 #, possible-c-format msgid "Can't open `%s' for writing" msgstr "" -#: dwarf2read.c:19270 +#: dwarf2read.c:19269 msgid "usage: save gdb-index DIRECTORY" msgstr "" -#: dwarf2read.c:19291 +#: dwarf2read.c:19290 #, possible-c-format msgid "Error while writing index for `%s': " msgstr "" -#: dwarf2read.c:19306 +#: dwarf2read.c:19305 #, possible-c-format msgid "Whether to always disassemble DWARF expressions is %s.\n" msgstr "" -#: dwarf2read.c:19316 +#: dwarf2read.c:19315 #, possible-c-format msgid "Whether to check \"physname\" is %s.\n" msgstr "" -#: dwarf2read.c:19330 +#: dwarf2read.c:19329 msgid "" "Set DWARF 2 specific variables.\n" "Configure DWARF 2 variables such as the cache size" msgstr "" #. allow-unknown -#: dwarf2read.c:19336 +#: dwarf2read.c:19335 msgid "" "Show DWARF 2 specific variables\n" "Show DWARF 2 variables such as the cache size" msgstr "" -#: dwarf2read.c:19343 +#: dwarf2read.c:19342 msgid "Set the upper bound on the age of cached dwarf2 compilation units." msgstr "" -#: dwarf2read.c:19344 +#: dwarf2read.c:19343 msgid "Show the upper bound on the age of cached dwarf2 compilation units." msgstr "" -#: dwarf2read.c:19345 +#: dwarf2read.c:19344 msgid "" "A higher limit means that cached compilation units will be stored\n" "in memory longer, and more total memory will be used. Zero disables\n" "caching, which can slow down startup." msgstr "" -#: dwarf2read.c:19355 +#: dwarf2read.c:19354 msgid "Set whether `info address' always disassembles DWARF expressions." msgstr "" -#: dwarf2read.c:19356 +#: dwarf2read.c:19355 msgid "Show whether `info address' always disassembles DWARF expressions." msgstr "" -#: dwarf2read.c:19357 +#: dwarf2read.c:19356 msgid "" "When enabled, DWARF expressions are always printed in an assembly-like\n" "syntax. When disabled, expressions will be printed in a more\n" "conversational style, when possible." msgstr "" -#: dwarf2read.c:19366 +#: dwarf2read.c:19365 msgid "Set debugging of the dwarf2 reader." msgstr "" -#: dwarf2read.c:19367 +#: dwarf2read.c:19366 msgid "Show debugging of the dwarf2 reader." msgstr "" -#: dwarf2read.c:19368 +#: dwarf2read.c:19367 msgid "" "When enabled, debugging messages are printed during dwarf2 reading\n" "and symtab expansion." msgstr "" -#: dwarf2read.c:19375 +#: dwarf2read.c:19374 msgid "Set debugging of the dwarf2 DIE reader." msgstr "" -#: dwarf2read.c:19376 +#: dwarf2read.c:19375 msgid "Show debugging of the dwarf2 DIE reader." msgstr "" -#: dwarf2read.c:19377 +#: dwarf2read.c:19376 msgid "" "When enabled (non-zero), DIEs are dumped after they are read in.\n" "The value is the maximum depth to print." msgstr "" -#: dwarf2read.c:19384 +#: dwarf2read.c:19383 msgid "Set cross-checking of \"physname\" code against demangler." msgstr "" -#: dwarf2read.c:19385 +#: dwarf2read.c:19384 msgid "Show cross-checking of \"physname\" code against demangler." msgstr "" -#: dwarf2read.c:19386 +#: dwarf2read.c:19385 msgid "" "When enabled, GDB's internal \"physname\" code is checked against\n" "the demangler." msgstr "" -#: dwarf2read.c:19393 +#: dwarf2read.c:19392 msgid "Set whether to use deprecated gdb_index sections." msgstr "" -#: dwarf2read.c:19394 +#: dwarf2read.c:19393 msgid "Show whether to use deprecated gdb_index sections." msgstr "" -#: dwarf2read.c:19395 +#: dwarf2read.c:19394 msgid "" "When enabled, deprecated .gdb_index sections are used anyway.\n" "Normally they are ignored either because of a missing feature or\n" @@ -9075,7 +9162,7 @@ msgid "" "Warning: This option must be enabled before gdb reads the file." msgstr "" -#: dwarf2read.c:19405 +#: dwarf2read.c:19404 msgid "" "Save a gdb-index file.\n" "Usage: save gdb-index DIRECTORY" @@ -9663,139 +9750,139 @@ msgstr "" msgid "An upper bound on the number of backtrace levels is %s.\n" msgstr "" -#: frame.c:681 +#: frame.c:682 msgid "No unwind_pc method" msgstr "" -#: frame.c:701 frame.c:769 +#: frame.c:702 frame.c:770 msgid "PC not available" msgstr "" -#: frame.c:815 +#: frame.c:816 msgid "Cannot pop the initial frame." msgstr "" -#: frame.c:916 +#: frame.c:922 #, possible-c-format msgid "Register %d was optimized out" msgstr "" -#: frame.c:919 +#: frame.c:925 #, possible-c-format msgid "Register %d is not available" msgstr "" -#: frame.c:1068 +#: frame.c:1074 msgid "Attempt to assign to a value that was optimized out." msgstr "" -#: frame.c:1085 +#: frame.c:1091 msgid "Attempt to assign to an unmodifiable value." msgstr "" -#: frame.c:1142 +#: frame.c:1148 #, possible-c-format msgid "" "Bad debug information detected: Attempt to read %d bytes from registers." msgstr "" -#: frame.c:1308 ia64-libunwind-tdep.c:335 ia64-tdep.c:1926 ia64-tdep.c:2301 +#: frame.c:1314 ia64-libunwind-tdep.c:335 ia64-tdep.c:1926 ia64-tdep.c:2301 msgid "No registers." msgstr "" -#: frame.c:1310 stack.c:1661 stack.c:2200 thread.c:1289 +#: frame.c:1316 stack.c:1661 stack.c:2200 thread.c:1289 msgid "No stack." msgstr "" -#: frame.c:1312 +#: frame.c:1318 msgid "No memory." msgstr "" -#: frame.c:1317 +#: frame.c:1323 msgid "No selected thread." msgstr "" -#: frame.c:1319 infcmd.c:1827 +#: frame.c:1325 infcmd.c:1832 msgid "Invalid selected thread." msgstr "" -#: frame.c:1321 +#: frame.c:1327 msgid "Target is executing." msgstr "" -#: frame.c:2350 +#: frame.c:2356 msgid "Missing unwind SP method" msgstr "" -#: frame.c:2454 +#: frame.c:2460 msgid "" "Set backtrace specific variables.\n" "Configure backtrace variables such as the backtrace limit" msgstr "" #. allow-unknown -#: frame.c:2459 +#: frame.c:2465 msgid "" "Show backtrace specific variables\n" "Show backtrace variables such as the backtrace limit" msgstr "" -#: frame.c:2466 +#: frame.c:2472 msgid "Set whether backtraces should continue past \"main\"." msgstr "" -#: frame.c:2467 +#: frame.c:2473 msgid "Show whether backtraces should continue past \"main\"." msgstr "" -#: frame.c:2468 +#: frame.c:2474 msgid "" "Normally the caller of \"main\" is not of interest, so GDB will terminate\n" "the backtrace at \"main\". Set this variable if you need to see the rest\n" "of the stack trace." msgstr "" -#: frame.c:2478 +#: frame.c:2484 msgid "" "Set whether backtraces should continue past the entry point of a program." msgstr "" -#: frame.c:2480 +#: frame.c:2486 msgid "" "Show whether backtraces should continue past the entry point of a program." msgstr "" -#: frame.c:2482 +#: frame.c:2488 msgid "" "Normally there are no callers beyond the entry point of a program, so GDB\n" "will terminate the backtrace there. Set this variable if you need to see\n" "the rest of the stack trace." msgstr "" -#: frame.c:2492 +#: frame.c:2498 msgid "Set an upper bound on the number of backtrace levels." msgstr "" -#: frame.c:2493 +#: frame.c:2499 msgid "Show the upper bound on the number of backtrace levels." msgstr "" -#: frame.c:2494 +#: frame.c:2500 msgid "" "No more than the specified number of frames can be displayed or examined.\n" "Zero is unlimited." msgstr "" #. Debug this files internals. -#: frame.c:2503 +#: frame.c:2509 msgid "Set frame debugging." msgstr "" -#: frame.c:2504 +#: frame.c:2510 msgid "Show frame debugging." msgstr "" -#: frame.c:2505 +#: frame.c:2511 msgid "When non-zero, frame specific internal debugging is enabled." msgstr "" @@ -9868,7 +9955,7 @@ msgstr "" msgid "Contents of F77 COMMON block '%s':\n" msgstr "" -#: f-valprint.c:523 infrun.c:6836 stack.c:1740 stack.c:1954 +#: f-valprint.c:523 infrun.c:6852 stack.c:1740 stack.c:1954 msgid "Unable to restore previously selected frame." msgstr "" @@ -10625,7 +10712,7 @@ msgstr "" msgid "vtable for '%s' @ %s (subobject @ %s):\n" msgstr "" -#: gnu-v3-abi.c:897 printcmd.c:1800 value.c:2254 +#: gnu-v3-abi.c:897 printcmd.c:1800 value.c:2258 #, possible-c-format msgid "" msgstr "" @@ -11240,28 +11327,28 @@ msgid "" "; instruction is only %d bytes long, need at least %d bytes for the jump" msgstr "" -#: i386-tdep.c:7927 +#: i386-tdep.c:7916 msgid "Set the disassembly flavor." msgstr "" -#: i386-tdep.c:7928 +#: i386-tdep.c:7917 msgid "Show the disassembly flavor." msgstr "" -#: i386-tdep.c:7929 +#: i386-tdep.c:7918 msgid "" "The valid values are \"att\" and \"intel\", and the default value is \"att\"." msgstr "" -#: i386-tdep.c:7938 +#: i386-tdep.c:7927 msgid "Set the convention for returning small structs." msgstr "" -#: i386-tdep.c:7939 +#: i386-tdep.c:7928 msgid "Show the convention for returning small structs." msgstr "" -#: i386-tdep.c:7940 +#: i386-tdep.c:7929 msgid "" "Valid values are \"default\", \"pcc\" and \"reg\", and the default value\n" "is \"default\"." @@ -11541,7 +11628,7 @@ msgstr "" msgid "Use the \"run\" command to start a Unix child process." msgstr "" -#: infcmd.c:128 infcmd.c:2317 infcmd.c:2705 linux-fork.c:658 remote-sim.c:891 +#: infcmd.c:128 infcmd.c:2322 infcmd.c:2710 linux-fork.c:658 remote-sim.c:891 msgid "The program is not being run." msgstr "" @@ -11575,7 +11662,7 @@ msgid "The target does not support running in non-stop mode." msgstr "" #: infcmd.c:582 infcmd.c:755 infcmd.c:898 infcmd.c:1138 infcmd.c:1242 -#: infcmd.c:1391 infcmd.c:1427 infcmd.c:1729 infcmd.c:2549 +#: infcmd.c:1391 infcmd.c:1427 infcmd.c:1729 infcmd.c:2554 msgid "Asynchronous execution not supported on this target." msgstr "" @@ -11687,137 +11774,137 @@ msgstr "" msgid "\"finish\" not meaningful in the outermost frame." msgstr "" -#: infcmd.c:1772 infcmd.c:1791 +#: infcmd.c:1772 infcmd.c:1796 msgid "Run till exit from " msgstr "" -#: infcmd.c:1789 +#: infcmd.c:1794 msgid "Run back to call of " msgstr "" -#: infcmd.c:1813 +#: infcmd.c:1818 msgid "The program being debugged is not being run.\n" msgstr "" -#: infcmd.c:1829 infrun.c:6549 +#: infcmd.c:1834 infrun.c:6565 msgid "Selected thread is running." msgstr "" -#: infcmd.c:1836 +#: infcmd.c:1841 #, possible-c-format msgid "Program stopped at %s.\n" msgstr "" -#: infcmd.c:1839 +#: infcmd.c:1844 msgid "It stopped after being stepped.\n" msgstr "" -#: infcmd.c:1848 +#: infcmd.c:1853 msgid "It stopped at a breakpoint that has since been deleted.\n" msgstr "" -#: infcmd.c:1852 +#: infcmd.c:1857 #, possible-c-format msgid "It stopped at breakpoint %d.\n" msgstr "" -#: infcmd.c:1858 +#: infcmd.c:1863 #, possible-c-format msgid "It stopped with signal %s, %s.\n" msgstr "" -#: infcmd.c:1865 +#: infcmd.c:1870 msgid "Type \"info stack\" or \"info registers\" for more information.\n" msgstr "" -#: infcmd.c:1910 +#: infcmd.c:1915 msgid "environment variable and value" msgstr "" -#: infcmd.c:1934 +#: infcmd.c:1939 msgid "environment variable to set" msgstr "" -#: infcmd.c:1956 +#: infcmd.c:1961 #, possible-c-format msgid "Setting environment variable \"%s\" to null value.\n" msgstr "" #. If there is no argument, delete all environment variables. #. Ask for confirmation if reading from the terminal. -#: infcmd.c:1973 +#: infcmd.c:1978 msgid "Delete all environment variables? " msgstr "" -#: infcmd.c:2151 infcmd.c:2302 infcmd.c:2826 +#: infcmd.c:2156 infcmd.c:2307 infcmd.c:2831 msgid "The program has no registers now." msgstr "" -#: infcmd.c:2179 +#: infcmd.c:2184 msgid "Missing register name" msgstr "" #. Nothing matched. -#: infcmd.c:2253 +#: infcmd.c:2258 #, possible-c-format msgid "Invalid register `%.*s'" msgstr "" -#: infcmd.c:2318 +#: infcmd.c:2323 msgid "Kill the program being debugged? " msgstr "" -#: infcmd.c:2332 +#: infcmd.c:2337 #, possible-c-format msgid "In %s,\n" msgstr "" -#: infcmd.c:2529 target.c:2547 +#: infcmd.c:2534 target.c:2547 msgid "A program is being debugged already. Kill it? " msgstr "" -#: infcmd.c:2532 +#: infcmd.c:2537 msgid "Not killed." msgstr "" -#: infcmd.c:2540 +#: infcmd.c:2545 msgid "Cannot attach to this target in non-stop mode" msgstr "" -#: infcmd.c:2786 +#: infcmd.c:2791 msgid "-a is meaningless in all-stop mode." msgstr "" -#: infcmd.c:2834 +#: infcmd.c:2839 msgid "\"unset\" must be followed by the name of an unset subcommand.\n" msgstr "" -#: infcmd.c:2924 +#: infcmd.c:2929 msgid "Set terminal for future runs of program being debugged." msgstr "" -#: infcmd.c:2925 +#: infcmd.c:2930 msgid "Show terminal for future runs of program being debugged." msgstr "" -#: infcmd.c:2926 +#: infcmd.c:2931 msgid "Usage: set inferior-tty /dev/pts/1" msgstr "" -#: infcmd.c:2934 +#: infcmd.c:2939 msgid "Set argument list to give program being debugged when it is started." msgstr "" -#: infcmd.c:2935 +#: infcmd.c:2940 msgid "Show argument list to give program being debugged when it is started." msgstr "" -#: infcmd.c:2936 +#: infcmd.c:2941 msgid "" "Follow this command with any number of args, to be passed to the program." msgstr "" -#: infcmd.c:2942 +#: infcmd.c:2947 msgid "" "The environment to give the program, or one variable's value.\n" "With an argument VAR, prints the value of environment variable VAR to\n" @@ -11825,17 +11912,17 @@ msgid "" "environment to be given to the program." msgstr "" -#: infcmd.c:2950 +#: infcmd.c:2955 msgid "Complement to certain \"set\" commands." msgstr "" -#: infcmd.c:2953 +#: infcmd.c:2958 msgid "" "Cancel environment variable VAR for the program.\n" "This does not affect the program until the next \"run\" command." msgstr "" -#: infcmd.c:2959 +#: infcmd.c:2964 msgid "" "Set environment variable value to give the program.\n" "Arguments are VAR VALUE where VAR is variable name and VALUE is value.\n" @@ -11843,7 +11930,7 @@ msgid "" "This does not affect the program until the next \"run\" command." msgstr "" -#: infcmd.c:2967 +#: infcmd.c:2972 msgid "" "Add directory DIR(s) to beginning of search path for object files.\n" "$cwd in the path means the current working directory.\n" @@ -11852,7 +11939,7 @@ msgid "" "fully linked executable files and separately compiled object files as needed." msgstr "" -#: infcmd.c:2976 +#: infcmd.c:2981 msgid "" "Current search path for finding object files.\n" "$cwd in the path means the current working directory.\n" @@ -11861,11 +11948,11 @@ msgid "" "fully linked executable files and separately compiled object files as needed." msgstr "" -#: infcmd.c:2987 +#: infcmd.c:2992 msgid "Kill execution of program being debugged." msgstr "" -#: infcmd.c:2990 +#: infcmd.c:2995 msgid "" "Attach to a process or file outside of GDB.\n" "This command attaches to another target, of the same type as your last\n" @@ -11880,45 +11967,45 @@ msgid "" "to specify the program, and to load its symbol table." msgstr "" -#: infcmd.c:3003 +#: infcmd.c:3008 msgid "" "Detach a process or file previously attached.\n" "If a process, it is no longer traced, and it continues its execution. If\n" "you were debugging a file, the file is closed and gdb no longer accesses it." msgstr "" -#: infcmd.c:3009 +#: infcmd.c:3014 msgid "" "Disconnect from a target.\n" "The target will wait for another debugger to connect. Not available for\n" "all targets." msgstr "" -#: infcmd.c:3014 +#: infcmd.c:3019 msgid "" "Continue program giving it signal specified by the argument.\n" "An argument of \"0\" means continue program without giving it a signal." msgstr "" -#: infcmd.c:3018 +#: infcmd.c:3023 msgid "" "Step one instruction exactly.\n" "Argument N means do this N times (or till program stops for another reason)." msgstr "" -#: infcmd.c:3024 +#: infcmd.c:3029 msgid "" "Step one instruction, but proceed through subroutine calls.\n" "Argument N means do this N times (or till program stops for another reason)." msgstr "" -#: infcmd.c:3030 +#: infcmd.c:3035 msgid "" "Execute until selected stack frame returns.\n" "Upon return, the value returned is printed and put in the value history." msgstr "" -#: infcmd.c:3035 +#: infcmd.c:3040 msgid "" "Step program, proceeding through subroutine calls.\n" "Like the \"step\" command as long as subroutine calls do not happen;\n" @@ -11926,34 +12013,34 @@ msgid "" "Argument N means do this N times (or till program stops for another reason)." msgstr "" -#: infcmd.c:3045 +#: infcmd.c:3050 msgid "" "Step program until it reaches a different source line.\n" "Argument N means do this N times (or till program stops for another reason)." msgstr "" -#: infcmd.c:3051 +#: infcmd.c:3056 msgid "" "Execute until the program reaches a source line greater than the current\n" "or a specified location (same args as break command) within the current " "frame." msgstr "" -#: infcmd.c:3058 +#: infcmd.c:3063 msgid "" "Continue the program up to the given location (same form as args for break " "command).\n" "Execution will also stop upon exit from the current stack frame." msgstr "" -#: infcmd.c:3064 +#: infcmd.c:3069 msgid "" "Continue program being debugged at specified line or address.\n" "Give as argument either LINENUM or *ADDR, where ADDR is an expression\n" "for an address to start at." msgstr "" -#: infcmd.c:3072 +#: infcmd.c:3077 msgid "" "Usage: go \n" "Continue program being debugged, stopping at specified line or \n" @@ -11963,7 +12050,7 @@ msgid "" "This command is a combination of tbreak and jump." msgstr "" -#: infcmd.c:3085 +#: infcmd.c:3090 msgid "" "Continue program being debugged, after signal or breakpoint.\n" "If proceeding from breakpoint, a number N may be used as an argument,\n" @@ -11976,7 +12063,7 @@ msgid "" "Specifying -a and an ignore count simultaneously is an error." msgstr "" -#: infcmd.c:3098 +#: infcmd.c:3103 msgid "" "Start debugged program. You may specify arguments to give it.\n" "Args may include \"*\", or \"[...]\"; they are expanded using \"sh\".\n" @@ -11988,18 +12075,18 @@ msgid "" "use \"set args\" without arguments." msgstr "" -#: infcmd.c:3111 +#: infcmd.c:3116 msgid "Start debugged program with no arguments." msgstr "" -#: infcmd.c:3113 +#: infcmd.c:3118 msgid "" "Run the debugged program until the beginning of the main procedure.\n" "You may specify arguments to give to your program, just as with the\n" "\"run\" command." msgstr "" -#: infcmd.c:3120 +#: infcmd.c:3125 msgid "" "Interrupt the execution of the debugged program.\n" "If non-stop mode is enabled, interrupt only the current thread,\n" @@ -12007,62 +12094,62 @@ msgid "" "interrupt all running threads in non-stop mode, use the -a option." msgstr "" -#: infcmd.c:3125 infcmd.c:3131 +#: infcmd.c:3130 infcmd.c:3136 msgid "" "List of integer registers and their contents, for selected stack frame.\n" "Register name as argument means describe only that register." msgstr "" -#: infcmd.c:3134 +#: infcmd.c:3139 msgid "" "List of all registers and their contents, for selected stack frame.\n" "Register name as argument means describe only that register." msgstr "" -#: infcmd.c:3139 +#: infcmd.c:3144 msgid "Execution status of the program." msgstr "" -#: infcmd.c:3142 +#: infcmd.c:3147 msgid "Print the status of the floating point unit\n" msgstr "" -#: infcmd.c:3145 +#: infcmd.c:3150 msgid "Print the status of the vector unit\n" msgstr "" -#: infcmd.c:3148 +#: infcmd.c:3153 msgid "" "Show /proc process information about any running process.\n" "Specify any process id, or use the program being debugged by default." msgstr "" #. allow-unknown -#: infcmd.c:3154 +#: infcmd.c:3159 msgid "List of mapped memory regions." msgstr "" -#: infcmd.c:3158 +#: infcmd.c:3163 msgid "List process info from /proc/PID/stat." msgstr "" -#: infcmd.c:3162 +#: infcmd.c:3167 msgid "List process info from /proc/PID/status." msgstr "" -#: infcmd.c:3166 +#: infcmd.c:3171 msgid "List current working directory of the process." msgstr "" -#: infcmd.c:3170 +#: infcmd.c:3175 msgid "List command line arguments of the process." msgstr "" -#: infcmd.c:3174 +#: infcmd.c:3179 msgid "List absolute filename for executable of the process." msgstr "" -#: infcmd.c:3178 +#: infcmd.c:3183 msgid "List all available /proc info." msgstr "" @@ -12327,7 +12414,7 @@ msgid "" "this platform." msgstr "" -#: infrun.c:251 infrun.c:7021 target.c:4644 target.c:4692 +#: infrun.c:251 infrun.c:7037 target.c:4644 target.c:4692 msgid "Cannot change this setting while the inferior is running." msgstr "" @@ -12425,120 +12512,120 @@ msgstr "" msgid "Cannot step over breakpoint hit in wrong thread" msgstr "" -#: infrun.c:5920 linux-fork.c:374 linux-fork.c:406 +#: infrun.c:5936 linux-fork.c:374 linux-fork.c:406 #, possible-c-format msgid "[Switching to %s]\n" msgstr "" -#: infrun.c:5931 +#: infrun.c:5947 msgid "No unwaited-for children left.\n" msgstr "" -#: infrun.c:5939 +#: infrun.c:5955 msgid "" "Cannot remove breakpoints because program is no longer writable.\n" "Further execution is probably impossible.\n" msgstr "" -#: infrun.c:6039 +#: infrun.c:6055 msgid "Unknown value." msgstr "" -#: infrun.c:6211 +#: infrun.c:6227 msgid "Signal Stop\tPrint\tPass to program\tDescription\n" msgstr "" -#: infrun.c:6248 +#: infrun.c:6264 msgid "signal to handle" msgstr "" #. Not a number and not a recognized flag word => complain. -#: infrun.c:6351 +#: infrun.c:6367 #, possible-c-format msgid "Unrecognized or ambiguous flag word: \"%s\"." msgstr "" -#: infrun.c:6366 +#: infrun.c:6382 #, possible-c-format msgid "" "%s is used by the debugger.\n" "Are you sure you want to change it? " msgstr "" -#: infrun.c:6374 +#: infrun.c:6390 msgid "Not confirmed, unchanged.\n" msgstr "" -#: infrun.c:6422 +#: infrun.c:6438 msgid "xdb command" msgstr "" -#: infrun.c:6473 +#: infrun.c:6489 msgid "Invalid signal handling flag.\n" msgstr "" -#: infrun.c:6486 +#: infrun.c:6502 msgid "" "Only signals 1-15 are valid as numeric signals.\n" "Use \"info signals\" for a list of symbolic signals." msgstr "" -#: infrun.c:6529 +#: infrun.c:6545 msgid "" "\n" "Use the \"handle\" command to change these tables.\n" msgstr "" -#: infrun.c:6541 +#: infrun.c:6557 msgid "No thread selected." msgstr "" -#: infrun.c:6545 +#: infrun.c:6561 msgid "The current thread has terminated" msgstr "" -#: infrun.c:6580 +#: infrun.c:6596 msgid "Unable to read siginfo" msgstr "" -#: infrun.c:6601 +#: infrun.c:6617 msgid "Unable to write siginfo" msgstr "" -#: infrun.c:6988 +#: infrun.c:7004 msgid "Target does not support this operation." msgstr "" -#: infrun.c:6998 +#: infrun.c:7014 msgid "Forward.\n" msgstr "" -#: infrun.c:7001 +#: infrun.c:7017 msgid "Reverse.\n" msgstr "" -#: infrun.c:7005 +#: infrun.c:7021 #, possible-c-format msgid "bogus execution_direction value: %d" msgstr "" -#: infrun.c:7032 +#: infrun.c:7048 #, possible-c-format msgid "Controlling the inferior in non-stop mode is %s.\n" msgstr "" -#: infrun.c:7040 +#: infrun.c:7056 #, possible-c-format msgid "Resuming the execution of threads of all processes is %s.\n" msgstr "" -#: infrun.c:7059 infrun.c:7081 +#: infrun.c:7075 infrun.c:7097 msgid "" "What debugger does when program gets various signals.\n" "Specify a signal as argument to print info on that signal only." msgstr "" -#: infrun.c:7064 +#: infrun.c:7080 msgid "" "Specify how to handle a signal.\n" "Args are signals and actions to apply to those signals.\n" @@ -12556,7 +12643,7 @@ msgid "" "Pass and Stop may be combined." msgstr "" -#: infrun.c:7084 +#: infrun.c:7100 msgid "" "Specify how to handle a signal.\n" "Args are signals and actions to apply to those signals.\n" @@ -12575,46 +12662,46 @@ msgid "" "Pass and Stop may be combined." msgstr "" -#: infrun.c:7104 +#: infrun.c:7120 msgid "" "There is no `stop' command, but you can set a hook on `stop'.\n" "This allows you to set a list of commands to be run each time execution\n" "of the program stops." msgstr "" -#: infrun.c:7109 +#: infrun.c:7125 msgid "Set inferior debugging." msgstr "" -#: infrun.c:7110 +#: infrun.c:7126 msgid "Show inferior debugging." msgstr "" -#: infrun.c:7111 +#: infrun.c:7127 msgid "When non-zero, inferior specific debugging is enabled." msgstr "" -#: infrun.c:7118 +#: infrun.c:7134 msgid "Set displaced stepping debugging." msgstr "" -#: infrun.c:7119 +#: infrun.c:7135 msgid "Show displaced stepping debugging." msgstr "" -#: infrun.c:7120 +#: infrun.c:7136 msgid "When non-zero, displaced stepping specific debugging is enabled." msgstr "" -#: infrun.c:7127 +#: infrun.c:7143 msgid "Set whether gdb controls the inferior in non-stop mode." msgstr "" -#: infrun.c:7128 +#: infrun.c:7144 msgid "Show whether gdb controls the inferior in non-stop mode." msgstr "" -#: infrun.c:7129 +#: infrun.c:7145 msgid "" "When debugging a multi-threaded program and this setting is\n" "off (the default, also called all-stop mode), when one thread stops\n" @@ -12629,30 +12716,30 @@ msgid "" "leave it stopped or free to run as needed." msgstr "" -#: infrun.c:7201 +#: infrun.c:7217 msgid "Set stopping for shared library events." msgstr "" -#: infrun.c:7202 +#: infrun.c:7218 msgid "Show stopping for shared library events." msgstr "" -#: infrun.c:7203 +#: infrun.c:7219 msgid "" "If nonzero, gdb will give control to the user when the dynamic linker\n" "notifies gdb of shared library events. The most common event of interest\n" "to the user would be loading/unloading of a new library." msgstr "" -#: infrun.c:7213 +#: infrun.c:7229 msgid "Set debugger response to a program call of fork or vfork." msgstr "" -#: infrun.c:7214 +#: infrun.c:7230 msgid "Show debugger response to a program call of fork or vfork." msgstr "" -#: infrun.c:7215 +#: infrun.c:7231 msgid "" "A fork or vfork creates a new process. follow-fork-mode can be:\n" " parent - the original process is debugged after a fork\n" @@ -12661,15 +12748,15 @@ msgid "" "By default, the debugger will follow the parent process." msgstr "" -#: infrun.c:7227 +#: infrun.c:7243 msgid "Set debugger response to a program call of exec." msgstr "" -#: infrun.c:7228 +#: infrun.c:7244 msgid "Show debugger response to a program call of exec." msgstr "" -#: infrun.c:7229 +#: infrun.c:7245 msgid "" "An exec call replaces the program image of a process.\n" "\n" @@ -12688,15 +12775,15 @@ msgid "" "By default, the debugger will use the same inferior." msgstr "" -#: infrun.c:7250 +#: infrun.c:7266 msgid "Set mode for locking scheduler during execution." msgstr "" -#: infrun.c:7251 +#: infrun.c:7267 msgid "Show mode for locking scheduler during execution." msgstr "" -#: infrun.c:7252 +#: infrun.c:7268 msgid "" "off == no locking (threads may preempt at any time)\n" "on == full locking (no thread except the current thread may run)\n" @@ -12705,15 +12792,15 @@ msgid "" "\tOther threads may run while stepping over a function call ('next')." msgstr "" -#: infrun.c:7262 +#: infrun.c:7278 msgid "Set mode for resuming threads of all processes." msgstr "" -#: infrun.c:7263 +#: infrun.c:7279 msgid "Show mode for resuming threads of all processes." msgstr "" -#: infrun.c:7264 +#: infrun.c:7280 msgid "" "When on, execution commands (such as 'continue' or 'next') resume all\n" "threads of all processes. When off (which is the default), execution\n" @@ -12722,30 +12809,30 @@ msgid "" "mode (see help set scheduler-locking)." msgstr "" -#: infrun.c:7274 +#: infrun.c:7290 msgid "Set mode of the step operation." msgstr "" -#: infrun.c:7275 +#: infrun.c:7291 msgid "Show mode of the step operation." msgstr "" -#: infrun.c:7276 +#: infrun.c:7292 msgid "" "When set, doing a step over a function without debug line information\n" "will stop at the first instruction of that function. Otherwise, the\n" "function is skipped and the step command stops at a different source line." msgstr "" -#: infrun.c:7285 +#: infrun.c:7301 msgid "Set debugger's willingness to use displaced stepping." msgstr "" -#: infrun.c:7286 +#: infrun.c:7302 msgid "Show debugger's willingness to use displaced stepping." msgstr "" -#: infrun.c:7287 +#: infrun.c:7303 msgid "" "If on, gdb will use displaced stepping to step over breakpoints if it is\n" "supported by the target architecture. If off, gdb will not use displaced\n" @@ -12757,57 +12844,57 @@ msgid "" "use it in all-stop mode (see help set non-stop)." msgstr "" -#: infrun.c:7299 +#: infrun.c:7315 msgid "" "Set direction of execution.\n" "Options are 'forward' or 'reverse'." msgstr "" -#: infrun.c:7301 +#: infrun.c:7317 msgid "Show direction of execution (forward/reverse)." msgstr "" -#: infrun.c:7302 +#: infrun.c:7318 msgid "Tells gdb whether to execute forward or backward." msgstr "" #. Set/show detach-on-fork: user-settable mode. -#: infrun.c:7308 +#: infrun.c:7324 msgid "Set whether gdb will detach the child of a fork." msgstr "" -#: infrun.c:7309 +#: infrun.c:7325 msgid "Show whether gdb will detach the child of a fork." msgstr "" -#: infrun.c:7310 +#: infrun.c:7326 msgid "Tells gdb whether to detach the child of a fork." msgstr "" -#: infrun.c:7317 +#: infrun.c:7333 msgid "Set disabling of debuggee's virtual address space randomization." msgstr "" -#: infrun.c:7318 +#: infrun.c:7334 msgid "Show disabling of debuggee's virtual address space randomization." msgstr "" -#: infrun.c:7319 +#: infrun.c:7335 msgid "" "When this mode is on (which is the default), randomization of the virtual\n" "address space is disabled. Standalone programs run with the randomization\n" "enabled by default on some platforms." msgstr "" -#: infrun.c:7343 +#: infrun.c:7359 msgid "Set whether gdb controls the inferior in observer mode." msgstr "" -#: infrun.c:7344 +#: infrun.c:7360 msgid "Show whether gdb controls the inferior in observer mode." msgstr "" -#: infrun.c:7345 +#: infrun.c:7361 msgid "" "In observer mode, GDB can get data from the inferior, but not\n" "affect its execution. Registers and memory may not be changed,\n" @@ -13263,102 +13350,102 @@ msgstr "" msgid "For Fortran the default is off; for other languages the default is on." msgstr "" -#: linespec.c:587 +#: linespec.c:592 msgid "unmatched quote" msgstr "" -#: linespec.c:1294 +#: linespec.c:1305 msgid "" "[0] cancel\n" "[1] all\n" msgstr "" -#: linespec.c:1316 +#: linespec.c:1327 msgid "canceled" msgstr "" -#: linespec.c:1332 +#: linespec.c:1343 #, possible-c-format msgid "No choice number %d.\n" msgstr "" -#: linespec.c:1344 +#: linespec.c:1355 #, possible-c-format msgid "duplicate request for %d ignored.\n" msgstr "" -#: linespec.c:1381 +#: linespec.c:1392 #, possible-c-format msgid "" "Undefined convenience variable or function \"%s\" not defined in \"%s\"." msgstr "" -#: linespec.c:1385 +#: linespec.c:1396 #, possible-c-format msgid "Undefined convenience variable or function \"%s\" not defined." msgstr "" -#: linespec.c:1392 +#: linespec.c:1403 #, possible-c-format msgid "Function \"%s\" not defined in \"%s\"." msgstr "" -#: linespec.c:1396 +#: linespec.c:1407 #, possible-c-format msgid "Function \"%s\" not defined." msgstr "" -#: linespec.c:1423 +#: linespec.c:1434 #, possible-c-format msgid "malformed linespec error: unexpected %s, \"%s\"" msgstr "" -#: linespec.c:1428 +#: linespec.c:1439 #, possible-c-format msgid "malformed linespec error: unexpected %s" msgstr "" -#: linespec.c:1587 +#: linespec.c:1598 #, possible-c-format msgid "No label \"%s\" defined in function \"%s\"." msgstr "" -#: linespec.c:1836 +#: linespec.c:1847 #, possible-c-format msgid "No line %d in the current file." msgstr "" -#: linespec.c:2372 linespec.c:2394 +#: linespec.c:2390 linespec.c:2412 msgid "Empty line specification." msgstr "" -#: linespec.c:2382 linespec.c:2404 +#: linespec.c:2400 linespec.c:2422 #, possible-c-format msgid "Junk at end of line specification: %s" msgstr "" #. The error message doesn't really matter, because this case #. should only hit during breakpoint reset. -#: linespec.c:2440 +#: linespec.c:2458 msgid "cannot evaluate expressions while program space is in startup" msgstr "" #. Throw an NOT_FOUND_ERROR. This will be caught by the caller #. and other attempts to locate the symbol will be made. -#: linespec.c:2806 +#: linespec.c:2824 msgid "see caller, this text doesn't matter" msgstr "" -#: linespec.c:2883 +#: linespec.c:2901 #, possible-c-format msgid "No source file named %s." msgstr "" -#: linespec.c:3195 +#: linespec.c:3213 msgid "History values used in line specs must have integer values." msgstr "" -#: linespec.c:3218 +#: linespec.c:3236 msgid "Convenience variables used in line specs must have integer values." msgstr "" @@ -14853,47 +14940,41 @@ msgstr "" #: main.c:1085 msgid "" -" --use-deprecated-index-sections\n" -" Do not reject deprecated .gdb_index sections.\n" -msgstr "" - -#: main.c:1089 -msgid "" " --version Print version information and then exit.\n" " -w Use a window interface.\n" " --write Set writing into executable and core files.\n" " --xdb XDB compatibility mode.\n" msgstr "" -#: main.c:1095 +#: main.c:1091 msgid "" "\n" "At startup, GDB reads the following init files and executes their commands:\n" msgstr "" -#: main.c:1099 +#: main.c:1095 #, possible-c-format msgid " * system-wide init file: %s\n" msgstr "" -#: main.c:1103 +#: main.c:1099 #, possible-c-format msgid " * user-specific init file: %s\n" msgstr "" -#: main.c:1107 +#: main.c:1103 #, possible-c-format msgid " * local init file (see also 'set auto-load local-gdbinit'): ./%s\n" msgstr "" -#: main.c:1110 +#: main.c:1106 msgid "" "\n" "For more information, type \"help\" from within GDB, or consult the\n" "GDB manual (available as on-line info or a printed manual).\n" msgstr "" -#: main.c:1115 +#: main.c:1111 #, possible-c-format msgid "Report bugs to \"%s\".\n" msgstr "" @@ -17169,7 +17250,7 @@ msgstr "" msgid "The given mask covers kernel address space and cannot be used.\n" msgstr "" -#: ppc-linux-tdep.c:1158 +#: ppc-linux-tdep.c:1159 msgid "Cannot find AT_ENTRY auxiliary vector entry." msgstr "" @@ -17410,7 +17491,7 @@ msgstr "" msgid "expected wchar_t argument for %%lc" msgstr "" -#: printcmd.c:2197 printcmd.c:2214 value.c:2288 +#: printcmd.c:2197 printcmd.c:2214 value.c:2292 msgid "Invalid floating value found in program." msgstr "" @@ -17940,40 +18021,40 @@ msgstr "" msgid "Show printing of pascal static members." msgstr "" -#: python/py-auto-load.c:61 +#: python/py-auto-load.c:57 #, possible-c-format msgid "Auto-loading of Python scripts is %s.\n" msgstr "" -#: python/py-auto-load.c:79 +#: python/py-auto-load.c:75 #, possible-c-format msgid "" "auto-load: Loading Python script \"%s\" by extension for objfile \"%s\".\n" msgstr "" -#: python/py-auto-load.c:124 +#: python/py-auto-load.c:120 #, possible-c-format msgid "Invalid entry in %s section" msgstr "" -#: python/py-auto-load.c:139 +#: python/py-auto-load.c:135 #, possible-c-format msgid "Non-null-terminated path in %s: %s" msgstr "" -#: python/py-auto-load.c:146 +#: python/py-auto-load.c:142 #, possible-c-format msgid "Empty path in %s" msgstr "" -#: python/py-auto-load.c:160 +#: python/py-auto-load.c:156 #, possible-c-format msgid "" "auto-load: Loading Python script \"%s\" from section \"%s\" of objfile \"%s" "\".\n" msgstr "" -#: python/py-auto-load.c:173 +#: python/py-auto-load.c:169 #, possible-c-format msgid "" "Missing auto-load scripts referenced in section %s\n" @@ -17981,45 +18062,45 @@ msgid "" "Use `info auto-load python [REGEXP]' to list them." msgstr "" -#: python/py-auto-load.c:220 +#: python/py-auto-load.c:216 #, possible-c-format msgid "Couldn't read %s section of %s" msgstr "" -#: python/py-auto-load.c:253 +#: python/py-auto-load.c:249 msgid "Set the debugger's behaviour regarding auto-loaded Python scripts." msgstr "" -#: python/py-auto-load.c:254 +#: python/py-auto-load.c:250 msgid "Show the debugger's behaviour regarding auto-loaded Python scripts." msgstr "" -#: python/py-auto-load.c:255 +#: python/py-auto-load.c:251 msgid "" "If enabled, auto-loaded Python scripts are loaded when the debugger reads\n" "an executable or shared library.\n" "This options has security implications for untrusted inferiors." msgstr "" -#: python/py-auto-load.c:264 +#: python/py-auto-load.c:260 msgid "" "Set the debugger's behaviour regarding auto-loaded Python scripts, " "deprecated." msgstr "" -#: python/py-auto-load.c:267 +#: python/py-auto-load.c:263 msgid "" "Show the debugger's behaviour regarding auto-loaded Python scripts, " "deprecated." msgstr "" -#: python/py-auto-load.c:282 +#: python/py-auto-load.c:278 msgid "" "Print the list of automatically loaded Python scripts.\n" "Usage: info auto-load python-scripts [REGEXP]" msgstr "" -#: python/py-auto-load.c:286 +#: python/py-auto-load.c:282 msgid "Print the list of automatically loaded Python scripts, deprecated." msgstr "" @@ -25959,7 +26040,7 @@ msgstr "" msgid "Not a numeric type." msgstr "" -#: valops.c:1002 valops.c:1354 value.c:881 +#: valops.c:1002 valops.c:1354 value.c:885 msgid "value has been optimized out" msgstr "" @@ -25976,7 +26057,7 @@ msgstr "" msgid "Value being assigned to is no longer active." msgstr "" -#: valops.c:1357 value.c:888 +#: valops.c:1357 value.c:892 msgid "value is not available" msgstr "" @@ -26453,83 +26534,83 @@ msgstr "" msgid "Show printing of array indexes" msgstr "" -#: value.c:1518 +#: value.c:1522 msgid "The history is empty." msgstr "" -#: value.c:1520 +#: value.c:1524 msgid "There is only one value in the history." msgstr "" -#: value.c:1522 +#: value.c:1526 #, possible-c-format msgid "History does not go back to $$%d." msgstr "" -#: value.c:1525 +#: value.c:1529 #, possible-c-format msgid "History has not yet reached $%d." msgstr "" -#: value.c:1681 +#: value.c:1685 msgid "Init-if-undefined requires an assignment expression." msgstr "" -#: value.c:1686 +#: value.c:1690 msgid "The first parameter to init-if-undefined should be a GDB variable." msgstr "" -#: value.c:1870 +#: value.c:1874 msgid "bad kind" msgstr "" #. We can never get a component of any other kind. -#: value.c:1959 +#: value.c:1963 msgid "set_internalvar_component" msgstr "" -#: value.c:1970 +#: value.c:1974 #, possible-c-format msgid "Cannot overwrite convenience function %s" msgstr "" -#: value.c:2258 +#: value.c:2262 msgid "" "No debugger convenience variables now defined.\n" "Convenience variables have names starting with \"$\";\n" "use \"set\" as in \"set $foo = 5\" to define them.\n" msgstr "" -#: value.c:2452 +#: value.c:2456 msgid "Value can't be converted to integer." msgstr "" #. FIXME: would like to include fieldval in the message, but #. we don't have a sprintf_longest. -#: value.c:2994 +#: value.c:2998 #, possible-c-format msgid "Value does not fit in %d bits." msgstr "" -#: value.c:3045 +#: value.c:3049 #, possible-c-format msgid "Unexpected type (%d) encountered for integer constant." msgstr "" -#: value.c:3081 +#: value.c:3085 #, possible-c-format msgid "Unexpected type (%d) encountered for unsigned integer constant." msgstr "" -#: value.c:3173 +#: value.c:3177 msgid "Unexpected type encountered for floating constant." msgstr "" -#: value.c:3333 +#: value.c:3337 msgid "Function return type unknown." msgstr "" -#: value.c:3365 +#: value.c:3369 msgid "" "Debugger convenience (\"$foo\") variables.\n" "These variables are created when you assign them values;\n" @@ -26540,11 +26621,11 @@ msgid "" "\"$__\" holds the contents of the last address examined with \"x\"." msgstr "" -#: value.c:3375 +#: value.c:3379 msgid "Elements of value history around item number IDX (or last ten)." msgstr "" -#: value.c:3379 +#: value.c:3383 msgid "" "Initialize a convenience variable if necessary.\n" "init-if-undefined VARIABLE = EXPRESSION\n" @@ -26553,7 +26634,7 @@ msgid "" "VARIABLE is already initialized." msgstr "" -#: value.c:3386 +#: value.c:3390 msgid "Placeholder command for showing help on convenience functions." msgstr "" diff --git a/gdb/ppc-linux-tdep.c b/gdb/ppc-linux-tdep.c index c7b70db..ccded83 100644 --- a/gdb/ppc-linux-tdep.c +++ b/gdb/ppc-linux-tdep.c @@ -648,8 +648,9 @@ powerpc_linux_in_dynsym_resolve_code (CORE_ADDR pc) /* Check if we are in the resolver. */ sym = lookup_minimal_symbol_by_pc (pc); - if ((strcmp (SYMBOL_LINKAGE_NAME (sym), "__glink") == 0) - || (strcmp (SYMBOL_LINKAGE_NAME (sym), "__glink_PLTresolve") == 0)) + if (sym != NULL + && (strcmp (SYMBOL_LINKAGE_NAME (sym), "__glink") == 0 + || strcmp (SYMBOL_LINKAGE_NAME (sym), "__glink_PLTresolve") == 0)) return 1; return 0; diff --git a/gdb/python/py-auto-load.c b/gdb/python/py-auto-load.c index 8512129..a018f5f 100644 --- a/gdb/python/py-auto-load.c +++ b/gdb/python/py-auto-load.c @@ -31,10 +31,6 @@ #include "python-internal.h" -/* The suffix of per-objfile scripts to auto-load. - E.g. When the program loads libfoo.so, look for libfoo-gdb.py. */ -#define GDBPY_AUTO_FILE_NAME "-gdb.py" - /* The section to look for Python auto-loaded scripts (in file formats that support sections). Each entry in this section is a byte of value 1, and then the nul-terminated diff --git a/gdb/python/python.h b/gdb/python/python.h index dd7066f..0d07271 100644 --- a/gdb/python/python.h +++ b/gdb/python/python.h @@ -24,6 +24,10 @@ struct breakpoint_object; +/* The suffix of per-objfile scripts to auto-load. + E.g. When the program loads libfoo.so, look for libfoo-gdb.py. */ +#define GDBPY_AUTO_FILE_NAME "-gdb.py" + extern void finish_python_initialization (void); void eval_python_from_control_command (struct command_line *); diff --git a/gdb/symfile.c b/gdb/symfile.c index 01252e2..175d61c 100644 --- a/gdb/symfile.c +++ b/gdb/symfile.c @@ -2889,8 +2889,8 @@ allocate_symtab (const char *filename, struct objfile *objfile) last_objfile_name); } fprintf_unfiltered (gdb_stdlog, - "Created symtab 0x%lx for module %s.\n", - (long) symtab, filename); + "Created symtab %s for module %s.\n", + host_address_to_string (symtab), filename); } return (symtab); diff --git a/gdb/testsuite/ChangeLog b/gdb/testsuite/ChangeLog index 82a9903..bb9a1df 100644 --- a/gdb/testsuite/ChangeLog +++ b/gdb/testsuite/ChangeLog @@ -1,3 +1,63 @@ +2012-11-15 Luis Machado + + * gdb.mi/mi-var-create-rtti.c: New file. + * gdb.mi/mi-var-create-rtti.exp: New file. + +2012-10-15 Jan Kratochvil + Doug Evans + + Fix recent gdb_breakpoint regression. + * gdb.java/jmisc.exp: gdb_breakpoint for $function - remove curly + braces from the parameter. + * gdb.java/jprint.exp: Likewise. + +2012-10-15 Doug Evans + + * lib/gdb.exp (runto): Fix call to gdb_breakpoint. + +2012-10-11 Doug Evans + + PR breakpoints/14643. + * gdb.linespec/ls-errs.exp: Change tests of "b if|task|thread". + * gdb.linespec/thread.c: New file. + * gdb.linespec/thread.exp: New file. + + * lib/gdb.exp (gdb_breakpoint): Fix varargs scan. + Recognize "message" -> print pass and fail. Add eof case. + (runto): Recognize message, no-message. Print pass/fail if requested, + with same treatment as gdb_breakpoint. + (runto_main): Pass no-message to runto. + (gdb_internal_error_resync): Add log message. + +2012-10-06 Jan Kratochvil + + Fix crash during stepping on ppc32. + * gdb.base/step-symless.c: New file. + * gdb.base/step-symless.exp: New file. + +2012-09-17 Jan Kratochvil + + PR 14119 + * gdb.arch/amd64-tailcall-ret.S: New file. + * gdb.arch/amd64-tailcall-ret.c: New file. + * gdb.arch/amd64-tailcall-ret.exp: New file. + * gdb.reverse/amd64-tailcall-reverse.S: New file. + * gdb.reverse/amd64-tailcall-reverse.c: New file. + * gdb.reverse/amd64-tailcall-reverse.exp: New file. + +2012-09-17 Jan Kratochvil + + PR 14548 + * gdb.reverse/singlejmp-reverse-nodebug.S: New file. + * gdb.reverse/singlejmp-reverse-nodebug.c: New file. + * gdb.reverse/singlejmp-reverse.S: New file. + * gdb.reverse/singlejmp-reverse.c: New file. + * gdb.reverse/singlejmp-reverse.exp: New file. + +2012-09-13 Jan Kratochvil + + * gdb.base/valgrind-infcall.exp: Remove comment about Ubuntu. + 2012-08-16 Tom Tromey * gdb.python/py-mi.exp: Add test for printer whose children diff --git a/gdb/testsuite/gdb.arch/amd64-tailcall-ret.S b/gdb/testsuite/gdb.arch/amd64-tailcall-ret.S new file mode 100644 index 0000000..e64b70d --- /dev/null +++ b/gdb/testsuite/gdb.arch/amd64-tailcall-ret.S @@ -0,0 +1,357 @@ +/* This testcase is part of GDB, the GNU debugger. + + Copyright 2012 Free Software Foundation, Inc. + + This program is free software; you can redistribute it and/or modify + it under the terms of the GNU General Public License as published by + the Free Software Foundation; either version 3 of the License, or + (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License + along with this program. If not, see . */ + +/* This source file was generated by: + gcc -o gdb.arch/amd64-tailcall-ret.S gdb.arch/amd64-tailcall-ret.c -Wall -S -dA -O2 -g + */ + + .file "amd64-tailcall-ret.c" + .text +.Ltext0: + .p2align 4,,15 + .type g, @function +g: +.LFB0: + .file 1 "gdb.arch/amd64-tailcall-ret.c" + # gdb.arch/amd64-tailcall-ret.c:22 + .loc 1 22 0 + .cfi_startproc +# BLOCK 2 freq:10000 seq:0 +# PRED: ENTRY [100.0%] (fallthru) + # gdb.arch/amd64-tailcall-ret.c:23 + .loc 1 23 0 + movl $2, v(%rip) +# SUCC: EXIT [100.0%] + ret + .cfi_endproc +.LFE0: + .size g, .-g + .p2align 4,,15 + .type f, @function +f: +.LFB1: + # gdb.arch/amd64-tailcall-ret.c:28 + .loc 1 28 0 + .cfi_startproc +# BLOCK 2 freq:10000 seq:0 +# PRED: ENTRY [100.0%] (fallthru) + # gdb.arch/amd64-tailcall-ret.c:29 + .loc 1 29 0 + jmp g +# SUCC: EXIT [100.0%] (ab,sibcall) +.LVL0: + .cfi_endproc +.LFE1: + .size f, .-f + .section .text.startup,"ax",@progbits + .p2align 4,,15 + .globl main + .type main, @function +main: +.LFB2: + # gdb.arch/amd64-tailcall-ret.c:34 + .loc 1 34 0 + .cfi_startproc +# BLOCK 2 freq:10000 seq:0 +# PRED: ENTRY [100.0%] (fallthru) + # gdb.arch/amd64-tailcall-ret.c:35 + .loc 1 35 0 + call f +.LVL1: + # gdb.arch/amd64-tailcall-ret.c:36 + .loc 1 36 0 + call f +.LVL2: + # gdb.arch/amd64-tailcall-ret.c:37 + .loc 1 37 0 + movl $3, v(%rip) + # gdb.arch/amd64-tailcall-ret.c:39 + .loc 1 39 0 + xorl %eax, %eax +# SUCC: EXIT [100.0%] + ret + .cfi_endproc +.LFE2: + .size main, .-main + .comm v,4,4 + .text +.Letext0: + .section .debug_info,"",@progbits +.Ldebug_info0: + .long 0xd5 # Length of Compilation Unit Info + .value 0x2 # DWARF version number + .long .Ldebug_abbrev0 # Offset Into Abbrev. Section + .byte 0x8 # Pointer Size (in bytes) + .uleb128 0x1 # (DIE (0xb) DW_TAG_compile_unit) + .long .LASF0 # DW_AT_producer: "GNU C 4.7.2 20120911 (prerelease)" + .byte 0x1 # DW_AT_language + .long .LASF1 # DW_AT_name: "gdb.arch/amd64-tailcall-ret.c" + .long .LASF2 # DW_AT_comp_dir: "" + .long .Ldebug_ranges0+0 # DW_AT_ranges + .quad 0 # DW_AT_low_pc + .quad 0 # DW_AT_entry_pc + .long .Ldebug_line0 # DW_AT_stmt_list + .uleb128 0x2 # (DIE (0x31) DW_TAG_subprogram) + .ascii "g\0" # DW_AT_name + .byte 0x1 # DW_AT_decl_file (gdb.arch/amd64-tailcall-ret.c) + .byte 0x15 # DW_AT_decl_line + .byte 0x1 # DW_AT_prototyped + .quad .LFB0 # DW_AT_low_pc + .quad .LFE0 # DW_AT_high_pc + .byte 0x2 # DW_AT_frame_base + .byte 0x77 # DW_OP_breg7 + .sleb128 8 + .byte 0x1 # DW_AT_GNU_all_call_sites + .uleb128 0x3 # (DIE (0x4b) DW_TAG_subprogram) + .ascii "f\0" # DW_AT_name + .byte 0x1 # DW_AT_decl_file (gdb.arch/amd64-tailcall-ret.c) + .byte 0x1b # DW_AT_decl_line + .byte 0x1 # DW_AT_prototyped + .quad .LFB1 # DW_AT_low_pc + .quad .LFE1 # DW_AT_high_pc + .byte 0x2 # DW_AT_frame_base + .byte 0x77 # DW_OP_breg7 + .sleb128 8 + .byte 0x1 # DW_AT_GNU_all_call_sites + .long 0x78 # DW_AT_sibling + .uleb128 0x4 # (DIE (0x69) DW_TAG_GNU_call_site) + .quad .LVL0 # DW_AT_low_pc + .byte 0x1 # DW_AT_GNU_tail_call + .long 0x31 # DW_AT_abstract_origin + .byte 0 # end of children of DIE 0x4b + .uleb128 0x5 # (DIE (0x78) DW_TAG_subprogram) + .byte 0x1 # DW_AT_external + .long .LASF3 # DW_AT_name: "main" + .byte 0x1 # DW_AT_decl_file (gdb.arch/amd64-tailcall-ret.c) + .byte 0x21 # DW_AT_decl_line + .byte 0x1 # DW_AT_prototyped + .long 0xb8 # DW_AT_type + .quad .LFB2 # DW_AT_low_pc + .quad .LFE2 # DW_AT_high_pc + .byte 0x2 # DW_AT_frame_base + .byte 0x77 # DW_OP_breg7 + .sleb128 8 + .byte 0x1 # DW_AT_GNU_all_call_sites + .long 0xb8 # DW_AT_sibling + .uleb128 0x6 # (DIE (0x9d) DW_TAG_GNU_call_site) + .quad .LVL1 # DW_AT_low_pc + .long 0x4b # DW_AT_abstract_origin + .uleb128 0x6 # (DIE (0xaa) DW_TAG_GNU_call_site) + .quad .LVL2 # DW_AT_low_pc + .long 0x4b # DW_AT_abstract_origin + .byte 0 # end of children of DIE 0x78 + .uleb128 0x7 # (DIE (0xb8) DW_TAG_base_type) + .byte 0x4 # DW_AT_byte_size + .byte 0x5 # DW_AT_encoding + .ascii "int\0" # DW_AT_name + .uleb128 0x8 # (DIE (0xbf) DW_TAG_variable) + .ascii "v\0" # DW_AT_name + .byte 0x1 # DW_AT_decl_file (gdb.arch/amd64-tailcall-ret.c) + .byte 0x12 # DW_AT_decl_line + .long 0xd3 # DW_AT_type + .byte 0x1 # DW_AT_external + .byte 0x9 # DW_AT_location + .byte 0x3 # DW_OP_addr + .quad v + .uleb128 0x9 # (DIE (0xd3) DW_TAG_volatile_type) + .long 0xb8 # DW_AT_type + .byte 0 # end of children of DIE 0xb + .section .debug_abbrev,"",@progbits +.Ldebug_abbrev0: + .uleb128 0x1 # (abbrev code) + .uleb128 0x11 # (TAG: DW_TAG_compile_unit) + .byte 0x1 # DW_children_yes + .uleb128 0x25 # (DW_AT_producer) + .uleb128 0xe # (DW_FORM_strp) + .uleb128 0x13 # (DW_AT_language) + .uleb128 0xb # (DW_FORM_data1) + .uleb128 0x3 # (DW_AT_name) + .uleb128 0xe # (DW_FORM_strp) + .uleb128 0x1b # (DW_AT_comp_dir) + .uleb128 0xe # (DW_FORM_strp) + .uleb128 0x55 # (DW_AT_ranges) + .uleb128 0x6 # (DW_FORM_data4) + .uleb128 0x11 # (DW_AT_low_pc) + .uleb128 0x1 # (DW_FORM_addr) + .uleb128 0x52 # (DW_AT_entry_pc) + .uleb128 0x1 # (DW_FORM_addr) + .uleb128 0x10 # (DW_AT_stmt_list) + .uleb128 0x6 # (DW_FORM_data4) + .byte 0 + .byte 0 + .uleb128 0x2 # (abbrev code) + .uleb128 0x2e # (TAG: DW_TAG_subprogram) + .byte 0 # DW_children_no + .uleb128 0x3 # (DW_AT_name) + .uleb128 0x8 # (DW_FORM_string) + .uleb128 0x3a # (DW_AT_decl_file) + .uleb128 0xb # (DW_FORM_data1) + .uleb128 0x3b # (DW_AT_decl_line) + .uleb128 0xb # (DW_FORM_data1) + .uleb128 0x27 # (DW_AT_prototyped) + .uleb128 0xc # (DW_FORM_flag) + .uleb128 0x11 # (DW_AT_low_pc) + .uleb128 0x1 # (DW_FORM_addr) + .uleb128 0x12 # (DW_AT_high_pc) + .uleb128 0x1 # (DW_FORM_addr) + .uleb128 0x40 # (DW_AT_frame_base) + .uleb128 0xa # (DW_FORM_block1) + .uleb128 0x2117 # (DW_AT_GNU_all_call_sites) + .uleb128 0xc # (DW_FORM_flag) + .byte 0 + .byte 0 + .uleb128 0x3 # (abbrev code) + .uleb128 0x2e # (TAG: DW_TAG_subprogram) + .byte 0x1 # DW_children_yes + .uleb128 0x3 # (DW_AT_name) + .uleb128 0x8 # (DW_FORM_string) + .uleb128 0x3a # (DW_AT_decl_file) + .uleb128 0xb # (DW_FORM_data1) + .uleb128 0x3b # (DW_AT_decl_line) + .uleb128 0xb # (DW_FORM_data1) + .uleb128 0x27 # (DW_AT_prototyped) + .uleb128 0xc # (DW_FORM_flag) + .uleb128 0x11 # (DW_AT_low_pc) + .uleb128 0x1 # (DW_FORM_addr) + .uleb128 0x12 # (DW_AT_high_pc) + .uleb128 0x1 # (DW_FORM_addr) + .uleb128 0x40 # (DW_AT_frame_base) + .uleb128 0xa # (DW_FORM_block1) + .uleb128 0x2117 # (DW_AT_GNU_all_call_sites) + .uleb128 0xc # (DW_FORM_flag) + .uleb128 0x1 # (DW_AT_sibling) + .uleb128 0x13 # (DW_FORM_ref4) + .byte 0 + .byte 0 + .uleb128 0x4 # (abbrev code) + .uleb128 0x4109 # (TAG: DW_TAG_GNU_call_site) + .byte 0 # DW_children_no + .uleb128 0x11 # (DW_AT_low_pc) + .uleb128 0x1 # (DW_FORM_addr) + .uleb128 0x2115 # (DW_AT_GNU_tail_call) + .uleb128 0xc # (DW_FORM_flag) + .uleb128 0x31 # (DW_AT_abstract_origin) + .uleb128 0x13 # (DW_FORM_ref4) + .byte 0 + .byte 0 + .uleb128 0x5 # (abbrev code) + .uleb128 0x2e # (TAG: DW_TAG_subprogram) + .byte 0x1 # DW_children_yes + .uleb128 0x3f # (DW_AT_external) + .uleb128 0xc # (DW_FORM_flag) + .uleb128 0x3 # (DW_AT_name) + .uleb128 0xe # (DW_FORM_strp) + .uleb128 0x3a # (DW_AT_decl_file) + .uleb128 0xb # (DW_FORM_data1) + .uleb128 0x3b # (DW_AT_decl_line) + .uleb128 0xb # (DW_FORM_data1) + .uleb128 0x27 # (DW_AT_prototyped) + .uleb128 0xc # (DW_FORM_flag) + .uleb128 0x49 # (DW_AT_type) + .uleb128 0x13 # (DW_FORM_ref4) + .uleb128 0x11 # (DW_AT_low_pc) + .uleb128 0x1 # (DW_FORM_addr) + .uleb128 0x12 # (DW_AT_high_pc) + .uleb128 0x1 # (DW_FORM_addr) + .uleb128 0x40 # (DW_AT_frame_base) + .uleb128 0xa # (DW_FORM_block1) + .uleb128 0x2117 # (DW_AT_GNU_all_call_sites) + .uleb128 0xc # (DW_FORM_flag) + .uleb128 0x1 # (DW_AT_sibling) + .uleb128 0x13 # (DW_FORM_ref4) + .byte 0 + .byte 0 + .uleb128 0x6 # (abbrev code) + .uleb128 0x4109 # (TAG: DW_TAG_GNU_call_site) + .byte 0 # DW_children_no + .uleb128 0x11 # (DW_AT_low_pc) + .uleb128 0x1 # (DW_FORM_addr) + .uleb128 0x31 # (DW_AT_abstract_origin) + .uleb128 0x13 # (DW_FORM_ref4) + .byte 0 + .byte 0 + .uleb128 0x7 # (abbrev code) + .uleb128 0x24 # (TAG: DW_TAG_base_type) + .byte 0 # DW_children_no + .uleb128 0xb # (DW_AT_byte_size) + .uleb128 0xb # (DW_FORM_data1) + .uleb128 0x3e # (DW_AT_encoding) + .uleb128 0xb # (DW_FORM_data1) + .uleb128 0x3 # (DW_AT_name) + .uleb128 0x8 # (DW_FORM_string) + .byte 0 + .byte 0 + .uleb128 0x8 # (abbrev code) + .uleb128 0x34 # (TAG: DW_TAG_variable) + .byte 0 # DW_children_no + .uleb128 0x3 # (DW_AT_name) + .uleb128 0x8 # (DW_FORM_string) + .uleb128 0x3a # (DW_AT_decl_file) + .uleb128 0xb # (DW_FORM_data1) + .uleb128 0x3b # (DW_AT_decl_line) + .uleb128 0xb # (DW_FORM_data1) + .uleb128 0x49 # (DW_AT_type) + .uleb128 0x13 # (DW_FORM_ref4) + .uleb128 0x3f # (DW_AT_external) + .uleb128 0xc # (DW_FORM_flag) + .uleb128 0x2 # (DW_AT_location) + .uleb128 0xa # (DW_FORM_block1) + .byte 0 + .byte 0 + .uleb128 0x9 # (abbrev code) + .uleb128 0x35 # (TAG: DW_TAG_volatile_type) + .byte 0 # DW_children_no + .uleb128 0x49 # (DW_AT_type) + .uleb128 0x13 # (DW_FORM_ref4) + .byte 0 + .byte 0 + .byte 0 + .section .debug_aranges,"",@progbits + .long 0x3c # Length of Address Ranges Info + .value 0x2 # DWARF Version + .long .Ldebug_info0 # Offset of Compilation Unit Info + .byte 0x8 # Size of Address + .byte 0 # Size of Segment Descriptor + .value 0 # Pad to 16 byte boundary + .value 0 + .quad .Ltext0 # Address + .quad .Letext0-.Ltext0 # Length + .quad .LFB2 # Address + .quad .LFE2-.LFB2 # Length + .quad 0 + .quad 0 + .section .debug_ranges,"",@progbits +.Ldebug_ranges0: + .quad .Ltext0 # Offset 0 + .quad .Letext0 + .quad .LFB2 # Offset 0x10 + .quad .LFE2 + .quad 0 + .quad 0 + .section .debug_line,"",@progbits +.Ldebug_line0: + .section .debug_str,"MS",@progbits,1 +.LASF0: + .string "GNU C 4.7.2 20120911 (prerelease)" +.LASF1: + .string "gdb.arch/amd64-tailcall-ret.c" +.LASF2: + .string "" +.LASF3: + .string "main" + .ident "GCC: (GNU) 4.7.2 20120911 (prerelease)" + .section .note.GNU-stack,"",@progbits diff --git a/gdb/testsuite/gdb.arch/amd64-tailcall-ret.c b/gdb/testsuite/gdb.arch/amd64-tailcall-ret.c new file mode 100644 index 0000000..ec9a1fb --- /dev/null +++ b/gdb/testsuite/gdb.arch/amd64-tailcall-ret.c @@ -0,0 +1,39 @@ +/* This testcase is part of GDB, the GNU debugger. + + Copyright 2012 Free Software Foundation, Inc. + + This program is free software; you can redistribute it and/or modify + it under the terms of the GNU General Public License as published by + the Free Software Foundation; either version 3 of the License, or + (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License + along with this program. If not, see . */ + +volatile int v; + +static __attribute__ ((noinline, noclone)) void +g (void) +{ + v = 2; +} + +static __attribute__ ((noinline, noclone)) void +f (void) +{ + g (); +} + +int +main (void) +{ + f (); /* first */ + f (); /* second */ + v = 3; + return 0; +} diff --git a/gdb/testsuite/gdb.arch/amd64-tailcall-ret.exp b/gdb/testsuite/gdb.arch/amd64-tailcall-ret.exp new file mode 100644 index 0000000..8460893 --- /dev/null +++ b/gdb/testsuite/gdb.arch/amd64-tailcall-ret.exp @@ -0,0 +1,44 @@ +# Copyright (C) 2012 Free Software Foundation, Inc. +# +# This program is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 3 of the License, or +# (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program. If not, see . + +set opts {} +standard_testfile .S + +if [info exists COMPILE] { + # make check RUNTESTFLAGS="gdb.arch/amd64-tailcall-ret.exp COMPILE=1" + standard_testfile + lappend opts debug optimize=-O2 +} elseif { ![istarget x86_64-*-* ] || ![is_lp64_target] } { + verbose "Skipping ${testfile}." + return +} + +if { [prepare_for_testing ${testfile}.exp ${testfile} ${srcfile} $opts] } { + return -1 +} + +if ![runto_main] { + return -1 +} + +gdb_breakpoint "g" +gdb_continue_to_breakpoint "g" ".* v = 2;" + +gdb_test "return" { f \(\); /\* second \*/} "return" \ + {Make g return now\? \(y or n\) } "y" + +gdb_continue_to_breakpoint "g" ".* v = 2;" + +gdb_test "finish" " v = 3;" diff --git a/gdb/testsuite/gdb.base/step-symless.c b/gdb/testsuite/gdb.base/step-symless.c new file mode 100644 index 0000000..97eaf5e --- /dev/null +++ b/gdb/testsuite/gdb.base/step-symless.c @@ -0,0 +1,38 @@ +/* This testcase is part of GDB, the GNU debugger. + + Copyright 2012 Free Software Foundation, Inc. + + This program is free software; you can redistribute it and/or modify + it under the terms of the GNU General Public License as published by + the Free Software Foundation; either version 3 of the License, or + (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License + along with this program. If not, see . */ + +static volatile int v; + +static void +symful (void) +{ + v++; +} + +static void +symless (void) +{ + v++; +} + +int +main (void) +{ + symless (); + symful (); + return 0; +} diff --git a/gdb/testsuite/gdb.base/step-symless.exp b/gdb/testsuite/gdb.base/step-symless.exp new file mode 100644 index 0000000..47d36ab --- /dev/null +++ b/gdb/testsuite/gdb.base/step-symless.exp @@ -0,0 +1,41 @@ +# Copyright (C) 2012 Free Software Foundation, Inc. + +# This program is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 3 of the License, or +# (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program. If not, see . + +standard_testfile +if {[build_executable ${testfile}.exp ${testfile} ${srcfile} {nodebug}] == -1} { + return -1 +} + +# We need those symbols global to access them from the .S file. +set test "strip stub symbols" +set objcopy_program [transform objcopy] +set result [catch "exec $objcopy_program -N symless ${binfile}" output] +verbose "result is $result" +verbose "output is $output" +if {$result != 0} { + fail $test + return +} +pass $test + +clean_restart $testfile + +if ![runto_main] { + return -1 +} + +gdb_breakpoint symful + +gdb_test "step" "Single stepping until exit.*no line number information.*\r\nBreakpoint \[^\r\n\]* in \\.?symful \\(\\)" diff --git a/gdb/testsuite/gdb.base/valgrind-infcall.exp b/gdb/testsuite/gdb.base/valgrind-infcall.exp index 84d6819..107fd3c 100644 --- a/gdb/testsuite/gdb.base/valgrind-infcall.exp +++ b/gdb/testsuite/gdb.base/valgrind-infcall.exp @@ -96,7 +96,6 @@ while {$loop && $continue_count < 100} { gdb_test_multiple "continue" "" { -re "Invalid free\\(\\).*: main .*\r\n$gdb_prompt $" { pass $test - # In Ubuntu 10.04.4 environments 'break' does not work here. set loop 0 } -re "Remote connection closed.*\r\n$gdb_prompt $" { diff --git a/gdb/testsuite/gdb.java/jmisc.exp b/gdb/testsuite/gdb.java/jmisc.exp index 7215861..4bd1800 100644 --- a/gdb/testsuite/gdb.java/jmisc.exp +++ b/gdb/testsuite/gdb.java/jmisc.exp @@ -43,8 +43,8 @@ if [set_lang_java] then { # signature. runto_main set function "${testfile}.main(java.lang.String\[\])" - gdb_breakpoint "$function" { allow-pending } - gdb_breakpoint "${function}void" { allow-pending } + gdb_breakpoint "$function" allow-pending + gdb_breakpoint "${function}void" allow-pending gdb_continue_to_breakpoint $function gdb_test_multiple "ptype jmisc" "ptype jmisc" { diff --git a/gdb/testsuite/gdb.java/jprint.exp b/gdb/testsuite/gdb.java/jprint.exp index b2d5d31..116a4ba 100644 --- a/gdb/testsuite/gdb.java/jprint.exp +++ b/gdb/testsuite/gdb.java/jprint.exp @@ -43,8 +43,8 @@ if [set_lang_java] then { # signature. runto_main set function "${testfile}.main(java.lang.String\[\])" - gdb_breakpoint "$function" { allow-pending } - gdb_breakpoint "${function}void" { allow-pending } + gdb_breakpoint "$function" allow-pending + gdb_breakpoint "${function}void" allow-pending gdb_continue_to_breakpoint $function gdb_test "p jvclass.addprint(4,5,6)" " = 15" "unambiguous static call" diff --git a/gdb/testsuite/gdb.linespec/ls-errs.exp b/gdb/testsuite/gdb.linespec/ls-errs.exp index 5668397..7ee2623 100644 --- a/gdb/testsuite/gdb.linespec/ls-errs.exp +++ b/gdb/testsuite/gdb.linespec/ls-errs.exp @@ -171,7 +171,7 @@ foreach x {"3" "+100" "-100" "foo"} { } foreach x {"if" "task" "thread"} { - add the_tests $x unexpected_opt "keyword" $x + add the_tests $x invalid_function $x } add the_tests "'main.c'flubber" unexpected_opt "string" "flubber" diff --git a/gdb/testsuite/gdb.linespec/thread.c b/gdb/testsuite/gdb.linespec/thread.c new file mode 100644 index 0000000..185e4a3 --- /dev/null +++ b/gdb/testsuite/gdb.linespec/thread.c @@ -0,0 +1,31 @@ +/* This testcase is part of GDB, the GNU debugger. + + Copyright 2012 Free Software Foundation, Inc. + + This program is free software; you can redistribute it and/or modify + it under the terms of the GNU General Public License as published by + the Free Software Foundation; either version 3 of the License, or + (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License + along with this program. If not, see . */ + +/* http://sourceware.org/bugzilla/show_bug.cgi?id=14643 */ + +static void +thread () +{ +} + +int +main () +{ + int x = 0; + thread (); /* set breakpoint 1 here */ + return x; +} diff --git a/gdb/testsuite/gdb.linespec/thread.exp b/gdb/testsuite/gdb.linespec/thread.exp new file mode 100644 index 0000000..1e8ee46 --- /dev/null +++ b/gdb/testsuite/gdb.linespec/thread.exp @@ -0,0 +1,41 @@ +# Copyright 2012 Free Software Foundation, Inc. + +# This program is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 3 of the License, or +# (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program. If not, see . + +# http://sourceware.org/bugzilla/show_bug.cgi?id=14643 +# gdb 7.5 thinks "thread" is a linespec keyword. + +standard_testfile +set exefile $testfile + +if {[prepare_for_testing $testfile $exefile $srcfile {debug}]} { + return -1 +} + +if ![runto_main] { + fail "Can't run to main" + return 0 +} + +set bp_location1 [gdb_get_line_number "set breakpoint 1 here"] + +gdb_test "break $srcfile:$bp_location1" \ + "Breakpoint.*at.* file .*$srcfile, line $bp_location1\\." \ + "breakpoint line number in file" + +gdb_continue_to_breakpoint "$bp_location1" + +gdb_breakpoint "thread" "message" + +gdb_continue_to_breakpoint "thread function" diff --git a/gdb/testsuite/gdb.mi/mi-var-create-rtti.c b/gdb/testsuite/gdb.mi/mi-var-create-rtti.c new file mode 100644 index 0000000..897c59d --- /dev/null +++ b/gdb/testsuite/gdb.mi/mi-var-create-rtti.c @@ -0,0 +1,24 @@ +/* This testcase is part of GDB, the GNU debugger. + + Copyright 2012 Free Software Foundation, Inc. + + This program is free software; you can redistribute it and/or modify + it under the terms of the GNU General Public License as published by + the Free Software Foundation; either version 3 of the License, or + (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License + along with this program. If not, see . */ + +int +main (void) +{ + int i = 0; + + return i; /* next-line */ +} diff --git a/gdb/testsuite/gdb.mi/mi-var-create-rtti.exp b/gdb/testsuite/gdb.mi/mi-var-create-rtti.exp new file mode 100644 index 0000000..16d8551 --- /dev/null +++ b/gdb/testsuite/gdb.mi/mi-var-create-rtti.exp @@ -0,0 +1,52 @@ +# Copyright 2012 Free Software Foundation, Inc. + +# This program is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 3 of the License, or +# (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program. If not, see . + +load_lib mi-support.exp +set MIFLAGS "-i=mi" + +gdb_exit +if [mi_gdb_start] { + continue +} + +standard_testfile .c +set opts {debug} + +if [build_executable $testfile.exp $testfile $srcfile $opts] { + return -1 +} + +mi_delete_breakpoints +mi_gdb_reinitialize_dir $srcdir/$subdir +mi_gdb_load ${binfile} + +if ![mi_run_to_main] { + untested "could not run to main" + return -1 +} + +# Test creating a register-based variable. We pick +# register SP since it is a pointer to data. This checks +# for a regression when creating MI variables from pointers +# with "print object" enabled. + +# Enable "print object" +mi_gdb_test "-gdb-set print object on" ".*" + +# Test creating a variable for $sp +mi_gdb_test "-var-create sp1 * \$sp" \ + "\\^done,name=\"sp1\",numchild=\"0\",value=\"$hex\",type=\"void \\*\",has_more=\"0\"" \ + "-var-create sp1 * \$sp" +gdb_exit diff --git a/gdb/testsuite/gdb.reverse/amd64-tailcall-reverse.S b/gdb/testsuite/gdb.reverse/amd64-tailcall-reverse.S new file mode 100644 index 0000000..71a7278 --- /dev/null +++ b/gdb/testsuite/gdb.reverse/amd64-tailcall-reverse.S @@ -0,0 +1,353 @@ +/* This testcase is part of GDB, the GNU debugger. + + Copyright 2012 Free Software Foundation, Inc. + + This program is free software; you can redistribute it and/or modify + it under the terms of the GNU General Public License as published by + the Free Software Foundation; either version 3 of the License, or + (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License + along with this program. If not, see . */ + +/* This source file was generated by: + gcc -o gdb.reverse/amd64-tailcall-reverse.S gdb.reverse/amd64-tailcall-reverse.c -Wall -S -dA -O2 -g + */ + + .file "amd64-tailcall-reverse.c" + .text +.Ltext0: + .p2align 4,,15 + .type g, @function +g: +.LFB0: + .file 1 "gdb.reverse/amd64-tailcall-reverse.c" + # gdb.reverse/amd64-tailcall-reverse.c:22 + .loc 1 22 0 + .cfi_startproc +# BLOCK 2 freq:10000 seq:0 +# PRED: ENTRY [100.0%] (fallthru) + # gdb.reverse/amd64-tailcall-reverse.c:23 + .loc 1 23 0 + movl $2, v(%rip) +# SUCC: EXIT [100.0%] + ret + .cfi_endproc +.LFE0: + .size g, .-g + .p2align 4,,15 + .type f, @function +f: +.LFB1: + # gdb.reverse/amd64-tailcall-reverse.c:28 + .loc 1 28 0 + .cfi_startproc +# BLOCK 2 freq:10000 seq:0 +# PRED: ENTRY [100.0%] (fallthru) + # gdb.reverse/amd64-tailcall-reverse.c:29 + .loc 1 29 0 + jmp g +# SUCC: EXIT [100.0%] (ab,sibcall) +.LVL0: + .cfi_endproc +.LFE1: + .size f, .-f + .section .text.startup,"ax",@progbits + .p2align 4,,15 + .globl main + .type main, @function +main: +.LFB2: + # gdb.reverse/amd64-tailcall-reverse.c:34 + .loc 1 34 0 + .cfi_startproc +# BLOCK 2 freq:10000 seq:0 +# PRED: ENTRY [100.0%] (fallthru) + # gdb.reverse/amd64-tailcall-reverse.c:35 + .loc 1 35 0 + movl $1, v(%rip) + # gdb.reverse/amd64-tailcall-reverse.c:36 + .loc 1 36 0 + call f +.LVL1: + # gdb.reverse/amd64-tailcall-reverse.c:37 + .loc 1 37 0 + movl $3, v(%rip) + # gdb.reverse/amd64-tailcall-reverse.c:39 + .loc 1 39 0 + xorl %eax, %eax +# SUCC: EXIT [100.0%] + ret + .cfi_endproc +.LFE2: + .size main, .-main + .comm v,4,4 + .text +.Letext0: + .section .debug_info,"",@progbits +.Ldebug_info0: + .long 0xc8 # Length of Compilation Unit Info + .value 0x2 # DWARF version number + .long .Ldebug_abbrev0 # Offset Into Abbrev. Section + .byte 0x8 # Pointer Size (in bytes) + .uleb128 0x1 # (DIE (0xb) DW_TAG_compile_unit) + .long .LASF0 # DW_AT_producer: "GNU C 4.7.2 20120911 (prerelease)" + .byte 0x1 # DW_AT_language + .long .LASF1 # DW_AT_name: "gdb.reverse/amd64-tailcall-reverse.c" + .long .LASF2 # DW_AT_comp_dir: "" + .long .Ldebug_ranges0+0 # DW_AT_ranges + .quad 0 # DW_AT_low_pc + .quad 0 # DW_AT_entry_pc + .long .Ldebug_line0 # DW_AT_stmt_list + .uleb128 0x2 # (DIE (0x31) DW_TAG_subprogram) + .ascii "g\0" # DW_AT_name + .byte 0x1 # DW_AT_decl_file (gdb.reverse/amd64-tailcall-reverse.c) + .byte 0x15 # DW_AT_decl_line + .byte 0x1 # DW_AT_prototyped + .quad .LFB0 # DW_AT_low_pc + .quad .LFE0 # DW_AT_high_pc + .byte 0x2 # DW_AT_frame_base + .byte 0x77 # DW_OP_breg7 + .sleb128 8 + .byte 0x1 # DW_AT_GNU_all_call_sites + .uleb128 0x3 # (DIE (0x4b) DW_TAG_subprogram) + .ascii "f\0" # DW_AT_name + .byte 0x1 # DW_AT_decl_file (gdb.reverse/amd64-tailcall-reverse.c) + .byte 0x1b # DW_AT_decl_line + .byte 0x1 # DW_AT_prototyped + .quad .LFB1 # DW_AT_low_pc + .quad .LFE1 # DW_AT_high_pc + .byte 0x2 # DW_AT_frame_base + .byte 0x77 # DW_OP_breg7 + .sleb128 8 + .byte 0x1 # DW_AT_GNU_all_call_sites + .long 0x78 # DW_AT_sibling + .uleb128 0x4 # (DIE (0x69) DW_TAG_GNU_call_site) + .quad .LVL0 # DW_AT_low_pc + .byte 0x1 # DW_AT_GNU_tail_call + .long 0x31 # DW_AT_abstract_origin + .byte 0 # end of children of DIE 0x4b + .uleb128 0x5 # (DIE (0x78) DW_TAG_subprogram) + .byte 0x1 # DW_AT_external + .long .LASF3 # DW_AT_name: "main" + .byte 0x1 # DW_AT_decl_file (gdb.reverse/amd64-tailcall-reverse.c) + .byte 0x21 # DW_AT_decl_line + .byte 0x1 # DW_AT_prototyped + .long 0xab # DW_AT_type + .quad .LFB2 # DW_AT_low_pc + .quad .LFE2 # DW_AT_high_pc + .byte 0x2 # DW_AT_frame_base + .byte 0x77 # DW_OP_breg7 + .sleb128 8 + .byte 0x1 # DW_AT_GNU_all_call_sites + .long 0xab # DW_AT_sibling + .uleb128 0x6 # (DIE (0x9d) DW_TAG_GNU_call_site) + .quad .LVL1 # DW_AT_low_pc + .long 0x4b # DW_AT_abstract_origin + .byte 0 # end of children of DIE 0x78 + .uleb128 0x7 # (DIE (0xab) DW_TAG_base_type) + .byte 0x4 # DW_AT_byte_size + .byte 0x5 # DW_AT_encoding + .ascii "int\0" # DW_AT_name + .uleb128 0x8 # (DIE (0xb2) DW_TAG_variable) + .ascii "v\0" # DW_AT_name + .byte 0x1 # DW_AT_decl_file (gdb.reverse/amd64-tailcall-reverse.c) + .byte 0x12 # DW_AT_decl_line + .long 0xc6 # DW_AT_type + .byte 0x1 # DW_AT_external + .byte 0x9 # DW_AT_location + .byte 0x3 # DW_OP_addr + .quad v + .uleb128 0x9 # (DIE (0xc6) DW_TAG_volatile_type) + .long 0xab # DW_AT_type + .byte 0 # end of children of DIE 0xb + .section .debug_abbrev,"",@progbits +.Ldebug_abbrev0: + .uleb128 0x1 # (abbrev code) + .uleb128 0x11 # (TAG: DW_TAG_compile_unit) + .byte 0x1 # DW_children_yes + .uleb128 0x25 # (DW_AT_producer) + .uleb128 0xe # (DW_FORM_strp) + .uleb128 0x13 # (DW_AT_language) + .uleb128 0xb # (DW_FORM_data1) + .uleb128 0x3 # (DW_AT_name) + .uleb128 0xe # (DW_FORM_strp) + .uleb128 0x1b # (DW_AT_comp_dir) + .uleb128 0xe # (DW_FORM_strp) + .uleb128 0x55 # (DW_AT_ranges) + .uleb128 0x6 # (DW_FORM_data4) + .uleb128 0x11 # (DW_AT_low_pc) + .uleb128 0x1 # (DW_FORM_addr) + .uleb128 0x52 # (DW_AT_entry_pc) + .uleb128 0x1 # (DW_FORM_addr) + .uleb128 0x10 # (DW_AT_stmt_list) + .uleb128 0x6 # (DW_FORM_data4) + .byte 0 + .byte 0 + .uleb128 0x2 # (abbrev code) + .uleb128 0x2e # (TAG: DW_TAG_subprogram) + .byte 0 # DW_children_no + .uleb128 0x3 # (DW_AT_name) + .uleb128 0x8 # (DW_FORM_string) + .uleb128 0x3a # (DW_AT_decl_file) + .uleb128 0xb # (DW_FORM_data1) + .uleb128 0x3b # (DW_AT_decl_line) + .uleb128 0xb # (DW_FORM_data1) + .uleb128 0x27 # (DW_AT_prototyped) + .uleb128 0xc # (DW_FORM_flag) + .uleb128 0x11 # (DW_AT_low_pc) + .uleb128 0x1 # (DW_FORM_addr) + .uleb128 0x12 # (DW_AT_high_pc) + .uleb128 0x1 # (DW_FORM_addr) + .uleb128 0x40 # (DW_AT_frame_base) + .uleb128 0xa # (DW_FORM_block1) + .uleb128 0x2117 # (DW_AT_GNU_all_call_sites) + .uleb128 0xc # (DW_FORM_flag) + .byte 0 + .byte 0 + .uleb128 0x3 # (abbrev code) + .uleb128 0x2e # (TAG: DW_TAG_subprogram) + .byte 0x1 # DW_children_yes + .uleb128 0x3 # (DW_AT_name) + .uleb128 0x8 # (DW_FORM_string) + .uleb128 0x3a # (DW_AT_decl_file) + .uleb128 0xb # (DW_FORM_data1) + .uleb128 0x3b # (DW_AT_decl_line) + .uleb128 0xb # (DW_FORM_data1) + .uleb128 0x27 # (DW_AT_prototyped) + .uleb128 0xc # (DW_FORM_flag) + .uleb128 0x11 # (DW_AT_low_pc) + .uleb128 0x1 # (DW_FORM_addr) + .uleb128 0x12 # (DW_AT_high_pc) + .uleb128 0x1 # (DW_FORM_addr) + .uleb128 0x40 # (DW_AT_frame_base) + .uleb128 0xa # (DW_FORM_block1) + .uleb128 0x2117 # (DW_AT_GNU_all_call_sites) + .uleb128 0xc # (DW_FORM_flag) + .uleb128 0x1 # (DW_AT_sibling) + .uleb128 0x13 # (DW_FORM_ref4) + .byte 0 + .byte 0 + .uleb128 0x4 # (abbrev code) + .uleb128 0x4109 # (TAG: DW_TAG_GNU_call_site) + .byte 0 # DW_children_no + .uleb128 0x11 # (DW_AT_low_pc) + .uleb128 0x1 # (DW_FORM_addr) + .uleb128 0x2115 # (DW_AT_GNU_tail_call) + .uleb128 0xc # (DW_FORM_flag) + .uleb128 0x31 # (DW_AT_abstract_origin) + .uleb128 0x13 # (DW_FORM_ref4) + .byte 0 + .byte 0 + .uleb128 0x5 # (abbrev code) + .uleb128 0x2e # (TAG: DW_TAG_subprogram) + .byte 0x1 # DW_children_yes + .uleb128 0x3f # (DW_AT_external) + .uleb128 0xc # (DW_FORM_flag) + .uleb128 0x3 # (DW_AT_name) + .uleb128 0xe # (DW_FORM_strp) + .uleb128 0x3a # (DW_AT_decl_file) + .uleb128 0xb # (DW_FORM_data1) + .uleb128 0x3b # (DW_AT_decl_line) + .uleb128 0xb # (DW_FORM_data1) + .uleb128 0x27 # (DW_AT_prototyped) + .uleb128 0xc # (DW_FORM_flag) + .uleb128 0x49 # (DW_AT_type) + .uleb128 0x13 # (DW_FORM_ref4) + .uleb128 0x11 # (DW_AT_low_pc) + .uleb128 0x1 # (DW_FORM_addr) + .uleb128 0x12 # (DW_AT_high_pc) + .uleb128 0x1 # (DW_FORM_addr) + .uleb128 0x40 # (DW_AT_frame_base) + .uleb128 0xa # (DW_FORM_block1) + .uleb128 0x2117 # (DW_AT_GNU_all_call_sites) + .uleb128 0xc # (DW_FORM_flag) + .uleb128 0x1 # (DW_AT_sibling) + .uleb128 0x13 # (DW_FORM_ref4) + .byte 0 + .byte 0 + .uleb128 0x6 # (abbrev code) + .uleb128 0x4109 # (TAG: DW_TAG_GNU_call_site) + .byte 0 # DW_children_no + .uleb128 0x11 # (DW_AT_low_pc) + .uleb128 0x1 # (DW_FORM_addr) + .uleb128 0x31 # (DW_AT_abstract_origin) + .uleb128 0x13 # (DW_FORM_ref4) + .byte 0 + .byte 0 + .uleb128 0x7 # (abbrev code) + .uleb128 0x24 # (TAG: DW_TAG_base_type) + .byte 0 # DW_children_no + .uleb128 0xb # (DW_AT_byte_size) + .uleb128 0xb # (DW_FORM_data1) + .uleb128 0x3e # (DW_AT_encoding) + .uleb128 0xb # (DW_FORM_data1) + .uleb128 0x3 # (DW_AT_name) + .uleb128 0x8 # (DW_FORM_string) + .byte 0 + .byte 0 + .uleb128 0x8 # (abbrev code) + .uleb128 0x34 # (TAG: DW_TAG_variable) + .byte 0 # DW_children_no + .uleb128 0x3 # (DW_AT_name) + .uleb128 0x8 # (DW_FORM_string) + .uleb128 0x3a # (DW_AT_decl_file) + .uleb128 0xb # (DW_FORM_data1) + .uleb128 0x3b # (DW_AT_decl_line) + .uleb128 0xb # (DW_FORM_data1) + .uleb128 0x49 # (DW_AT_type) + .uleb128 0x13 # (DW_FORM_ref4) + .uleb128 0x3f # (DW_AT_external) + .uleb128 0xc # (DW_FORM_flag) + .uleb128 0x2 # (DW_AT_location) + .uleb128 0xa # (DW_FORM_block1) + .byte 0 + .byte 0 + .uleb128 0x9 # (abbrev code) + .uleb128 0x35 # (TAG: DW_TAG_volatile_type) + .byte 0 # DW_children_no + .uleb128 0x49 # (DW_AT_type) + .uleb128 0x13 # (DW_FORM_ref4) + .byte 0 + .byte 0 + .byte 0 + .section .debug_aranges,"",@progbits + .long 0x3c # Length of Address Ranges Info + .value 0x2 # DWARF Version + .long .Ldebug_info0 # Offset of Compilation Unit Info + .byte 0x8 # Size of Address + .byte 0 # Size of Segment Descriptor + .value 0 # Pad to 16 byte boundary + .value 0 + .quad .Ltext0 # Address + .quad .Letext0-.Ltext0 # Length + .quad .LFB2 # Address + .quad .LFE2-.LFB2 # Length + .quad 0 + .quad 0 + .section .debug_ranges,"",@progbits +.Ldebug_ranges0: + .quad .Ltext0 # Offset 0 + .quad .Letext0 + .quad .LFB2 # Offset 0x10 + .quad .LFE2 + .quad 0 + .quad 0 + .section .debug_line,"",@progbits +.Ldebug_line0: + .section .debug_str,"MS",@progbits,1 +.LASF3: + .string "main" +.LASF0: + .string "GNU C 4.7.2 20120911 (prerelease)" +.LASF1: + .string "gdb.reverse/amd64-tailcall-reverse.c" +.LASF2: + .string "" + .ident "GCC: (GNU) 4.7.2 20120911 (prerelease)" + .section .note.GNU-stack,"",@progbits diff --git a/gdb/testsuite/gdb.reverse/amd64-tailcall-reverse.c b/gdb/testsuite/gdb.reverse/amd64-tailcall-reverse.c new file mode 100644 index 0000000..d275727 --- /dev/null +++ b/gdb/testsuite/gdb.reverse/amd64-tailcall-reverse.c @@ -0,0 +1,39 @@ +/* This testcase is part of GDB, the GNU debugger. + + Copyright 2012 Free Software Foundation, Inc. + + This program is free software; you can redistribute it and/or modify + it under the terms of the GNU General Public License as published by + the Free Software Foundation; either version 3 of the License, or + (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License + along with this program. If not, see . */ + +volatile int v; + +static __attribute__ ((noinline, noclone)) void +g (void) +{ + v = 2; +} + +static __attribute__ ((noinline, noclone)) void +f (void) +{ + g (); +} + +int +main (void) +{ + v = 1; + f (); + v = 3; + return 0; +} diff --git a/gdb/testsuite/gdb.reverse/amd64-tailcall-reverse.exp b/gdb/testsuite/gdb.reverse/amd64-tailcall-reverse.exp new file mode 100644 index 0000000..da9f439 --- /dev/null +++ b/gdb/testsuite/gdb.reverse/amd64-tailcall-reverse.exp @@ -0,0 +1,49 @@ +# Copyright (C) 2012 Free Software Foundation, Inc. +# +# This program is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 3 of the License, or +# (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program. If not, see . + +if ![supports_reverse] { + return +} + +set opts {} +standard_testfile .S + +if [info exists COMPILE] { + # make check RUNTESTFLAGS="gdb.reverse/amd64-tailcall-reverse.exp COMPILE=1" + standard_testfile + lappend opts debug optimize=-O2 +} elseif { ![istarget x86_64-*-* ] || ![is_lp64_target] } { + verbose "Skipping ${testfile}." + return +} + +if { [prepare_for_testing ${testfile}.exp ${testfile} ${srcfile} $opts] } { + return -1 +} + +if ![runto_main] { + return -1 +} + +if [supports_process_record] { + gdb_test_no_output "record" +} + +gdb_test "next" {f \(\);} "next to f" +gdb_test "next" {v = 3;} "next to v = 3" + +# FAIL was: +# 29 g (); +gdb_test "reverse-next" {f \(\);} diff --git a/gdb/testsuite/gdb.reverse/singlejmp-reverse-nodebug.S b/gdb/testsuite/gdb.reverse/singlejmp-reverse-nodebug.S new file mode 100644 index 0000000..f5f0a7c --- /dev/null +++ b/gdb/testsuite/gdb.reverse/singlejmp-reverse-nodebug.S @@ -0,0 +1,37 @@ +/* This testcase is part of GDB, the GNU debugger. + + Copyright 2012 Free Software Foundation, Inc. + + This program is free software; you can redistribute it and/or modify + it under the terms of the GNU General Public License as published by + the Free Software Foundation; either version 3 of the License, or + (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License + along with this program. If not, see . */ + +/* This source file was generated by: + gcc -o gdb.reverse/singlejmp-reverse-nodebug.S gdb.reverse/singlejmp-reverse-nodebug.c -Wall -S -O2 + */ + + .file "singlejmp-reverse-nodebug.c" + .text + .p2align 4,,15 + .globl nodebug + .type nodebug, @function +nodebug: +.LFB0: + .cfi_startproc + # basic block 2 + rep + ret + .cfi_endproc +.LFE0: + .size nodebug, .-nodebug + .ident "GCC: (GNU) 4.6.4 20120911 (prerelease)" + .section .note.GNU-stack,"",@progbits diff --git a/gdb/testsuite/gdb.reverse/singlejmp-reverse-nodebug.c b/gdb/testsuite/gdb.reverse/singlejmp-reverse-nodebug.c new file mode 100644 index 0000000..965f803 --- /dev/null +++ b/gdb/testsuite/gdb.reverse/singlejmp-reverse-nodebug.c @@ -0,0 +1,21 @@ +/* This testcase is part of GDB, the GNU debugger. + + Copyright 2012 Free Software Foundation, Inc. + + This program is free software; you can redistribute it and/or modify + it under the terms of the GNU General Public License as published by + the Free Software Foundation; either version 3 of the License, or + (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License + along with this program. If not, see . */ + +void +nodebug (void) +{ +} diff --git a/gdb/testsuite/gdb.reverse/singlejmp-reverse.S b/gdb/testsuite/gdb.reverse/singlejmp-reverse.S new file mode 100644 index 0000000..04d7b9a --- /dev/null +++ b/gdb/testsuite/gdb.reverse/singlejmp-reverse.S @@ -0,0 +1,311 @@ +/* This testcase is part of GDB, the GNU debugger. + + Copyright 2012 Free Software Foundation, Inc. + + This program is free software; you can redistribute it and/or modify + it under the terms of the GNU General Public License as published by + the Free Software Foundation; either version 3 of the License, or + (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License + along with this program. If not, see . */ + +/* This source file was generated by: + gcc -o gdb.reverse/singlejmp-reverse.S gdb.reverse/singlejmp-reverse.c -Wall -S -dA -O2 -g + */ + + .file "singlejmp-reverse.c" + .text +.Ltext0: + .p2align 4,,15 + .type g, @function +g: +.LFB0: + .file 1 "gdb.reverse/singlejmp-reverse.c" + # gdb.reverse/singlejmp-reverse.c:22 + .loc 1 22 0 + .cfi_startproc + # basic block 2 + # gdb.reverse/singlejmp-reverse.c:23 + .loc 1 23 0 + movl $2, v(%rip) + # gdb.reverse/singlejmp-reverse.c:24 + .loc 1 24 0 + ret + .cfi_endproc +.LFE0: + .size g, .-g + .p2align 4,,15 + .type f, @function +f: +.LFB1: + # gdb.reverse/singlejmp-reverse.c:28 + .loc 1 28 0 + .cfi_startproc + # basic block 2 + # gdb.reverse/singlejmp-reverse.c:29 + .loc 1 29 0 + jmp g + .cfi_endproc +.LFE1: + .size f, .-f + .section .text.startup,"ax",@progbits + .p2align 4,,15 + .globl main + .type main, @function +main: +.LFB2: + # gdb.reverse/singlejmp-reverse.c:36 + .loc 1 36 0 + .cfi_startproc + # basic block 2 + subq $8, %rsp +.LCFI0: + .cfi_def_cfa_offset 16 + # gdb.reverse/singlejmp-reverse.c:37 + .loc 1 37 0 + movl $1, v(%rip) + # gdb.reverse/singlejmp-reverse.c:38 + .loc 1 38 0 + call f + # gdb.reverse/singlejmp-reverse.c:39 + .loc 1 39 0 + call nodebug + # gdb.reverse/singlejmp-reverse.c:40 + .loc 1 40 0 + movl $3, v(%rip) + # gdb.reverse/singlejmp-reverse.c:42 + .loc 1 42 0 + xorl %eax, %eax + addq $8, %rsp +.LCFI1: + .cfi_def_cfa_offset 8 + ret + .cfi_endproc +.LFE2: + .size main, .-main + .comm v,4,4 + .text +.Letext0: + .section .debug_info,"",@progbits +.Ldebug_info0: + .long 0xa1 # Length of Compilation Unit Info + .value 0x2 # DWARF version number + .long .Ldebug_abbrev0 # Offset Into Abbrev. Section + .byte 0x8 # Pointer Size (in bytes) + .uleb128 0x1 # (DIE (0xb) DW_TAG_compile_unit) + .long .LASF0 # DW_AT_producer: "GNU C 4.6.4 20120911 (prerelease)" + .byte 0x1 # DW_AT_language + .long .LASF1 # DW_AT_name: "gdb.reverse/singlejmp-reverse.c" + .long .LASF2 # DW_AT_comp_dir: "" + .quad 0 # DW_AT_low_pc + .quad 0 # DW_AT_entry_pc + .long .Ldebug_ranges0+0 # DW_AT_ranges + .long .Ldebug_line0 # DW_AT_stmt_list + .uleb128 0x2 # (DIE (0x31) DW_TAG_subprogram) + .ascii "g\0" # DW_AT_name + .byte 0x1 # DW_AT_decl_file (gdb.reverse/singlejmp-reverse.c) + .byte 0x15 # DW_AT_decl_line + .byte 0x1 # DW_AT_prototyped + .quad .LFB0 # DW_AT_low_pc + .quad .LFE0 # DW_AT_high_pc + .byte 0x2 # DW_AT_frame_base + .byte 0x77 # DW_OP_breg7 + .sleb128 8 + .uleb128 0x2 # (DIE (0x4a) DW_TAG_subprogram) + .ascii "f\0" # DW_AT_name + .byte 0x1 # DW_AT_decl_file (gdb.reverse/singlejmp-reverse.c) + .byte 0x1b # DW_AT_decl_line + .byte 0x1 # DW_AT_prototyped + .quad .LFB1 # DW_AT_low_pc + .quad .LFE1 # DW_AT_high_pc + .byte 0x2 # DW_AT_frame_base + .byte 0x77 # DW_OP_breg7 + .sleb128 8 + .uleb128 0x3 # (DIE (0x63) DW_TAG_subprogram) + .byte 0x1 # DW_AT_external + .long .LASF3 # DW_AT_name: "main" + .byte 0x1 # DW_AT_decl_file (gdb.reverse/singlejmp-reverse.c) + .byte 0x23 # DW_AT_decl_line + .byte 0x1 # DW_AT_prototyped + .long 0x84 # DW_AT_type + .quad .LFB2 # DW_AT_low_pc + .quad .LFE2 # DW_AT_high_pc + .long .LLST0 # DW_AT_frame_base + .uleb128 0x4 # (DIE (0x84) DW_TAG_base_type) + .byte 0x4 # DW_AT_byte_size + .byte 0x5 # DW_AT_encoding + .ascii "int\0" # DW_AT_name + .uleb128 0x5 # (DIE (0x8b) DW_TAG_variable) + .ascii "v\0" # DW_AT_name + .byte 0x1 # DW_AT_decl_file (gdb.reverse/singlejmp-reverse.c) + .byte 0x12 # DW_AT_decl_line + .long 0x9f # DW_AT_type + .byte 0x1 # DW_AT_external + .byte 0x9 # DW_AT_location + .byte 0x3 # DW_OP_addr + .quad v + .uleb128 0x6 # (DIE (0x9f) DW_TAG_volatile_type) + .long 0x84 # DW_AT_type + .byte 0 # end of children of DIE 0xb + .section .debug_abbrev,"",@progbits +.Ldebug_abbrev0: + .uleb128 0x1 # (abbrev code) + .uleb128 0x11 # (TAG: DW_TAG_compile_unit) + .byte 0x1 # DW_children_yes + .uleb128 0x25 # (DW_AT_producer) + .uleb128 0xe # (DW_FORM_strp) + .uleb128 0x13 # (DW_AT_language) + .uleb128 0xb # (DW_FORM_data1) + .uleb128 0x3 # (DW_AT_name) + .uleb128 0xe # (DW_FORM_strp) + .uleb128 0x1b # (DW_AT_comp_dir) + .uleb128 0xe # (DW_FORM_strp) + .uleb128 0x11 # (DW_AT_low_pc) + .uleb128 0x1 # (DW_FORM_addr) + .uleb128 0x52 # (DW_AT_entry_pc) + .uleb128 0x1 # (DW_FORM_addr) + .uleb128 0x55 # (DW_AT_ranges) + .uleb128 0x6 # (DW_FORM_data4) + .uleb128 0x10 # (DW_AT_stmt_list) + .uleb128 0x6 # (DW_FORM_data4) + .byte 0 + .byte 0 + .uleb128 0x2 # (abbrev code) + .uleb128 0x2e # (TAG: DW_TAG_subprogram) + .byte 0 # DW_children_no + .uleb128 0x3 # (DW_AT_name) + .uleb128 0x8 # (DW_FORM_string) + .uleb128 0x3a # (DW_AT_decl_file) + .uleb128 0xb # (DW_FORM_data1) + .uleb128 0x3b # (DW_AT_decl_line) + .uleb128 0xb # (DW_FORM_data1) + .uleb128 0x27 # (DW_AT_prototyped) + .uleb128 0xc # (DW_FORM_flag) + .uleb128 0x11 # (DW_AT_low_pc) + .uleb128 0x1 # (DW_FORM_addr) + .uleb128 0x12 # (DW_AT_high_pc) + .uleb128 0x1 # (DW_FORM_addr) + .uleb128 0x40 # (DW_AT_frame_base) + .uleb128 0xa # (DW_FORM_block1) + .byte 0 + .byte 0 + .uleb128 0x3 # (abbrev code) + .uleb128 0x2e # (TAG: DW_TAG_subprogram) + .byte 0 # DW_children_no + .uleb128 0x3f # (DW_AT_external) + .uleb128 0xc # (DW_FORM_flag) + .uleb128 0x3 # (DW_AT_name) + .uleb128 0xe # (DW_FORM_strp) + .uleb128 0x3a # (DW_AT_decl_file) + .uleb128 0xb # (DW_FORM_data1) + .uleb128 0x3b # (DW_AT_decl_line) + .uleb128 0xb # (DW_FORM_data1) + .uleb128 0x27 # (DW_AT_prototyped) + .uleb128 0xc # (DW_FORM_flag) + .uleb128 0x49 # (DW_AT_type) + .uleb128 0x13 # (DW_FORM_ref4) + .uleb128 0x11 # (DW_AT_low_pc) + .uleb128 0x1 # (DW_FORM_addr) + .uleb128 0x12 # (DW_AT_high_pc) + .uleb128 0x1 # (DW_FORM_addr) + .uleb128 0x40 # (DW_AT_frame_base) + .uleb128 0x6 # (DW_FORM_data4) + .byte 0 + .byte 0 + .uleb128 0x4 # (abbrev code) + .uleb128 0x24 # (TAG: DW_TAG_base_type) + .byte 0 # DW_children_no + .uleb128 0xb # (DW_AT_byte_size) + .uleb128 0xb # (DW_FORM_data1) + .uleb128 0x3e # (DW_AT_encoding) + .uleb128 0xb # (DW_FORM_data1) + .uleb128 0x3 # (DW_AT_name) + .uleb128 0x8 # (DW_FORM_string) + .byte 0 + .byte 0 + .uleb128 0x5 # (abbrev code) + .uleb128 0x34 # (TAG: DW_TAG_variable) + .byte 0 # DW_children_no + .uleb128 0x3 # (DW_AT_name) + .uleb128 0x8 # (DW_FORM_string) + .uleb128 0x3a # (DW_AT_decl_file) + .uleb128 0xb # (DW_FORM_data1) + .uleb128 0x3b # (DW_AT_decl_line) + .uleb128 0xb # (DW_FORM_data1) + .uleb128 0x49 # (DW_AT_type) + .uleb128 0x13 # (DW_FORM_ref4) + .uleb128 0x3f # (DW_AT_external) + .uleb128 0xc # (DW_FORM_flag) + .uleb128 0x2 # (DW_AT_location) + .uleb128 0xa # (DW_FORM_block1) + .byte 0 + .byte 0 + .uleb128 0x6 # (abbrev code) + .uleb128 0x35 # (TAG: DW_TAG_volatile_type) + .byte 0 # DW_children_no + .uleb128 0x49 # (DW_AT_type) + .uleb128 0x13 # (DW_FORM_ref4) + .byte 0 + .byte 0 + .byte 0 + .section .debug_loc,"",@progbits +.Ldebug_loc0: +.LLST0: + .quad .LFB2 # Location list begin address (*.LLST0) + .quad .LCFI0 # Location list end address (*.LLST0) + .value 0x2 # Location expression size + .byte 0x77 # DW_OP_breg7 + .sleb128 8 + .quad .LCFI0 # Location list begin address (*.LLST0) + .quad .LCFI1 # Location list end address (*.LLST0) + .value 0x2 # Location expression size + .byte 0x77 # DW_OP_breg7 + .sleb128 16 + .quad .LCFI1 # Location list begin address (*.LLST0) + .quad .LFE2 # Location list end address (*.LLST0) + .value 0x2 # Location expression size + .byte 0x77 # DW_OP_breg7 + .sleb128 8 + .quad 0 # Location list terminator begin (*.LLST0) + .quad 0 # Location list terminator end (*.LLST0) + .section .debug_aranges,"",@progbits + .long 0x3c # Length of Address Ranges Info + .value 0x2 # DWARF Version + .long .Ldebug_info0 # Offset of Compilation Unit Info + .byte 0x8 # Size of Address + .byte 0 # Size of Segment Descriptor + .value 0 # Pad to 16 byte boundary + .value 0 + .quad .Ltext0 # Address + .quad .Letext0-.Ltext0 # Length + .quad .LFB2 # Address + .quad .LFE2-.LFB2 # Length + .quad 0 + .quad 0 + .section .debug_ranges,"",@progbits +.Ldebug_ranges0: + .quad .Ltext0 # Offset 0 + .quad .Letext0 + .quad .LFB2 # Offset 0x10 + .quad .LFE2 + .quad 0 + .quad 0 + .section .debug_line,"",@progbits +.Ldebug_line0: + .section .debug_str,"MS",@progbits,1 +.LASF3: + .string "main" +.LASF0: + .string "GNU C 4.6.4 20120911 (prerelease)" +.LASF2: + .string "" +.LASF1: + .string "gdb.reverse/singlejmp-reverse.c" + .ident "GCC: (GNU) 4.6.4 20120911 (prerelease)" + .section .note.GNU-stack,"",@progbits diff --git a/gdb/testsuite/gdb.reverse/singlejmp-reverse.c b/gdb/testsuite/gdb.reverse/singlejmp-reverse.c new file mode 100644 index 0000000..c9ebf37 --- /dev/null +++ b/gdb/testsuite/gdb.reverse/singlejmp-reverse.c @@ -0,0 +1,42 @@ +/* This testcase is part of GDB, the GNU debugger. + + Copyright 2012 Free Software Foundation, Inc. + + This program is free software; you can redistribute it and/or modify + it under the terms of the GNU General Public License as published by + the Free Software Foundation; either version 3 of the License, or + (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License + along with this program. If not, see . */ + +volatile int v; + +static __attribute__ ((noinline, noclone)) void +g (void) +{ + v = 2; +} + +static __attribute__ ((noinline, noclone)) void +f (void) +{ + g (); +} + +extern void nodebug (void); + +int +main (void) +{ + v = 1; + f (); + nodebug (); + v = 3; + return 0; +} diff --git a/gdb/testsuite/gdb.reverse/singlejmp-reverse.exp b/gdb/testsuite/gdb.reverse/singlejmp-reverse.exp new file mode 100644 index 0000000..830a89f --- /dev/null +++ b/gdb/testsuite/gdb.reverse/singlejmp-reverse.exp @@ -0,0 +1,62 @@ +# Copyright (C) 2012 Free Software Foundation, Inc. +# +# This program is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 3 of the License, or +# (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program. If not, see . + +if ![supports_reverse] { + return +} + +standard_testfile ".S" "${gdb_test_file_name}-nodebug.S" +set executable ${testfile} + +if [info exists COMPILE] { + # make check RUNTESTFLAGS="gdb.reverse/singlejmp-reverse.exp COMPILE=1" + if { [build_executable_from_specs ${testfile}.exp $executable {} \ + ${testfile}.c {debug optimize=-O2} \ + ${testfile}-nodebug.c {optimize=-O2} \ + ] == -1 } { + return -1 + } +} elseif { ![istarget x86_64-*-* ] || ![is_lp64_target] } { + verbose "Skipping ${testfile}." + return +} elseif { [build_executable ${testfile}.exp ${testfile} \ + [list ${srcfile} ${srcfile2}] {}] == -1 } { + return -1 +} + +clean_restart $executable + +if ![runto_main] { + return -1 +} + +if [supports_process_record] { + gdb_test_no_output "record" +} + +gdb_test "next" {v = 1;} "next to v = 1" +gdb_test "next" {f \(\);} "next to f" +gdb_test "next" {nodebug \(\);} "next to nodebug" +gdb_test "next" {v = 3;} "next to v = 3" + +# FAIL was: +# No more reverse-execution history. +# { +gdb_test "reverse-step" {nodebug \(\);} + +# FAIL was: +# No more reverse-execution history. +# { +gdb_test "reverse-next" {f \(\);} diff --git a/gdb/testsuite/lib/gdb.exp b/gdb/testsuite/lib/gdb.exp index 4f2b7c9..df2d818 100644 --- a/gdb/testsuite/lib/gdb.exp +++ b/gdb/testsuite/lib/gdb.exp @@ -334,29 +334,44 @@ proc gdb_start_cmd {args} { # Set a breakpoint at FUNCTION. If there is an additional argument it is # a list of options; the supported options are allow-pending, temporary, -# and no-message. +# message, no-message, and passfail. +# The result is 1 for success, 0 for failure. +# +# Note: The handling of message vs no-message is messed up, but it's based +# on historical usage. By default this function does not print passes, +# only fails. +# no-message: turns off printing of fails (and passes, but they're already off) +# message: turns on printing of passes (and fails, but they're already on) proc gdb_breakpoint { function args } { global gdb_prompt global decimal set pending_response n - if {[lsearch -exact [lindex $args 0] allow-pending] != -1} { + if {[lsearch -exact $args allow-pending] != -1} { set pending_response y } set break_command "break" set break_message "Breakpoint" - if {[lsearch -exact [lindex $args 0] temporary] != -1} { + if {[lsearch -exact $args temporary] != -1} { set break_command "tbreak" set break_message "Temporary breakpoint" } - set no_message 0 - if {[lsearch -exact [lindex $args 0] no-message] != -1} { - set no_message 1 + set print_pass 0 + set print_fail 1 + set no_message_loc [lsearch -exact $args no-message] + set message_loc [lsearch -exact $args message] + # The last one to appear in args wins. + if { $no_message_loc > $message_loc } { + set print_fail 0 + } elseif { $message_loc > $no_message_loc } { + set print_pass 1 } + set test_name "setting breakpoint at $function" + send_gdb "$break_command $function\n" # The first two regexps are what we get with -g, the third is without -g. gdb_expect 30 { @@ -365,8 +380,8 @@ proc gdb_breakpoint { function args } { -re "$break_message \[0-9\]* at .*$gdb_prompt $" {} -re "$break_message \[0-9\]* \\(.*\\) pending.*$gdb_prompt $" { if {$pending_response == "n"} { - if { $no_message == 0 } { - fail "setting breakpoint at $function" + if { $print_fail } { + fail $test_name } return 0 } @@ -376,23 +391,34 @@ proc gdb_breakpoint { function args } { exp_continue } -re "A problem internal to GDB has been detected" { - fail "setting breakpoint at $function in runto (GDB internal error)" + if { $print_fail } { + fail "$test_name (GDB internal error)" + } gdb_internal_error_resync return 0 } -re "$gdb_prompt $" { - if { $no_message == 0 } { - fail "setting breakpoint at $function" + if { $print_fail } { + fail $test_name + } + return 0 + } + eof { + if { $print_fail } { + fail "$test_name (eof)" } return 0 } timeout { - if { $no_message == 0 } { - fail "setting breakpoint at $function (timeout)" + if { $print_fail } { + fail "$test_name (timeout)" } return 0 } } + if { $print_pass } { + pass $test_name + } return 1; } @@ -400,8 +426,15 @@ proc gdb_breakpoint { function args } { # Since this is the only breakpoint that will be set, if it stops # at a breakpoint, we will assume it is the one we want. We can't # just compare to "function" because it might be a fully qualified, -# single quoted C++ function specifier. If there's an additional argument, -# pass it to gdb_breakpoint. +# single quoted C++ function specifier. +# +# If there are additional arguments, pass them to gdb_breakpoint. +# We recognize no-message/message ourselves. +# The default is no-message. +# no-message is messed up here, like gdb_breakpoint: to preserve +# historical usage fails are always printed by default. +# no-message: turns off printing of fails (and passes, but they're already off) +# message: turns on printing of passes (and fails, but they're already on) proc runto { function args } { global gdb_prompt @@ -409,7 +442,28 @@ proc runto { function args } { delete_breakpoints - if ![gdb_breakpoint $function [lindex $args 0]] { + # Default to "no-message". + set args "no-message $args" + + set print_pass 0 + set print_fail 1 + set no_message_loc [lsearch -exact $args no-message] + set message_loc [lsearch -exact $args message] + # The last one to appear in args wins. + if { $no_message_loc > $message_loc } { + set print_fail 0 + } elseif { $message_loc > $no_message_loc } { + set print_pass 1 + } + + set test_name "running to $function in runto" + + # We need to use eval here to pass our varargs args to gdb_breakpoint + # which is also a varargs function. + # But we also have to be careful because $function may have multiple + # elements, and we don't want Tcl to move the remaining elements after + # the first to $args. That is why $function is wrapped in {}. + if ![eval gdb_breakpoint {$function} $args] { return 0; } @@ -419,30 +473,46 @@ proc runto { function args } { # the "in func" output we get without -g. gdb_expect 30 { -re "Break.* at .*:$decimal.*$gdb_prompt $" { + if { $print_pass } { + pass $test_name + } return 1 } -re "Breakpoint \[0-9\]*, \[0-9xa-f\]* in .*$gdb_prompt $" { + if { $print_pass } { + pass $test_name + } return 1 } -re "The target does not support running in non-stop mode.\r\n$gdb_prompt $" { - unsupported "Non-stop mode not supported" + if { $print_fail } { + unsupported "Non-stop mode not supported" + } return 0 } -re ".*A problem internal to GDB has been detected" { - fail "running to $function in runto (GDB internal error)" + if { $print_fail } { + fail "$test_name (GDB internal error)" + } gdb_internal_error_resync return 0 } -re "$gdb_prompt $" { - fail "running to $function in runto" + if { $print_fail } { + fail $test_name + } return 0 } eof { - fail "running to $function in runto (end of file)" + if { $print_fail } { + fail "$test_name (eof)" + } return 0 } timeout { - fail "running to $function in runto (timeout)" + if { $print_fail } { + fail "$test_name (timeout)" + } return 0 } } @@ -455,7 +525,7 @@ proc runto { function args } { # If you don't want that, use gdb_start_cmd. proc runto_main { } { - return [runto main] + return [runto main no-message] } ### Continue, and expect to hit a breakpoint. @@ -508,6 +578,8 @@ proc gdb_continue_to_breakpoint {name {location_pattern .*}} { proc gdb_internal_error_resync {} { global gdb_prompt + verbose -log "Resyncing due to internal error." + set count 0 while {$count < 10} { gdb_expect { diff --git a/gdb/value.c b/gdb/value.c index a6bb718..218d4d5 100644 --- a/gdb/value.c +++ b/gdb/value.c @@ -850,8 +850,12 @@ value_actual_type (struct value *value, int resolve_simple_types, result = value_type (value); if (opts.objectprint) { - if (TYPE_CODE (result) == TYPE_CODE_PTR + /* If result's target type is TYPE_CODE_STRUCT, proceed to + fetch its rtti type. */ + if ((TYPE_CODE (result) == TYPE_CODE_PTR || TYPE_CODE (result) == TYPE_CODE_REF) + && TYPE_CODE (check_typedef (TYPE_TARGET_TYPE (result))) + == TYPE_CODE_STRUCT) { struct type *real_type; diff --git a/gdb/version.in b/gdb/version.in index c382960..a5f017a 100644 --- a/gdb/version.in +++ b/gdb/version.in @@ -1 +1 @@ -7.5 +7.5.1 diff --git a/libiberty/ChangeLog b/libiberty/ChangeLog index 4ece5ab..4da3a06 100644 --- a/libiberty/ChangeLog +++ b/libiberty/ChangeLog @@ -1,3 +1,8 @@ +2012-07-31 Mike Frysinger + + * md5.c (md5_finish_ctx): Declare swap_bytes. Assign SWAP() output + to swap_bytes, and then call memcpy to move it to ctx->buffer. + 2012-07-13 Doug Evans * filename_cmp.c (filename_hash, filename_eq): New functions. diff --git a/libiberty/md5.c b/libiberty/md5.c index 0db8fc8..8cc0cb5 100644 --- a/libiberty/md5.c +++ b/libiberty/md5.c @@ -103,6 +103,7 @@ md5_finish_ctx (struct md5_ctx *ctx, void *resbuf) { /* Take yet unprocessed bytes into account. */ md5_uint32 bytes = ctx->buflen; + md5_uint32 swap_bytes; size_t pad; /* Now count remaining bytes. */ @@ -113,10 +114,13 @@ md5_finish_ctx (struct md5_ctx *ctx, void *resbuf) pad = bytes >= 56 ? 64 + 56 - bytes : 56 - bytes; memcpy (&ctx->buffer[bytes], fillbuf, pad); - /* Put the 64-bit file length in *bits* at the end of the buffer. */ - *(md5_uint32 *) &ctx->buffer[bytes + pad] = SWAP (ctx->total[0] << 3); - *(md5_uint32 *) &ctx->buffer[bytes + pad + 4] = SWAP ((ctx->total[1] << 3) | - (ctx->total[0] >> 29)); + /* Put the 64-bit file length in *bits* at the end of the buffer. + Use memcpy to avoid aliasing problems. On most systems, this + will be optimized away to the same code. */ + swap_bytes = SWAP (ctx->total[0] << 3); + memcpy (&ctx->buffer[bytes + pad], &swap_bytes, sizeof (swap_bytes)); + swap_bytes = SWAP ((ctx->total[1] << 3) | (ctx->total[0] >> 29)); + memcpy (&ctx->buffer[bytes + pad + 4], &swap_bytes, sizeof (swap_bytes)); /* Process last bytes. */ md5_process_block (ctx->buffer, bytes + pad + 8, ctx); diff --git a/md5.sum b/md5.sum index 4607beb..f975b80 100644 --- a/md5.sum +++ b/md5.sum @@ -460,7 +460,7 @@ e67d8b07516154c4ddbee2e3bab3d75e bfd/doc/doc.str 39f61ac0fb56eced56e6894e7bc47cef bfd/doc/header.sed 5fa24958e8a60b2f879af658e615ccc0 bfd/doc/makefile.vms d7a37304ccd7b245f93df4be02797477 bfd/doc/proto.str -38b96e25e08a45daa65bce5dae12c37b bfd/doc/bfdver.texi +bb790cbe0187b12f8544a2b9c03291f6 bfd/doc/bfdver.texi b1848292a4811cd7301fc6201debe63a bfd/doc/aoutx.texi 1ec269e34cd7de48135ce9d4aefb98b6 bfd/doc/archive.texi f387391c9b6221323eee7e5dc53ab174 bfd/doc/archures.texi @@ -702,7 +702,7 @@ a04bbfc6092a474c8797b8b4f4b28035 gdb/.dir-locals.el c3a142c54fa6dc516b5a14aabc62e78f gdb/.gitignore 0e8e9a83ca2de8e7edc3ac4791c379e0 gdb/CONTRIBUTE d32239bcb673463ab874e80d47fae504 gdb/COPYING -29459e2bc17ea3fadc95cf9fab73a172 gdb/ChangeLog +e1e8bc5ba6ae43cae2782cc947cddc8d gdb/ChangeLog 42b9f7c51223e595f66c2210064be682 gdb/ChangeLog-1990 8f5a03c189727d347a330548f3ea9c98 gdb/ChangeLog-1991 51d2fa6ce8618d5c87150c7c576f1f6d gdb/ChangeLog-1992 @@ -770,7 +770,7 @@ fa9ccd1d7488dac4ae8a971f92009437 gdb/amd64-linux-tdep.h 46aa048480e9be6144599531661ceb41 gdb/amd64-nat.c e2cef59310fcc1711a275eec473eeba9 gdb/amd64-nat.h 142113802069790ef8c2ee9b4a21c1c7 gdb/amd64-sol2-tdep.c -7b28d4475a2aef79f3bd2202f693d199 gdb/amd64-tdep.c +50c20b27edfc3ed01757fda355ccfd1c gdb/amd64-tdep.c f083b6bb124c20ad96a53ef849afe5e4 gdb/amd64-tdep.h 425f01a1645629a9467032d756162678 gdb/amd64-windows-nat.c e54adc457de46bdca74af64de296c96c gdb/amd64-windows-tdep.c @@ -797,7 +797,7 @@ aa96a769aa9be57e0d727881ee79e62b gdb/armbsd-tdep.c 66a73dc1080711a3d55f37d16ddb775e gdb/armnbsd-nat.c 826af3810cc9448157a1ea6f7f142c46 gdb/armnbsd-tdep.c 70fb31e48a90157b9270bca8c4f2a6d6 gdb/armobsd-tdep.c -625df147df7178dcb64ccdd42b49e1b5 gdb/auto-load.c +67d374ebefcffbdd46bbf7ba26f1c4a7 gdb/auto-load.c d5ad2ba5255773bf8f62a1e39803ec72 gdb/auto-load.h b0f639f55c14dd8cc3303f0be9ded626 gdb/auxv.c c32d8ef0e03fbf46bf202427bd250c40 gdb/auxv.h @@ -879,7 +879,7 @@ d3d6859c1a2fade6f71a8aa8ddbb9f98 gdb/dbxread.c 17abb75d54c0318f0c2929724b6a25da gdb/dcache.c 07cb5058ffeffd173b9a0f8270eec8a6 gdb/dcache.h 13f1974b41f890746469a9b16b2235b5 gdb/dec-thread.c -71a46655ee2fa3eb03219fa7e564eced gdb/defs.h +6ec3e1e9cd24786e7e5df436669be552 gdb/defs.h 9dd6593e7c927010adcfa22fccb04524 gdb/demangle.c 3aded3605f7488210ff205cdd7a3b226 gdb/dfp.c 1cbf5428c93b97b6432801160e3eb48d gdb/dfp.h @@ -903,7 +903,7 @@ dddf51f48b09f6c440db53cafac83b22 gdb/dwarf2expr.c e1496b320142f1226e038cc5a10ed567 gdb/dwarf2expr.h cf7518fce3540c55cdf572ba483b2db2 gdb/dwarf2loc.c 5a714f27c437a15781b592538ffb7503 gdb/dwarf2loc.h -2e217e87d839e70d7e144cffda5580ac gdb/dwarf2read.c +7ce212a5bdd73280a88448a516f11b7c gdb/dwarf2read.c f852d804f582274b9a240a103a823ae2 gdb/elfread.c 23632a118398a1f66b9f91f2ffe78a12 gdb/environ.c e8d655fd58c17483b268477190e1fc92 gdb/environ.h @@ -935,7 +935,7 @@ b06f65b9e9de3a9d15af70e73960075a gdb/findcmd.c 4e1313fbee885087315bf3dc9176f6fe gdb/frame-base.h 98a7d20803c6682892bf3110e757fcf4 gdb/frame-unwind.c a77a6309ae039cd6ce09e7856e1ef9a4 gdb/frame-unwind.h -db59dfecb1dc4f3d66c405c9e656a34b gdb/frame.c +fcbf803fbaa872738bfef308c62d698f gdb/frame.c cdf2e9c0f80c87d02cde560cec4d77aa gdb/frame.h c7bef879f9f50b1a6046da8cab7dd489 gdb/frv-linux-tdep.c be96fa00f3aa213f9848a1d76688973b gdb/frv-tdep.c @@ -1020,8 +1020,8 @@ f05b021eaf672b40dd32a733b937b84f gdb/i386-nat.h e6d9a5f907836a846af13e0bc7a1b79b gdb/i386-nto-tdep.c 6f2bafd5495abc9c29d9a6cbf78b2fd9 gdb/i386-sol2-nat.c 9eb584aa3c5ac9359b639d0a383b8fb0 gdb/i386-sol2-tdep.c -0c876d7b6be969617736270fc82f5671 gdb/i386-tdep.c -e076c225e034a0332afd2c9ffc7986f7 gdb/i386-tdep.h +f2da753bd400df436e9ed3e6a0b1c7cb gdb/i386-tdep.c +cedd68eec18a7754e6cfe8aa897f4346 gdb/i386-tdep.h 75478759b42ee713ae183e5f37af167b gdb/i386-windows-nat.c 78cb575ef6664b5720c02471febbb18c gdb/i386bsd-nat.c 06dbf1e75a68d5d3797fb59e05937d85 gdb/i386bsd-nat.h @@ -1057,12 +1057,12 @@ b734ec894047c2a575083b86e1a0273f gdb/inf-ptrace.h c35fd23919a8cca9b4e0d148b4000459 gdb/inf-ttrace.h 019a5761d16393daa8c8c5811b4d8e33 gdb/infcall.c 56b778f95084e0c4623e87cdb168a776 gdb/infcall.h -93ca5451a086a4dd3298faacfd238bad gdb/infcmd.c +5c99751f67ef932fc6ac5861d6c4a52b gdb/infcmd.c 987dc2641adfa8dd5ed1d3083931682a gdb/inferior.c d82c6a59f0e5f85cd27c1aedccb1e001 gdb/inferior.h 09772df7a350117869dc7dab168a9282 gdb/inflow.c db212b74175c347b52d0b5fb3faf026d gdb/inflow.h -fb37b904cdfd921d9ac5089e55a17076 gdb/infrun.c +a17486c491f3642e38773d0da02f1174 gdb/infrun.c 953d0e968f674d12486290853e9e386d gdb/inline-frame.c 9e313f674a7c2cdb0541ea52f806d134 gdb/inline-frame.h 7c92bb52acde002e570a5b1e9683c787 gdb/interps.c @@ -1080,7 +1080,7 @@ d58fdfb892582a70c87804560a837ea2 gdb/jv-valprint.c e1077c322c7202b154cf999a053fe9d7 gdb/language.c 997423099e93f7ac61dde4d51089bec1 gdb/m2-exp.y 49592faf95b556fe36281b2a516a9f70 gdb/language.h -0a4df2eaefef5254d81229ccbfb2f294 gdb/linespec.c +476a72e1b5116df354a687c1750ebe7e gdb/linespec.c 5497e3682e3afaab892ca11a66ca2950 gdb/linespec.h a703ad4a4ed36314b64a5c9a57007719 gdb/linux-fork.c 18d36d4834f1c8326d00493bb21ce8e4 gdb/linux-fork.h @@ -1120,7 +1120,7 @@ c670ac4662aaa13a5551f4692cf6729e gdb/macroexp.c adababafd40d86c626dcb94e6b368b31 gdb/macroscope.h c6524f98f7a919834c62e514ff36ef97 gdb/macrotab.c 93a1071b922cbadf8f162294f2fe74e3 gdb/macrotab.h -7d6447061ae48bb0860d1eda7387df38 gdb/main.c +1b2200f29e5649dc18f9bb1da5366636 gdb/main.c 7528c49ee7049af565a08fcedac5ae77 gdb/main.h 6f347e70580b547f6ab8ba8960c5f3d4 gdb/maint.c d245e6a10a53596f4942f3aeee3e1329 gdb/mdebugread.c @@ -1193,7 +1193,7 @@ bf8f83672e228dfd73aa2647e631e612 gdb/p-valprint.c 38ecc77ff4af359817f6ae0440dffa6d gdb/parser-defs.h 0f9c35e0e25bf30b79cbab966d8573fa gdb/posix-hdep.c 414be542ca82006e906f5af586a97bf1 gdb/ppc-linux-nat.c -2526a97d9102f08cee7f37732a1ccc1c gdb/ppc-linux-tdep.c +e74183d73a248605a9e133a3d8564d7e gdb/ppc-linux-tdep.c 741872aee583b49384eb91eb4930bbd3 gdb/ppc-linux-tdep.h c675b712b585236dd600533025703472 gdb/ppc-sysv-tdep.c 791d2242ccf354b862988e98710f3bc9 gdb/ppc-tdep.h @@ -1343,7 +1343,7 @@ cdf6a59fc4b82140ee363c8c7bc58bce gdb/stack.h e71fdcbe183dab6e9bb2a6e983982a66 gdb/std-operator.def a3f6ba3854e8f56a0d99669d75bcfb03 gdb/std-regs.c e444811cef88edbfb0ac4dee7c90d538 gdb/symfile-mem.c -6354a2665263c1921d37e51d150257ef gdb/symfile.c +bdfcfe703b9b3adb62342e6eaa76711a gdb/symfile.c b6f486982248fc430b80784534e1cab5 gdb/symfile.h 969b1e7fc926eefa49cdbbc025c406df gdb/symmisc.c df40a3dbfb38349a08392d9adba9e75e gdb/symtab.c @@ -1385,7 +1385,7 @@ b799cb34404e6370e33f0853aaea7030 gdb/valarith.c e1a32655e26049221103a5c751396ae7 gdb/valops.c 2f64099e7de31e998ff209296465ede3 gdb/valprint.c 0e38e4a97766782f0a93c93d1734fa6a gdb/valprint.h -8c157b6a085625450ce750136373cecd gdb/value.c +2fe9334f36ea9b3477d34eef6f18f75c gdb/value.c d97bf4af58b9cec40578126c0fda8fed gdb/value.h 2b37645cdd19555e06775ebad88bf225 gdb/varobj.c 874e03757eff5c0d2c086e2cf7967144 gdb/varobj.h @@ -1396,7 +1396,7 @@ c38c7d0a945ebc05b1efdc5d78b7d538 gdb/vax-tdep.c 89248bc9aae5dac9bc9716fac67aad5b gdb/vaxnbsd-tdep.c dbbd1783603802bffc9fce0683394796 gdb/vaxobsd-tdep.c fe8a5f81dd9b4284facd03f11f79a03e gdb/version.h -183d476e5f65a2f5252a5043ba3688c0 gdb/version.in +5d4b8fa24780e4e25297aa77264e951c gdb/version.in 116c45a916c6d2f004d466d50497fb14 gdb/windows-nat.c 5d46a3efdb81bad1cea8a80c561eac32 gdb/windows-nat.h b7b59da8f83a39a200ed5e4ed1780e9f gdb/windows-tdep.c @@ -1421,7 +1421,7 @@ cc8aa5d06a8539a75b2fbb82072566a1 gdb/xtensa-tdep.h 8ccfd91194d0a3c2d817d60570520445 gdb/xtensa-xtregs.c a0ee257136bcbc46c0333b556d63869c gdb/cli/cli-cmds.c 92be51e5007e0ac5587384d8a17a38d3 gdb/cli/cli-cmds.h -89b4b6742131967b5fd0687b1464bf47 gdb/cli/cli-decode.c +82f0984edf6fadf2a701851233277865 gdb/cli/cli-decode.c 804d7d0ef72adca597ff2b03afe1b029 gdb/cli/cli-decode.h 022d3434d85e50986e7d0bb6b9de4712 gdb/cli/cli-dump.c 2f8090cd6fd1c4c34f667e03b65047d3 gdb/cli/cli-dump.h @@ -1452,7 +1452,7 @@ b8cb96ba4c9861852f641c38ad9e57bd gdb/common/i386-xstate.h 09a783c56d0edb795c3ef85c3a6aa819 gdb/common/linux-osdata.h ea27e54a6db2efe7194a240a07c611f7 gdb/common/linux-procfs.c 0ab2dfbf3272bb9fdb87f6d3d3058e84 gdb/common/linux-procfs.h -fe1b1a4e094025abab299289162722a4 gdb/common/linux-ptrace.c +7b78ee5b26d9b7f737a1359842acb832 gdb/common/linux-ptrace.c bf52cb2bb8ce8ed53d2254f2ec282df2 gdb/common/linux-ptrace.h 61d1da6a52787d2e1b649008559f8abb gdb/common/ptid.c 36aff2da1a41f691e30ea187cd5c818e gdb/common/ptid.h @@ -1541,7 +1541,7 @@ dd0e12186d87daa399b8d1fa21afb146 gdb/config/vax/nbsdaout.mh 2b0bfbd4c6e9614c300b8887b592197d gdb/config/xtensa/linux.mh 16721564da743eab7c2935f361f24ed5 gdb/contrib/test_pubnames_and_indexes.py b5a451f9ce631db17dd56dabc9c19321 gdb/data-directory/Makefile.in -19ba206965f8b1b819fd825c3e3e8b71 gdb/doc/ChangeLog +b77e132264d70f54da585a62cf1f9245 gdb/doc/ChangeLog cde55cb7bff1f00bd1c4b1ec0336c922 gdb/doc/LRS b2d5af403b33b8fca80aee36ba84b648 gdb/doc/Makefile.in d5d06eaf9b4d44aa442a4a281aa9aea4 gdb/doc/a4rc.sed @@ -1549,7 +1549,7 @@ d5d06eaf9b4d44aa442a4a281aa9aea4 gdb/doc/a4rc.sed 16323a3dc38234990af7a5a8ad37b5cd gdb/doc/all-cfg.texi 237d78bddccb0bb9dc86911e194aac8e gdb/doc/annotate.texinfo ab0fe311032294b952da80585b8b90e7 gdb/doc/fdl.texi -4dbdebad6f40d1cae89f1151121af42d gdb/doc/gdb.texinfo +92eb1faaac0ff2f6637bac5f08dda3cc gdb/doc/gdb.texinfo b8a3eda0db9943a56763cdb63b3cec42 gdb/doc/gdbint.texinfo bf96494e6e4d346175babd5ef9781882 gdb/doc/gpl.texi 73ec71cd3b2e7f61bc530f19d4b35056 gdb/doc/lpsrc.sed @@ -1562,13 +1562,13 @@ d39233c86ed6a6dc9e853ae6a11fe03e gdb/doc/stack_frame.pdf 6076d300a46651562d4ecd0604442414 gdb/doc/stack_frame.png 553b7fe1bf4b5d8b96fdb8cd83503de1 gdb/doc/stack_frame.svg f81a0e00e0cb9e41b078069fb9bedb07 gdb/doc/stack_frame.txt -351868531c2644b422d15ccca799e26a gdb/doc/gdb.info -4487a374ee47961b38fa1b4687eee060 gdb/doc/gdb.info-1 -6a2d5b40b94f5a64189da1293f820859 gdb/doc/gdb.info-2 -d7f703d8770387977223c1678d0efb63 gdb/doc/gdb.info-3 -3cdabe049d6e72d22e430f6e56c4480c gdb/doc/gdb.info-4 -abd3f30779c3daf2959081a7d0fd13e0 gdb/doc/gdb.info-5 -9a73aeebc39dc6563ec0d70395c24d51 gdb/doc/gdb.info-6 +64cb5346f64c4a62ae82372c2dba0f86 gdb/doc/gdb.info +6f50daa86b752dde6bf04c006f1d8f4e gdb/doc/gdb.info-1 +71445fbe9140bebe39c0ae43d9242c4e gdb/doc/gdb.info-2 +6d67349092e2bbcc92d07a97c19c46c7 gdb/doc/gdb.info-3 +d5f1a2bdb3237a159b380b9a2c54793b gdb/doc/gdb.info-4 +12e10ca75f4ebc08a124928318fe4bba gdb/doc/gdb.info-5 +c31a35da6ad97a7f473ad24c19590229 gdb/doc/gdb.info-6 05c0d0b2a8b9edbc5db07192d1388b12 gdb/doc/gdbint.info 751be19074a19c3f654f3d2537b4336e gdb/doc/gdbint.info-1 a003c8e79cb28d422bbb83034c17da12 gdb/doc/gdbint.info-2 @@ -1777,7 +1777,7 @@ a238f6359a5d0f298234e00f685d548c gdb/features/rs6000/powerpc-vsx32l.xml 376e396dd67d075bacc312f2c0a194fe gdb/features/rs6000/rs6000.c 31a4eafb186358843e27350b150e180e gdb/features/rs6000/rs6000.xml 94230696f6e1981ae284eb1d31607f8e gdb/gdbserver/.gitignore -8d50f02f0a6915c495681cf9b28934f9 gdb/gdbserver/ChangeLog +a2e3adfccd75ab997a5e12061b952ad7 gdb/gdbserver/ChangeLog dde2aa36479f53e8fa976c08bb81fc56 gdb/gdbserver/Makefile.in 791b58ddf159b59c7d9375e2c2f00a07 gdb/gdbserver/README 0e796e5e05adc41096c8f711836e9f7e gdb/gdbserver/acinclude.m4 @@ -1791,7 +1791,7 @@ ab1f29be3446ecf5e2b781969e77d4bb gdb/gdbserver/configure.srv a06d2fc06d24c8ff8e1eacce34aa6cd7 gdb/gdbserver/dll.c 7798a56033d81424a9b44b065d808946 gdb/gdbserver/event-loop.c 475cc2ff3a61f243746075c4cd840cc3 gdb/gdbserver/gdb_proc_service.h -0a3f5f95849acd6f4a783c0ca75b6e5c gdb/gdbserver/gdbreplay.c +9837e218420b54aa1079bb86be4f1c74 gdb/gdbserver/gdbreplay.c f0e3f141168f9e49b60877d30817cc61 gdb/gdbserver/gdbserver.1 9cec9bf1ae90c6dd37fb731b055b8bde gdb/gdbserver/gdbthread.h 34cd731f76620c1d39d318c510cf782a gdb/gdbserver/hostio-errno.c @@ -1805,7 +1805,7 @@ bdacf42a94348b7665d43b9eb8a98f69 gdb/gdbserver/linux-amd64-ipa.c 719b265ba65d8c185d19a9de4ed9815a gdb/gdbserver/linux-arm-low.c 1edf0686a3ef6e743686033944310f83 gdb/gdbserver/linux-bfin-low.c cba8bd803a9842d2480a89ddad0a8147 gdb/gdbserver/linux-cris-low.c -803fbc985d226837d1f5e297997e26f4 gdb/gdbserver/linux-crisv32-low.c +c7e69fab3796b52ada36bfe1d3859914 gdb/gdbserver/linux-crisv32-low.c 100dce3c66e8c38e807c1517d1f20f23 gdb/gdbserver/linux-i386-ipa.c a4138055c1b6e3a5ff3fa2c260b87976 gdb/gdbserver/linux-ia64-low.c a56ae41ac0c3dc2a2ab35b9647ea34d1 gdb/gdbserver/linux-low.c @@ -1836,7 +1836,7 @@ f7bac380dcb49575b757695b72fd6084 gdb/gdbserver/mem-break.h 58a941c8ff873a865d474eece1de9f1e gdb/gdbserver/regcache.h 2a349d85d5e1a3a219380e55ee083220 gdb/gdbserver/remote-utils.c f7800406d7f0a7dc2a57b4ca690a3285 gdb/gdbserver/server.c -f61b46da0ace58fe7e171f964837d920 gdb/gdbserver/server.h +943b1d8855a00bb20280232bcca6dec9 gdb/gdbserver/server.h 7d7b0321c7c4e80e33c15fda1c9a0c98 gdb/gdbserver/spu-low.c ab8791abc79fb06583ba8f6e830adcc0 gdb/gdbserver/target.c e6edecda64b09d5ab8c68f47476e410e gdb/gdbserver/target.h @@ -1975,8 +1975,8 @@ c20fd87765652ad7ba50f43a0ec95088 gdb/osf-share/cma_util.h 7cd3745f37bbbfcd24086735939ead52 gdb/osf-share/HP800/cma_thread_io.h 36cb16e3cf86ddd4609d275a6a3052f5 gdb/osf-share/RIOS/cma_thread_io.h 1851bff0653201a488dcae18dde7efad gdb/po/gdbtext -74b34d720e20e5ffaa85d11127d51ec5 gdb/po/gdb.pot -41d7ed66b6e42064caddff286fc26136 gdb/python/py-auto-load.c +35aeb6693f11ff68e347650ec57f8bd5 gdb/po/gdb.pot +effd93924993d455c130ac3c633a6c06 gdb/python/py-auto-load.c d46f38c49ba79ffcc1fe58e6babe8493 gdb/python/py-block.c be8cbd2c7ccd83e31f62e01605df83b8 gdb/python/py-bpevent.c bb535075049a1e977b2b25081908b990 gdb/python/py-breakpoint.c @@ -2011,7 +2011,7 @@ a65d01a6be1d6e49f1a76f867a77a65f gdb/python/py-value.c df61f04da42752ab5d9115d036f22430 gdb/python/python-config.py fae4b5c88e230ab947fae2d1ed72f686 gdb/python/python-internal.h bc441a666242c968665db9d8c4545eab gdb/python/python.c -06701c32366f9f2f6b2f847e9242a566 gdb/python/python.h +c3120dbddd6d105aed603c88ed4c2581 gdb/python/python.h 0ede955be53064e857fca1abcd4af3d5 gdb/python/lib/gdb/__init__.py 0b0f0baea9b60fb07eb7f687730da3f5 gdb/python/lib/gdb/printing.py 9153dfb2c33ccfb638dcaf82a0c6f411 gdb/python/lib/gdb/prompt.py @@ -2107,7 +2107,7 @@ ea9cbcd95f79798e1a692f4abf93a2c7 gdb/syscalls/mips-n32-linux.xml c0ec02b9ad0757a03d9dea6ea6b8adb0 gdb/syscalls/ppc64-linux.xml 1ec17336100dcc40f3964c8027955d28 gdb/syscalls/sparc-linux.xml 92757f46acf7c629f8cecaaf0304f2c4 gdb/syscalls/sparc64-linux.xml -7c67ab0a288eb2b773b073a92e3a64d1 gdb/testsuite/ChangeLog +58f1dadc84eb046cf227cbea0ba7deb5 gdb/testsuite/ChangeLog 8181316b8b2460853fe22c659ba1071e gdb/testsuite/Makefile.in 1b9bb551736dbc95577c91620b81fb6c gdb/testsuite/TODO a225f3bdf3ee20da9623fd4c54b5454b gdb/testsuite/aclocal.m4 @@ -2425,6 +2425,9 @@ f649c736950b5fd624424e3a7f370e4f gdb/testsuite/gdb.arch/amd64-prologue-xmm.c 0263f89000d75b0d113a836aaf5daacf gdb/testsuite/gdb.arch/amd64-prologue-xmm.exp e3a9f564be714835504436d7e8d0f0ce gdb/testsuite/gdb.arch/amd64-prologue-xmm.s 265407290bc6234802cf2a634ecea75c gdb/testsuite/gdb.arch/amd64-pseudo.c +ae401dd7f797623b002f3a31faea1b29 gdb/testsuite/gdb.arch/amd64-tailcall-ret.S +f76e72540158df1b94356cf00a331b06 gdb/testsuite/gdb.arch/amd64-tailcall-ret.c +62d774d8e3ab2df4f8e4e4976557e300 gdb/testsuite/gdb.arch/amd64-tailcall-ret.exp a3bc5b058e9a28b8c8961be3f48a0613 gdb/testsuite/gdb.arch/amd64-word.exp 075421c7c7df13e3432011aea5c623e1 gdb/testsuite/gdb.arch/arm-disp-step.S f44f55476bfcc00aab9ef07183adf7a9 gdb/testsuite/gdb.arch/arm-disp-step.exp @@ -3051,6 +3054,8 @@ e48c21a0eeb78774c8761fbef657bdf1 gdb/testsuite/gdb.base/step-line.c 98cd6b7b1e6e3b7431873224eef42ee2 gdb/testsuite/gdb.base/step-line.inp 18720b2bb9f88cd34aab612f18a606f5 gdb/testsuite/gdb.base/step-resume-infcall.c 12b0ee8c5ec65ce23abc5ff7a695671f gdb/testsuite/gdb.base/step-resume-infcall.exp +28eae0dd3a433e1c2d87bf5fb9c5d32f gdb/testsuite/gdb.base/step-symless.c +4acf5ba9179f799a0f20efb12216cb14 gdb/testsuite/gdb.base/step-symless.exp 9ffc2cd8e384888785a57bd5ed8168d2 gdb/testsuite/gdb.base/step-test.c 632fb2a218b330d0bdf4157005e9e142 gdb/testsuite/gdb.base/step-test.exp 1ea088b852b87134ad1b9038b0dd2204 gdb/testsuite/gdb.base/store.c @@ -3087,7 +3092,7 @@ e0f4a00d7eb2641628c91c705b4592d0 gdb/testsuite/gdb.base/unwindonsignal.c a7f582dad7c86be966dc26a2dfd2a9b3 gdb/testsuite/gdb.base/valgrind-db-attach.c 9aeaebc9306f400ea147ed756128d580 gdb/testsuite/gdb.base/valgrind-db-attach.exp 3cd0507c8af37b5788e02cd161262bd0 gdb/testsuite/gdb.base/valgrind-infcall.c -442ca0b023d931a86fd214e05a52777e gdb/testsuite/gdb.base/valgrind-infcall.exp +9e65bd5d29634331e26bdf7ce0242320 gdb/testsuite/gdb.base/valgrind-infcall.exp 319b40e0e783d65b296cdf21f0c3e0a0 gdb/testsuite/gdb.base/value-double-free.c abb7f938274118488161ab577968dc69 gdb/testsuite/gdb.base/value-double-free.exp 96414feab41b4954360074ac656e2b8e gdb/testsuite/gdb.base/varargs.c @@ -3111,9 +3116,9 @@ d9e17bb34177d4e5e5451b7a1ccc23b7 gdb/testsuite/gdb.base/watchpoint-cond-gone.c 4b740c38221dedee87164d2672b91f79 gdb/testsuite/gdb.base/watchpoint-cond-gone.exp 2a9ad92ef6a4f856d2f8cbc74d71b42e gdb/testsuite/gdb.base/watchpoint-delete.c 30b9cb8e733e54fea5cdbf71702b0ee8 gdb/testsuite/gdb.base/watchpoint-delete.exp -c874d720fe6c68976f66ff27c6da946c gdb/testsuite/gdb.base/watchpoint-hw.c 0aaae63688bb03c5d7396d83b97588e0 gdb/testsuite/gdb.base/watchpoint-hw-hit-once.c 545ef21168a1434c070b48ee8d6b884e gdb/testsuite/gdb.base/watchpoint-hw-hit-once.exp +c874d720fe6c68976f66ff27c6da946c gdb/testsuite/gdb.base/watchpoint-hw.c c058ad583be695298ac6baba7ade02e6 gdb/testsuite/gdb.base/watchpoint-hw.exp 2438fd3bcbad761182cfd4776499434e gdb/testsuite/gdb.base/watchpoint-solib-shr.c 14bb4ed2e7a3ca9f01b6456cd8dee9f0 gdb/testsuite/gdb.base/watchpoint-solib.c @@ -3704,11 +3709,11 @@ d1035b543709f23158df094b6d49742b gdb/testsuite/gdb.hp/gdb.objdbg/tools/test-obj 103f30848803219a9db8fe445895dfa2 gdb/testsuite/gdb.java/Makefile.in 63f3a0db56477a8a423a38f20de3205f gdb/testsuite/gdb.java/jmain.exp 030f9fc25e9acc988163f24817c83ee9 gdb/testsuite/gdb.java/jmain.java -c194af5391bc7c1310b9621d1d1d811e gdb/testsuite/gdb.java/jmisc.exp +3955386528896b182c48284e87177f4b gdb/testsuite/gdb.java/jmisc.exp e3a680cfde66129ed9607ad7c20fd6a0 gdb/testsuite/gdb.java/jmisc.java da2c5a6f26856d356b914dc3e303e201 gdb/testsuite/gdb.java/jnpe.exp df1554dc0e0d4fec69b18ca35eef22d2 gdb/testsuite/gdb.java/jnpe.java -12eba58e54fd44ff325d66cf0109819c gdb/testsuite/gdb.java/jprint.exp +a82d1599333d72e980e75a14f430d631 gdb/testsuite/gdb.java/jprint.exp 3035031cd2f267e7197722302f799e27 gdb/testsuite/gdb.java/jprint.java 0520f99c4fca800e611dfe1727ff2817 gdb/testsuite/gdb.java/jv-exp.exp 83388566b538e9cc2ef8c8bdef0dbd44 gdb/testsuite/gdb.java/jv-print.exp @@ -3718,9 +3723,11 @@ df1554dc0e0d4fec69b18ca35eef22d2 gdb/testsuite/gdb.java/jnpe.java 4cbe227c3ce3b7553c6b43bf0a2c0c0a gdb/testsuite/gdb.linespec/ls-dollar.cc 4f0e3058d0a23ac693c2b87bffbf746b gdb/testsuite/gdb.linespec/ls-dollar.exp 25fb37697e4b6d3bef5326907b5e2cbf gdb/testsuite/gdb.linespec/ls-errs.c -23270f6411b79fa118844d240102be79 gdb/testsuite/gdb.linespec/ls-errs.exp +b9d5ea9a7010aff7b0764321f6835b85 gdb/testsuite/gdb.linespec/ls-errs.exp 52412320dfc03bbc8ae9e0a5956b2d5a gdb/testsuite/gdb.linespec/lspec.cc 76efa0be5b547481043ba197cad7a14e gdb/testsuite/gdb.linespec/lspec.h +d01390218de5119422806a50774518f3 gdb/testsuite/gdb.linespec/thread.c +f5cfa5bb073e9fdd45d686a0b26adac4 gdb/testsuite/gdb.linespec/thread.exp 6db4b606c9a0b27272f4c918408081cb gdb/testsuite/gdb.linespec/base/one/thefile.cc 6063637e818b9601823ea95e95cfcfab gdb/testsuite/gdb.linespec/base/two/thefile.cc 1efe6f6402cbf322cd8aa810521f4b17 gdb/testsuite/gdb.mi/ChangeLog-1999-2003 @@ -3785,6 +3792,8 @@ ee24692225ea85b28daabbd1ad974b62 gdb/testsuite/gdb.mi/mi-var-child.c 3f48c06500859c3cf308754bac65f6b0 gdb/testsuite/gdb.mi/mi-var-cmd.exp 8598dd80f7a0084ddc50cb8423376a93 gdb/testsuite/gdb.mi/mi-var-cp.cc dc5043efc1e27dfee24432a323fe296e gdb/testsuite/gdb.mi/mi-var-cp.exp +9fdfa766cff302c6f682209875fa3279 gdb/testsuite/gdb.mi/mi-var-create-rtti.c +7834fe61dc99271281caec6a49e05e01 gdb/testsuite/gdb.mi/mi-var-create-rtti.exp 7f8ccbc524207bc51ed381afeffdb3d7 gdb/testsuite/gdb.mi/mi-var-display.exp a9474410222ee8fab31dfb464e59198c gdb/testsuite/gdb.mi/mi-var-invalidate.exp 24d9eae00eb2ddcc9946624160a680cb gdb/testsuite/gdb.mi/mi-var-rtti.cc @@ -3961,6 +3970,9 @@ b4d2852e0a6c20f6a94cb2bea32b7428 gdb/testsuite/gdb.python/python.c 4262afd139ccc75abebdbd4a936378c5 gdb/testsuite/gdb.python/source1 01f60a446360a6a9e07afb55ac6cd5d9 gdb/testsuite/gdb.python/source2.py 5d0857368c33e2992acae395c7353dee gdb/testsuite/gdb.reverse/Makefile.in +e158161c9ef174b36b69bb8e7b48f367 gdb/testsuite/gdb.reverse/amd64-tailcall-reverse.S +e40f94b35f639d77782865bf77869423 gdb/testsuite/gdb.reverse/amd64-tailcall-reverse.c +6a6a93044bdd636106d2c5622a63ae12 gdb/testsuite/gdb.reverse/amd64-tailcall-reverse.exp e1f07c48544f9e652a81e4fc357822ac gdb/testsuite/gdb.reverse/break-precsave.exp b749c2f0e459adb076c510d07419c9b6 gdb/testsuite/gdb.reverse/break-reverse.c d2afd35b6abf06808c0db8cd3d6f974b gdb/testsuite/gdb.reverse/break-reverse.exp @@ -3989,6 +4001,11 @@ b34b810f445106b670055e89fd6d4f61 gdb/testsuite/gdb.reverse/machinestate.exp e7b8677e478b90ad5c33f356e36bd734 gdb/testsuite/gdb.reverse/sigall-precsave.exp b48715211845417cac4850ca50b276f4 gdb/testsuite/gdb.reverse/sigall-reverse.c 7cb15f12754160514415b7c3091a9856 gdb/testsuite/gdb.reverse/sigall-reverse.exp +22794bd0ee0b96cacdd4742106dfc2f0 gdb/testsuite/gdb.reverse/singlejmp-reverse-nodebug.S +053fa5e737f4a8ea969ab77b4e21f9c3 gdb/testsuite/gdb.reverse/singlejmp-reverse-nodebug.c +9bf9af6d7b26ea37ec31e24161532d69 gdb/testsuite/gdb.reverse/singlejmp-reverse.S +4c01008b4dbc1795c3d681d1ba8386f8 gdb/testsuite/gdb.reverse/singlejmp-reverse.c +45c3827c8d3742e35c4bda7b728074e2 gdb/testsuite/gdb.reverse/singlejmp-reverse.exp f17cfbb6458a72c312f00c807cc6c33f gdb/testsuite/gdb.reverse/solib-precsave.exp 0739a17b9f89c3f77f566fbb0fa04e86 gdb/testsuite/gdb.reverse/solib-reverse.c 2812d36b3d0fa46d067e16019e504aea gdb/testsuite/gdb.reverse/solib-reverse.exp @@ -4213,7 +4230,7 @@ f3b186643f452e1f8a949613a87ac99a gdb/testsuite/lib/cell.exp 6b64019bc3b989ff3c4f43d7d05d9989 gdb/testsuite/lib/fortran.exp 5cd24413a6dbb7177ca707c2b64607d3 gdb/testsuite/lib/future.exp d239eaeaacac1055125b70b9a9760421 gdb/testsuite/lib/gdb-python.exp -15bba05edc13cbd18287147a37ad99e1 gdb/testsuite/lib/gdb.exp +906f477f9b33d6f8625394a429c225ac gdb/testsuite/lib/gdb.exp 50b624a3bb3f5fe169fddeaf02daa20a gdb/testsuite/lib/gdbserver-support.exp 777cf66a4347ab65ba50690bfe3b2ab4 gdb/testsuite/lib/go.exp 124f4627e54084a8df56842b401576f4 gdb/testsuite/lib/java.exp @@ -4689,7 +4706,7 @@ a97c47969dfc92a7666dfe3c2e1e1448 libdecnumber/dpd/decimal32Symbols.h 0f6db29710e7075c2fd62bc4478b3b8d libdecnumber/dpd/decimal64Symbols.h 99c2e5e712b990ee07be10f53e41f3fb libiberty/.gitignore a916467b91076e631dd8edb7424769c7 libiberty/COPYING.LIB -6a9fd50468b78362739488bf7b845843 libiberty/ChangeLog +870f4a13c436d221ef483dcc434724f6 libiberty/ChangeLog 78cbb9fa07796e2b83ec5539ebd53589 libiberty/Makefile.in c68dbf7834af4281ebd84caa3fd54680 libiberty/README 8797cb1a6faa84f3c7fe3d12164a4b13 libiberty/_doprnt.c @@ -4750,7 +4767,7 @@ fe4e25fb7df7cacdc921eaf39ce595af libiberty/maint-tool e7487c25e2021939bf5af58e8cd70a3f libiberty/make-relative-prefix.c 0172f6488e44155e35d94e3f2c5c3c5c libiberty/make-temp-file.c 379561229f99437be05ede87fbcf8533 libiberty/makefile.vms -7005e9cc6647b299a791a6af3904e49b libiberty/md5.c +4e8442fe28956a3c8f62353b4b036c6b libiberty/md5.c de9bd20436bf2cb64d8c374c110ce315 libiberty/memchr.c 33320d312ab390ca0eb5c43c9e349d57 libiberty/memcmp.c c90c2f09bdcbd65b4732a4be25a56d12 libiberty/memcpy.c -- 2.7.4