- Rebase to FSF GDB 7.2.50.20110117 (which is a 7.3 pre-release).

- Fix callback-mode readline-6.0 regression for CTRL-C (for RHEL-6.0).
  - Fix occasional NULL dereference of the readline-6.0 workaround (BZ 575516).
This commit is contained in:
Jan Kratochvil 2011-01-17 16:31:43 +01:00
parent a174f683ec
commit b0e03f562d
18 changed files with 1395 additions and 1628 deletions

2
.gitignore vendored
View File

@ -1,2 +1,2 @@
/gdb-7.2.50.20110107.tar.bz2
/libstdc++-v3-python-r155978.tar.bz2 /libstdc++-v3-python-r155978.tar.bz2
/gdb-7.2.50.20110117.tar.bz2

View File

@ -6,10 +6,10 @@
use to skip over first half of a GNU/Linux syscall and update use to skip over first half of a GNU/Linux syscall and update
"func_start". "func_start".
Index: gdb-6.8.50.20090802/gdb/rs6000-tdep.c Index: gdb-7.2.50.20110117/gdb/rs6000-tdep.c
=================================================================== ===================================================================
--- gdb-6.8.50.20090802.orig/gdb/rs6000-tdep.c 2009-07-31 17:23:20.000000000 +0200 --- gdb-7.2.50.20110117.orig/gdb/rs6000-tdep.c 2011-01-11 20:23:02.000000000 +0100
+++ gdb-6.8.50.20090802/gdb/rs6000-tdep.c 2009-08-03 09:52:39.000000000 +0200 +++ gdb-7.2.50.20110117/gdb/rs6000-tdep.c 2011-01-17 15:48:19.000000000 +0100
@@ -126,6 +126,7 @@ static const char *powerpc_vector_abi_st @@ -126,6 +126,7 @@ static const char *powerpc_vector_abi_st
struct rs6000_framedata struct rs6000_framedata
@ -18,7 +18,7 @@ Index: gdb-6.8.50.20090802/gdb/rs6000-tdep.c
int offset; /* total size of frame --- the distance int offset; /* total size of frame --- the distance
by which we decrement sp to allocate by which we decrement sp to allocate
the frame */ the frame */
@@ -1488,7 +1489,6 @@ static CORE_ADDR @@ -1496,7 +1497,6 @@ static CORE_ADDR
skip_prologue (struct gdbarch *gdbarch, CORE_ADDR pc, CORE_ADDR lim_pc, skip_prologue (struct gdbarch *gdbarch, CORE_ADDR pc, CORE_ADDR lim_pc,
struct rs6000_framedata *fdata) struct rs6000_framedata *fdata)
{ {
@ -26,7 +26,7 @@ Index: gdb-6.8.50.20090802/gdb/rs6000-tdep.c
CORE_ADDR last_prologue_pc = pc; CORE_ADDR last_prologue_pc = pc;
CORE_ADDR li_found_pc = 0; CORE_ADDR li_found_pc = 0;
gdb_byte buf[4]; gdb_byte buf[4];
@@ -1506,12 +1506,14 @@ skip_prologue (struct gdbarch *gdbarch, @@ -1514,12 +1514,14 @@ skip_prologue (struct gdbarch *gdbarch,
int minimal_toc_loaded = 0; int minimal_toc_loaded = 0;
int prev_insn_was_prologue_insn = 1; int prev_insn_was_prologue_insn = 1;
int num_skip_non_prologue_insns = 0; int num_skip_non_prologue_insns = 0;
@ -41,7 +41,7 @@ Index: gdb-6.8.50.20090802/gdb/rs6000-tdep.c
fdata->saved_gpr = -1; fdata->saved_gpr = -1;
fdata->saved_fpr = -1; fdata->saved_fpr = -1;
fdata->saved_vr = -1; fdata->saved_vr = -1;
@@ -1545,6 +1547,55 @@ skip_prologue (struct gdbarch *gdbarch, @@ -1553,6 +1555,55 @@ skip_prologue (struct gdbarch *gdbarch,
break; break;
op = extract_unsigned_integer (buf, 4, byte_order); op = extract_unsigned_integer (buf, 4, byte_order);
@ -97,7 +97,7 @@ Index: gdb-6.8.50.20090802/gdb/rs6000-tdep.c
if ((op & 0xfc1fffff) == 0x7c0802a6) if ((op & 0xfc1fffff) == 0x7c0802a6)
{ /* mflr Rx */ { /* mflr Rx */
/* Since shared library / PIC code, which needs to get its /* Since shared library / PIC code, which needs to get its
@@ -1726,9 +1777,9 @@ skip_prologue (struct gdbarch *gdbarch, @@ -1734,9 +1785,9 @@ skip_prologue (struct gdbarch *gdbarch,
we have no line table information or the line info tells we have no line table information or the line info tells
us that the subroutine call is not part of the line us that the subroutine call is not part of the line
associated with the prologue. */ associated with the prologue. */
@ -108,4 +108,4 @@ Index: gdb-6.8.50.20090802/gdb/rs6000-tdep.c
+ struct symtab_and_line prologue_sal = find_pc_line (fdata->func_start, 0); + struct symtab_and_line prologue_sal = find_pc_line (fdata->func_start, 0);
struct symtab_and_line this_sal = find_pc_line (pc, 0); struct symtab_and_line this_sal = find_pc_line (pc, 0);
if ((prologue_sal.line == 0) || (prologue_sal.line != this_sal.line)) if ((prologue_sal.line == 0)

View File

@ -11,10 +11,10 @@
* gdb.texinfo (File Options): Document --readnever. * gdb.texinfo (File Options): Document --readnever.
Index: gdb-7.2.50.20110107/gdb/doc/gdb.texinfo Index: gdb-7.2.50.20110117/gdb/doc/gdb.texinfo
=================================================================== ===================================================================
--- gdb-7.2.50.20110107.orig/gdb/doc/gdb.texinfo 2011-01-07 09:03:38.000000000 +0100 --- gdb-7.2.50.20110117.orig/gdb/doc/gdb.texinfo 2011-01-17 15:47:37.000000000 +0100
+++ gdb-7.2.50.20110107/gdb/doc/gdb.texinfo 2011-01-07 09:04:48.000000000 +0100 +++ gdb-7.2.50.20110117/gdb/doc/gdb.texinfo 2011-01-17 15:50:41.000000000 +0100
@@ -1007,6 +1007,12 @@ Read each symbol file's entire symbol ta @@ -1007,6 +1007,12 @@ Read each symbol file's entire symbol ta
the default, which is to read it incrementally as it is needed. the default, which is to read it incrementally as it is needed.
This makes startup slower, but makes future operations faster. This makes startup slower, but makes future operations faster.
@ -28,10 +28,10 @@ Index: gdb-7.2.50.20110107/gdb/doc/gdb.texinfo
@end table @end table
@node Mode Options @node Mode Options
Index: gdb-7.2.50.20110107/gdb/main.c Index: gdb-7.2.50.20110117/gdb/main.c
=================================================================== ===================================================================
--- gdb-7.2.50.20110107.orig/gdb/main.c 2011-01-07 09:04:39.000000000 +0100 --- gdb-7.2.50.20110117.orig/gdb/main.c 2011-01-17 15:50:21.000000000 +0100
+++ gdb-7.2.50.20110107/gdb/main.c 2011-01-07 09:05:02.000000000 +0100 +++ gdb-7.2.50.20110117/gdb/main.c 2011-01-17 15:50:41.000000000 +0100
@@ -395,6 +395,7 @@ captured_main (void *data) @@ -395,6 +395,7 @@ captured_main (void *data)
{"xdb", no_argument, &xdb_commands, 1}, {"xdb", no_argument, &xdb_commands, 1},
{"dbx", no_argument, &dbx_commands, 1}, {"dbx", no_argument, &dbx_commands, 1},
@ -40,7 +40,7 @@ Index: gdb-7.2.50.20110107/gdb/main.c
{"r", no_argument, &readnow_symbol_files, 1}, {"r", no_argument, &readnow_symbol_files, 1},
{"quiet", no_argument, &quiet, 1}, {"quiet", no_argument, &quiet, 1},
{"q", no_argument, &quiet, 1}, {"q", no_argument, &quiet, 1},
@@ -1060,6 +1061,7 @@ Options:\n\n\ @@ -1061,6 +1062,7 @@ Options:\n\n\
fputs_unfiltered (_("\ fputs_unfiltered (_("\
--quiet Do not print version number on startup.\n\ --quiet Do not print version number on startup.\n\
--readnow Fully read symbol files on first access.\n\ --readnow Fully read symbol files on first access.\n\
@ -48,22 +48,22 @@ Index: gdb-7.2.50.20110107/gdb/main.c
"), stream); "), stream);
fputs_unfiltered (_("\ fputs_unfiltered (_("\
--se=FILE Use FILE as symbol file and executable file.\n\ --se=FILE Use FILE as symbol file and executable file.\n\
Index: gdb-7.2.50.20110107/gdb/symfile.c Index: gdb-7.2.50.20110117/gdb/symfile.c
=================================================================== ===================================================================
--- gdb-7.2.50.20110107.orig/gdb/symfile.c 2011-01-05 23:22:50.000000000 +0100 --- gdb-7.2.50.20110117.orig/gdb/symfile.c 2011-01-11 22:53:24.000000000 +0100
+++ gdb-7.2.50.20110107/gdb/symfile.c 2011-01-07 09:04:48.000000000 +0100 +++ gdb-7.2.50.20110117/gdb/symfile.c 2011-01-17 15:50:53.000000000 +0100
@@ -81,6 +81,7 @@ static void clear_symtab_users_cleanup ( @@ -81,6 +81,7 @@ static void clear_symtab_users_cleanup (
/* Global variables owned by this file */ /* Global variables owned by this file. */
int readnow_symbol_files; /* Read full symbols immediately */ int readnow_symbol_files; /* Read full symbols immediately. */
+int readnever_symbol_files; /* Never read full symbols. */ +int readnever_symbol_files; /* Never read full symbols. */
/* External variables and functions referenced. */ /* External variables and functions referenced. */
Index: gdb-7.2.50.20110107/gdb/dwarf2read.c Index: gdb-7.2.50.20110117/gdb/dwarf2read.c
=================================================================== ===================================================================
--- gdb-7.2.50.20110107.orig/gdb/dwarf2read.c 2011-01-07 09:03:38.000000000 +0100 --- gdb-7.2.50.20110117.orig/gdb/dwarf2read.c 2011-01-17 15:47:37.000000000 +0100
+++ gdb-7.2.50.20110107/gdb/dwarf2read.c 2011-01-07 09:04:48.000000000 +0100 +++ gdb-7.2.50.20110117/gdb/dwarf2read.c 2011-01-17 15:50:41.000000000 +0100
@@ -57,6 +57,7 @@ @@ -57,6 +57,7 @@
#include "vec.h" #include "vec.h"
#include "c-lang.h" #include "c-lang.h"
@ -84,10 +84,10 @@ Index: gdb-7.2.50.20110107/gdb/dwarf2read.c
} }
/* When loading sections, we can either look for ".<name>", or for /* When loading sections, we can either look for ".<name>", or for
Index: gdb-7.2.50.20110107/gdb/top.h Index: gdb-7.2.50.20110117/gdb/top.h
=================================================================== ===================================================================
--- gdb-7.2.50.20110107.orig/gdb/top.h 2011-01-01 16:33:18.000000000 +0100 --- gdb-7.2.50.20110117.orig/gdb/top.h 2011-01-01 16:33:18.000000000 +0100
+++ gdb-7.2.50.20110107/gdb/top.h 2011-01-07 09:04:48.000000000 +0100 +++ gdb-7.2.50.20110117/gdb/top.h 2011-01-17 15:50:41.000000000 +0100
@@ -61,6 +61,7 @@ extern void set_prompt (char *); @@ -61,6 +61,7 @@ extern void set_prompt (char *);
/* From random places. */ /* From random places. */

View File

@ -1,7 +1,7 @@
Index: gdb-7.2.50.20101116/gdb/testsuite/configure.ac Index: gdb-7.2.50.20110117/gdb/testsuite/configure.ac
=================================================================== ===================================================================
--- gdb-7.2.50.20101116.orig/gdb/testsuite/configure.ac 2010-11-05 15:31:29.000000000 +0100 --- gdb-7.2.50.20110117.orig/gdb/testsuite/configure.ac 2011-01-05 06:09:55.000000000 +0100
+++ gdb-7.2.50.20101116/gdb/testsuite/configure.ac 2010-11-16 07:56:53.000000000 +0100 +++ gdb-7.2.50.20110117/gdb/testsuite/configure.ac 2011-01-17 15:50:03.000000000 +0100
@@ -144,6 +144,6 @@ AC_OUTPUT([Makefile \ @@ -144,6 +144,6 @@ AC_OUTPUT([Makefile \
gdb.cp/Makefile gdb.disasm/Makefile gdb.dwarf2/Makefile \ gdb.cp/Makefile gdb.disasm/Makefile gdb.dwarf2/Makefile \
gdb.fortran/Makefile gdb.server/Makefile gdb.java/Makefile \ gdb.fortran/Makefile gdb.server/Makefile gdb.java/Makefile \
@ -10,31 +10,31 @@ Index: gdb-7.2.50.20101116/gdb/testsuite/configure.ac
+ gdb.objc/Makefile gdb.opencl/Makefile gdb.opt/Makefile gdb.pascal/Makefile gdb.pie/Makefile \ + gdb.objc/Makefile gdb.opencl/Makefile gdb.opt/Makefile gdb.pascal/Makefile gdb.pie/Makefile \
gdb.python/Makefile gdb.reverse/Makefile \ gdb.python/Makefile gdb.reverse/Makefile \
gdb.threads/Makefile gdb.trace/Makefile gdb.xml/Makefile]) gdb.threads/Makefile gdb.trace/Makefile gdb.xml/Makefile])
Index: gdb-7.2.50.20101116/gdb/testsuite/configure Index: gdb-7.2.50.20110117/gdb/testsuite/configure
=================================================================== ===================================================================
--- gdb-7.2.50.20101116.orig/gdb/testsuite/configure 2010-11-05 15:31:29.000000000 +0100 --- gdb-7.2.50.20110117.orig/gdb/testsuite/configure 2011-01-07 03:51:09.000000000 +0100
+++ gdb-7.2.50.20101116/gdb/testsuite/configure 2010-11-16 07:57:59.000000000 +0100 +++ gdb-7.2.50.20110117/gdb/testsuite/configure 2011-01-17 15:50:09.000000000 +0100
@@ -3515,7 +3515,7 @@ done @@ -3515,7 +3515,7 @@ done
-ac_config_files="$ac_config_files Makefile gdb.ada/Makefile gdb.arch/Makefile gdb.asm/Makefile gdb.base/Makefile gdb.cp/Makefile gdb.disasm/Makefile gdb.dwarf2/Makefile gdb.fortran/Makefile gdb.server/Makefile gdb.java/Makefile gdb.mi/Makefile gdb.modula2/Makefile gdb.multi/Makefile gdb.objc/Makefile gdb.opt/Makefile gdb.pascal/Makefile gdb.python/Makefile gdb.reverse/Makefile gdb.threads/Makefile gdb.trace/Makefile gdb.xml/Makefile gdb.opencl/Makefile" -ac_config_files="$ac_config_files Makefile gdb.ada/Makefile gdb.arch/Makefile gdb.asm/Makefile gdb.base/Makefile gdb.cp/Makefile gdb.disasm/Makefile gdb.dwarf2/Makefile gdb.fortran/Makefile gdb.server/Makefile gdb.java/Makefile gdb.mi/Makefile gdb.modula2/Makefile gdb.multi/Makefile gdb.objc/Makefile gdb.opencl/Makefile gdb.opt/Makefile gdb.pascal/Makefile gdb.python/Makefile gdb.reverse/Makefile gdb.threads/Makefile gdb.trace/Makefile gdb.xml/Makefile"
+ac_config_files="$ac_config_files Makefile gdb.ada/Makefile gdb.arch/Makefile gdb.asm/Makefile gdb.base/Makefile gdb.cp/Makefile gdb.disasm/Makefile gdb.dwarf2/Makefile gdb.fortran/Makefile gdb.server/Makefile gdb.java/Makefile gdb.mi/Makefile gdb.modula2/Makefile gdb.multi/Makefile gdb.objc/Makefile gdb.opt/Makefile gdb.pascal/Makefile gdb.pie/Makefile gdb.python/Makefile gdb.reverse/Makefile gdb.threads/Makefile gdb.trace/Makefile gdb.xml/Makefile gdb.opencl/Makefile" +ac_config_files="$ac_config_files Makefile gdb.ada/Makefile gdb.arch/Makefile gdb.asm/Makefile gdb.base/Makefile gdb.cp/Makefile gdb.disasm/Makefile gdb.dwarf2/Makefile gdb.fortran/Makefile gdb.server/Makefile gdb.java/Makefile gdb.mi/Makefile gdb.modula2/Makefile gdb.multi/Makefile gdb.objc/Makefile gdb.opencl/Makefile gdb.opt/Makefile gdb.pascal/Makefile gdb.pie/Makefile gdb.python/Makefile gdb.reverse/Makefile gdb.threads/Makefile gdb.trace/Makefile gdb.xml/Makefile"
cat >confcache <<\_ACEOF cat >confcache <<\_ACEOF
# This file is a shell script that caches the results of configure # This file is a shell script that caches the results of configure
@@ -4232,6 +4232,7 @@ do @@ -4233,6 +4233,7 @@ do
"gdb.objc/Makefile") CONFIG_FILES="$CONFIG_FILES gdb.objc/Makefile" ;; "gdb.opencl/Makefile") CONFIG_FILES="$CONFIG_FILES gdb.opencl/Makefile" ;;
"gdb.opt/Makefile") CONFIG_FILES="$CONFIG_FILES gdb.opt/Makefile" ;; "gdb.opt/Makefile") CONFIG_FILES="$CONFIG_FILES gdb.opt/Makefile" ;;
"gdb.pascal/Makefile") CONFIG_FILES="$CONFIG_FILES gdb.pascal/Makefile" ;; "gdb.pascal/Makefile") CONFIG_FILES="$CONFIG_FILES gdb.pascal/Makefile" ;;
+ "gdb.pie/Makefile") CONFIG_FILES="$CONFIG_FILES gdb.pie/Makefile" ;; + "gdb.pie/Makefile") CONFIG_FILES="$CONFIG_FILES gdb.pie/Makefile" ;;
"gdb.python/Makefile") CONFIG_FILES="$CONFIG_FILES gdb.python/Makefile" ;; "gdb.python/Makefile") CONFIG_FILES="$CONFIG_FILES gdb.python/Makefile" ;;
"gdb.reverse/Makefile") CONFIG_FILES="$CONFIG_FILES gdb.reverse/Makefile" ;; "gdb.reverse/Makefile") CONFIG_FILES="$CONFIG_FILES gdb.reverse/Makefile" ;;
"gdb.threads/Makefile") CONFIG_FILES="$CONFIG_FILES gdb.threads/Makefile" ;; "gdb.threads/Makefile") CONFIG_FILES="$CONFIG_FILES gdb.threads/Makefile" ;;
Index: gdb-7.2.50.20101116/gdb/testsuite/gdb.pie/attach.c Index: gdb-7.2.50.20110117/gdb/testsuite/gdb.pie/attach.c
=================================================================== ===================================================================
--- /dev/null 1970-01-01 00:00:00.000000000 +0000 --- /dev/null 1970-01-01 00:00:00.000000000 +0000
+++ gdb-7.2.50.20101116/gdb/testsuite/gdb.pie/attach.c 2010-11-16 07:56:34.000000000 +0100 +++ gdb-7.2.50.20110117/gdb/testsuite/gdb.pie/attach.c 2011-01-17 15:50:03.000000000 +0100
@@ -0,0 +1,20 @@ @@ -0,0 +1,20 @@
+/* This program is intended to be started outside of gdb, and then +/* This program is intended to be started outside of gdb, and then
+ attached to by gdb. Thus, it simply spins in a loop. The loop + attached to by gdb. Thus, it simply spins in a loop. The loop
@ -56,10 +56,10 @@ Index: gdb-7.2.50.20101116/gdb/testsuite/gdb.pie/attach.c
+ } + }
+ return 0; + return 0;
+} +}
Index: gdb-7.2.50.20101116/gdb/testsuite/gdb.pie/attach2.c Index: gdb-7.2.50.20110117/gdb/testsuite/gdb.pie/attach2.c
=================================================================== ===================================================================
--- /dev/null 1970-01-01 00:00:00.000000000 +0000 --- /dev/null 1970-01-01 00:00:00.000000000 +0000
+++ gdb-7.2.50.20101116/gdb/testsuite/gdb.pie/attach2.c 2010-11-16 07:56:34.000000000 +0100 +++ gdb-7.2.50.20110117/gdb/testsuite/gdb.pie/attach2.c 2011-01-17 15:50:03.000000000 +0100
@@ -0,0 +1,24 @@ @@ -0,0 +1,24 @@
+/* This program is intended to be started outside of gdb, and then +/* This program is intended to be started outside of gdb, and then
+ attached to by gdb. Thus, it simply spins in a loop. The loop + attached to by gdb. Thus, it simply spins in a loop. The loop
@ -85,10 +85,10 @@ Index: gdb-7.2.50.20101116/gdb/testsuite/gdb.pie/attach2.c
+ } + }
+ return (0); + return (0);
+} +}
Index: gdb-7.2.50.20101116/gdb/testsuite/gdb.pie/break.c Index: gdb-7.2.50.20110117/gdb/testsuite/gdb.pie/break.c
=================================================================== ===================================================================
--- /dev/null 1970-01-01 00:00:00.000000000 +0000 --- /dev/null 1970-01-01 00:00:00.000000000 +0000
+++ gdb-7.2.50.20101116/gdb/testsuite/gdb.pie/break.c 2010-11-16 07:56:34.000000000 +0100 +++ gdb-7.2.50.20110117/gdb/testsuite/gdb.pie/break.c 2011-01-17 15:50:03.000000000 +0100
@@ -0,0 +1,146 @@ @@ -0,0 +1,146 @@
+/* This testcase is part of GDB, the GNU debugger. +/* This testcase is part of GDB, the GNU debugger.
+ +
@ -236,10 +236,10 @@ Index: gdb-7.2.50.20101116/gdb/testsuite/gdb.pie/break.c
+ } + }
+ return 0; + return 0;
+} +}
Index: gdb-7.2.50.20101116/gdb/testsuite/gdb.pie/break1.c Index: gdb-7.2.50.20110117/gdb/testsuite/gdb.pie/break1.c
=================================================================== ===================================================================
--- /dev/null 1970-01-01 00:00:00.000000000 +0000 --- /dev/null 1970-01-01 00:00:00.000000000 +0000
+++ gdb-7.2.50.20101116/gdb/testsuite/gdb.pie/break1.c 2010-11-16 07:56:34.000000000 +0100 +++ gdb-7.2.50.20110117/gdb/testsuite/gdb.pie/break1.c 2011-01-17 15:50:03.000000000 +0100
@@ -0,0 +1,44 @@ @@ -0,0 +1,44 @@
+/* This testcase is part of GDB, the GNU debugger. +/* This testcase is part of GDB, the GNU debugger.
+ +
@ -285,10 +285,10 @@ Index: gdb-7.2.50.20101116/gdb/testsuite/gdb.pie/break1.c
+void marker3 (a, b) char *a, *b; {} /* set breakpoint 18 here */ +void marker3 (a, b) char *a, *b; {} /* set breakpoint 18 here */
+void marker4 (d) long d; {} /* set breakpoint 13 here */ +void marker4 (d) long d; {} /* set breakpoint 13 here */
+#endif +#endif
Index: gdb-7.2.50.20101116/gdb/testsuite/gdb.pie/coremaker.c Index: gdb-7.2.50.20110117/gdb/testsuite/gdb.pie/coremaker.c
=================================================================== ===================================================================
--- /dev/null 1970-01-01 00:00:00.000000000 +0000 --- /dev/null 1970-01-01 00:00:00.000000000 +0000
+++ gdb-7.2.50.20101116/gdb/testsuite/gdb.pie/coremaker.c 2010-11-16 07:56:34.000000000 +0100 +++ gdb-7.2.50.20110117/gdb/testsuite/gdb.pie/coremaker.c 2011-01-17 15:50:03.000000000 +0100
@@ -0,0 +1,142 @@ @@ -0,0 +1,142 @@
+/* Copyright 1992, 1993, 1994, 1995, 1996, 1999 +/* Copyright 1992, 1993, 1994, 1995, 1996, 1999
+ Free Software Foundation, Inc. + Free Software Foundation, Inc.
@ -432,10 +432,10 @@ Index: gdb-7.2.50.20101116/gdb/testsuite/gdb.pie/coremaker.c
+ return 0; + return 0;
+} +}
+ +
Index: gdb-7.2.50.20101116/gdb/testsuite/gdb.pie/attach.exp Index: gdb-7.2.50.20110117/gdb/testsuite/gdb.pie/attach.exp
=================================================================== ===================================================================
--- /dev/null 1970-01-01 00:00:00.000000000 +0000 --- /dev/null 1970-01-01 00:00:00.000000000 +0000
+++ gdb-7.2.50.20101116/gdb/testsuite/gdb.pie/attach.exp 2010-11-16 07:56:34.000000000 +0100 +++ gdb-7.2.50.20110117/gdb/testsuite/gdb.pie/attach.exp 2011-01-17 15:50:03.000000000 +0100
@@ -0,0 +1,423 @@ @@ -0,0 +1,423 @@
+# Copyright 1997, 1999, 2002 Free Software Foundation, Inc. +# Copyright 1997, 1999, 2002 Free Software Foundation, Inc.
+ +
@ -860,10 +860,10 @@ Index: gdb-7.2.50.20101116/gdb/testsuite/gdb.pie/attach.exp
+do_call_attach_tests +do_call_attach_tests
+ +
+return 0 +return 0
Index: gdb-7.2.50.20101116/gdb/testsuite/gdb.pie/break.exp Index: gdb-7.2.50.20110117/gdb/testsuite/gdb.pie/break.exp
=================================================================== ===================================================================
--- /dev/null 1970-01-01 00:00:00.000000000 +0000 --- /dev/null 1970-01-01 00:00:00.000000000 +0000
+++ gdb-7.2.50.20101116/gdb/testsuite/gdb.pie/break.exp 2010-11-16 07:56:34.000000000 +0100 +++ gdb-7.2.50.20110117/gdb/testsuite/gdb.pie/break.exp 2011-01-17 15:50:03.000000000 +0100
@@ -0,0 +1,966 @@ @@ -0,0 +1,966 @@
+# Copyright 1988, 1990, 1991, 1992, 1994, 1995, 1996, 1997, 1998, 1999, +# Copyright 1988, 1990, 1991, 1992, 1994, 1995, 1996, 1997, 1998, 1999,
+# 2000, 2002, 2003, 2004 +# 2000, 2002, 2003, 2004
@ -1831,10 +1831,10 @@ Index: gdb-7.2.50.20101116/gdb/testsuite/gdb.pie/break.exp
+ send_gdb "set args main\n" + send_gdb "set args main\n"
+ gdb_expect -re ".*$gdb_prompt $" {} + gdb_expect -re ".*$gdb_prompt $" {}
+} +}
Index: gdb-7.2.50.20101116/gdb/testsuite/gdb.pie/corefile.exp Index: gdb-7.2.50.20110117/gdb/testsuite/gdb.pie/corefile.exp
=================================================================== ===================================================================
--- /dev/null 1970-01-01 00:00:00.000000000 +0000 --- /dev/null 1970-01-01 00:00:00.000000000 +0000
+++ gdb-7.2.50.20101116/gdb/testsuite/gdb.pie/corefile.exp 2010-11-16 07:56:34.000000000 +0100 +++ gdb-7.2.50.20110117/gdb/testsuite/gdb.pie/corefile.exp 2011-01-17 15:50:03.000000000 +0100
@@ -0,0 +1,233 @@ @@ -0,0 +1,233 @@
+# Copyright 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000 +# Copyright 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000
+# Free Software Foundation, Inc. +# Free Software Foundation, Inc.
@ -2069,10 +2069,10 @@ Index: gdb-7.2.50.20101116/gdb/testsuite/gdb.pie/corefile.exp
+gdb_test "up" "#\[0-9\]* *\[0-9xa-fH'\]* in .* \\(.*\\).*" "up in corefile.exp (reinit)" +gdb_test "up" "#\[0-9\]* *\[0-9xa-fH'\]* in .* \\(.*\\).*" "up in corefile.exp (reinit)"
+ +
+gdb_test "core" "No core file now." +gdb_test "core" "No core file now."
Index: gdb-7.2.50.20101116/gdb/testsuite/gdb.pie/Makefile.in Index: gdb-7.2.50.20110117/gdb/testsuite/gdb.pie/Makefile.in
=================================================================== ===================================================================
--- /dev/null 1970-01-01 00:00:00.000000000 +0000 --- /dev/null 1970-01-01 00:00:00.000000000 +0000
+++ gdb-7.2.50.20101116/gdb/testsuite/gdb.pie/Makefile.in 2010-11-16 07:56:34.000000000 +0100 +++ gdb-7.2.50.20110117/gdb/testsuite/gdb.pie/Makefile.in 2011-01-17 15:50:03.000000000 +0100
@@ -0,0 +1,19 @@ @@ -0,0 +1,19 @@
+VPATH = @srcdir@ +VPATH = @srcdir@
+srcdir = @srcdir@ +srcdir = @srcdir@

View File

@ -1,13 +1,13 @@
https://bugzilla.redhat.com/bugzilla/show_bug.cgi?id=218379 https://bugzilla.redhat.com/bugzilla/show_bug.cgi?id=218379
Index: gdb-7.2.50.20110107/gdb/symtab.c Index: gdb-7.2.50.20110117/gdb/symtab.c
=================================================================== ===================================================================
--- gdb-7.2.50.20110107.orig/gdb/symtab.c 2011-01-07 09:03:38.000000000 +0100 --- gdb-7.2.50.20110117.orig/gdb/symtab.c 2011-01-17 15:47:37.000000000 +0100
+++ gdb-7.2.50.20110107/gdb/symtab.c 2011-01-07 09:06:32.000000000 +0100 +++ gdb-7.2.50.20110117/gdb/symtab.c 2011-01-17 15:51:48.000000000 +0100
@@ -2014,6 +2014,13 @@ find_pc_sect_line (CORE_ADDR pc, struct @@ -2015,6 +2015,13 @@ find_pc_sect_line (CORE_ADDR pc, struct
/* warning ("In stub for %s; unable to find real function/line info", SYMBOL_LINKAGE_NAME (msymbol)); */
SYMBOL_LINKAGE_NAME (msymbol)) */ ; ;
/* fall through */ /* fall through */
+ /* `msymbol' trampoline may be located before its .text symbol + /* `msymbol' trampoline may be located before its .text symbol
+ but this text symbol may be the address we were looking for. + but this text symbol may be the address we were looking for.

View File

@ -1,7 +1,7 @@
Index: gdb-7.2.50.20110107/gdb/corelow.c Index: gdb-7.2.50.20110117/gdb/corelow.c
=================================================================== ===================================================================
--- gdb-7.2.50.20110107.orig/gdb/corelow.c 2011-01-05 23:22:47.000000000 +0100 --- gdb-7.2.50.20110117.orig/gdb/corelow.c 2011-01-05 23:22:47.000000000 +0100
+++ gdb-7.2.50.20110107/gdb/corelow.c 2011-01-07 09:07:01.000000000 +0100 +++ gdb-7.2.50.20110117/gdb/corelow.c 2011-01-17 15:52:06.000000000 +0100
@@ -47,6 +47,9 @@ @@ -47,6 +47,9 @@
#include "filenames.h" #include "filenames.h"
#include "progspace.h" #include "progspace.h"
@ -90,11 +90,11 @@ Index: gdb-7.2.50.20110107/gdb/corelow.c
+ NULL, NULL, NULL, + NULL, NULL, NULL,
+ &setlist, &showlist); + &setlist, &showlist);
} }
Index: gdb-7.2.50.20110107/gdb/doc/gdb.texinfo Index: gdb-7.2.50.20110117/gdb/doc/gdb.texinfo
=================================================================== ===================================================================
--- gdb-7.2.50.20110107.orig/gdb/doc/gdb.texinfo 2011-01-07 09:04:48.000000000 +0100 --- gdb-7.2.50.20110117.orig/gdb/doc/gdb.texinfo 2011-01-17 15:50:41.000000000 +0100
+++ gdb-7.2.50.20110107/gdb/doc/gdb.texinfo 2011-01-07 09:07:01.000000000 +0100 +++ gdb-7.2.50.20110117/gdb/doc/gdb.texinfo 2011-01-17 15:52:06.000000000 +0100
@@ -15277,6 +15277,27 @@ information files. @@ -15220,6 +15220,27 @@ information files.
@end table @end table
@ -122,10 +122,10 @@ Index: gdb-7.2.50.20110107/gdb/doc/gdb.texinfo
@cindex @code{.gnu_debuglink} sections @cindex @code{.gnu_debuglink} sections
@cindex debug link sections @cindex debug link sections
A debug link is a special section of the executable file named A debug link is a special section of the executable file named
Index: gdb-7.2.50.20110107/gdb/solib-svr4.c Index: gdb-7.2.50.20110117/gdb/solib-svr4.c
=================================================================== ===================================================================
--- gdb-7.2.50.20110107.orig/gdb/solib-svr4.c 2011-01-07 09:03:38.000000000 +0100 --- gdb-7.2.50.20110117.orig/gdb/solib-svr4.c 2011-01-17 15:47:37.000000000 +0100
+++ gdb-7.2.50.20110107/gdb/solib-svr4.c 2011-01-07 09:07:01.000000000 +0100 +++ gdb-7.2.50.20110117/gdb/solib-svr4.c 2011-01-17 15:52:06.000000000 +0100
@@ -1179,9 +1179,49 @@ svr4_current_sos (void) @@ -1179,9 +1179,49 @@ svr4_current_sos (void)
safe_strerror (errcode)); safe_strerror (errcode));
else else
@ -179,10 +179,10 @@ Index: gdb-7.2.50.20110107/gdb/solib-svr4.c
} }
xfree (buffer); xfree (buffer);
Index: gdb-7.2.50.20110107/gdb/elfread.c Index: gdb-7.2.50.20110117/gdb/elfread.c
=================================================================== ===================================================================
--- gdb-7.2.50.20110107.orig/gdb/elfread.c 2011-01-07 09:03:38.000000000 +0100 --- gdb-7.2.50.20110117.orig/gdb/elfread.c 2011-01-17 15:47:37.000000000 +0100
+++ gdb-7.2.50.20110107/gdb/elfread.c 2011-01-07 09:07:33.000000000 +0100 +++ gdb-7.2.50.20110117/gdb/elfread.c 2011-01-17 15:52:06.000000000 +0100
@@ -38,6 +38,10 @@ @@ -38,6 +38,10 @@
#include "demangle.h" #include "demangle.h"
#include "psympriv.h" #include "psympriv.h"
@ -911,10 +911,10 @@ Index: gdb-7.2.50.20110107/gdb/elfread.c
+ +
+ observer_attach_executable_changed (debug_print_executable_changed); + observer_attach_executable_changed (debug_print_executable_changed);
} }
Index: gdb-7.2.50.20110107/gdb/symfile.h Index: gdb-7.2.50.20110117/gdb/symfile.h
=================================================================== ===================================================================
--- gdb-7.2.50.20110107.orig/gdb/symfile.h 2011-01-05 23:22:53.000000000 +0100 --- gdb-7.2.50.20110117.orig/gdb/symfile.h 2011-01-11 22:53:24.000000000 +0100
+++ gdb-7.2.50.20110107/gdb/symfile.h 2011-01-07 09:07:01.000000000 +0100 +++ gdb-7.2.50.20110117/gdb/symfile.h 2011-01-17 15:52:06.000000000 +0100
@@ -554,6 +554,13 @@ void free_symfile_segment_data (struct s @@ -554,6 +554,13 @@ void free_symfile_segment_data (struct s
extern struct cleanup *increment_reading_symtab (void); extern struct cleanup *increment_reading_symtab (void);
@ -929,11 +929,11 @@ Index: gdb-7.2.50.20110107/gdb/symfile.h
/* From dwarf2read.c */ /* From dwarf2read.c */
extern int dwarf2_has_info (struct objfile *); extern int dwarf2_has_info (struct objfile *);
Index: gdb-7.2.50.20110107/gdb/testsuite/lib/gdb.exp Index: gdb-7.2.50.20110117/gdb/testsuite/lib/gdb.exp
=================================================================== ===================================================================
--- gdb-7.2.50.20110107.orig/gdb/testsuite/lib/gdb.exp 2011-01-07 09:03:38.000000000 +0100 --- gdb-7.2.50.20110117.orig/gdb/testsuite/lib/gdb.exp 2011-01-17 15:47:37.000000000 +0100
+++ gdb-7.2.50.20110107/gdb/testsuite/lib/gdb.exp 2011-01-07 09:07:01.000000000 +0100 +++ gdb-7.2.50.20110117/gdb/testsuite/lib/gdb.exp 2011-01-17 15:52:06.000000000 +0100
@@ -1391,6 +1391,16 @@ proc default_gdb_start { } { @@ -1395,6 +1395,16 @@ proc default_gdb_start { } {
warning "Couldn't set the width to 0." warning "Couldn't set the width to 0."
} }
} }
@ -950,10 +950,10 @@ Index: gdb-7.2.50.20110107/gdb/testsuite/lib/gdb.exp
return 0; return 0;
} }
Index: gdb-7.2.50.20110107/gdb/testsuite/lib/mi-support.exp Index: gdb-7.2.50.20110117/gdb/testsuite/lib/mi-support.exp
=================================================================== ===================================================================
--- gdb-7.2.50.20110107.orig/gdb/testsuite/lib/mi-support.exp 2011-01-01 16:33:52.000000000 +0100 --- gdb-7.2.50.20110117.orig/gdb/testsuite/lib/mi-support.exp 2011-01-01 16:33:52.000000000 +0100
+++ gdb-7.2.50.20110107/gdb/testsuite/lib/mi-support.exp 2011-01-07 09:07:01.000000000 +0100 +++ gdb-7.2.50.20110117/gdb/testsuite/lib/mi-support.exp 2011-01-17 15:52:06.000000000 +0100
@@ -221,6 +221,16 @@ proc default_mi_gdb_start { args } { @@ -221,6 +221,16 @@ proc default_mi_gdb_start { args } {
} }
} }
@ -971,10 +971,10 @@ Index: gdb-7.2.50.20110107/gdb/testsuite/lib/mi-support.exp
detect_async detect_async
Index: gdb-7.2.50.20110107/gdb/objfiles.h Index: gdb-7.2.50.20110117/gdb/objfiles.h
=================================================================== ===================================================================
--- gdb-7.2.50.20110107.orig/gdb/objfiles.h 2011-01-05 23:22:49.000000000 +0100 --- gdb-7.2.50.20110117.orig/gdb/objfiles.h 2011-01-10 21:38:49.000000000 +0100
+++ gdb-7.2.50.20110107/gdb/objfiles.h 2011-01-07 09:07:01.000000000 +0100 +++ gdb-7.2.50.20110117/gdb/objfiles.h 2011-01-17 15:52:26.000000000 +0100
@@ -434,6 +434,10 @@ struct objfile @@ -434,6 +434,10 @@ struct objfile
#define OBJF_USERLOADED (1 << 3) /* User loaded */ #define OBJF_USERLOADED (1 << 3) /* User loaded */
@ -984,5 +984,5 @@ Index: gdb-7.2.50.20110107/gdb/objfiles.h
+#define OBJF_BUILD_ID_CORE_LOADED (1 << 12) +#define OBJF_BUILD_ID_CORE_LOADED (1 << 12)
+ +
/* The object file that contains the runtime common minimal symbols /* The object file that contains the runtime common minimal symbols
for SunOS4. Note that this objfile has no associated BFD. */ for SunOS4. Note that this objfile has no associated BFD. */

View File

@ -21,10 +21,10 @@
Port to GDB-6.8pre. Port to GDB-6.8pre.
Index: gdb-7.2.50.20101231/gdb/inferior.h Index: gdb-7.2.50.20110117/gdb/inferior.h
=================================================================== ===================================================================
--- gdb-7.2.50.20101231.orig/gdb/inferior.h 2011-01-01 01:25:01.000000000 +0100 --- gdb-7.2.50.20110117.orig/gdb/inferior.h 2011-01-09 04:08:56.000000000 +0100
+++ gdb-7.2.50.20101231/gdb/inferior.h 2011-01-01 01:25:16.000000000 +0100 +++ gdb-7.2.50.20110117/gdb/inferior.h 2011-01-17 15:48:39.000000000 +0100
@@ -186,7 +186,15 @@ extern void reopen_exec_file (void); @@ -186,7 +186,15 @@ extern void reopen_exec_file (void);
/* The `resume' routine should only be called in special circumstances. /* The `resume' routine should only be called in special circumstances.
Normally, use `proceed', which handles a lot of bookkeeping. */ Normally, use `proceed', which handles a lot of bookkeeping. */
@ -42,10 +42,10 @@ Index: gdb-7.2.50.20101231/gdb/inferior.h
/* From misc files */ /* From misc files */
Index: gdb-7.2.50.20101231/gdb/infrun.c Index: gdb-7.2.50.20110117/gdb/infrun.c
=================================================================== ===================================================================
--- gdb-7.2.50.20101231.orig/gdb/infrun.c 2011-01-01 01:25:01.000000000 +0100 --- gdb-7.2.50.20110117.orig/gdb/infrun.c 2011-01-09 04:08:56.000000000 +0100
+++ gdb-7.2.50.20101231/gdb/infrun.c 2011-01-01 01:25:29.000000000 +0100 +++ gdb-7.2.50.20110117/gdb/infrun.c 2011-01-17 15:49:40.000000000 +0100
@@ -76,7 +76,7 @@ static int follow_fork (void); @@ -76,7 +76,7 @@ static int follow_fork (void);
static void set_schedlock_func (char *args, int from_tty, static void set_schedlock_func (char *args, int from_tty,
struct cmd_list_element *c); struct cmd_list_element *c);
@ -55,7 +55,7 @@ Index: gdb-7.2.50.20101231/gdb/infrun.c
static int currently_stepping_or_nexting_callback (struct thread_info *tp, static int currently_stepping_or_nexting_callback (struct thread_info *tp,
void *data); void *data);
@@ -1570,7 +1570,7 @@ maybe_software_singlestep (struct gdbarc @@ -1577,7 +1577,7 @@ maybe_software_singlestep (struct gdbarc
STEP nonzero if we should step (zero to continue instead). STEP nonzero if we should step (zero to continue instead).
SIG is the signal to give the inferior (zero for none). */ SIG is the signal to give the inferior (zero for none). */
void void
@ -64,7 +64,7 @@ Index: gdb-7.2.50.20101231/gdb/infrun.c
{ {
int should_resume = 1; int should_resume = 1;
struct cleanup *old_cleanups = make_cleanup (resume_cleanups, 0); struct cleanup *old_cleanups = make_cleanup (resume_cleanups, 0);
@@ -1602,10 +1602,12 @@ resume (int step, enum target_signal sig @@ -1609,10 +1609,12 @@ resume (int step, enum target_signal sig
} }
if (debug_infrun) if (debug_infrun)
@ -81,7 +81,7 @@ Index: gdb-7.2.50.20101231/gdb/infrun.c
/* Normally, by the time we reach `resume', the breakpoints are either /* Normally, by the time we reach `resume', the breakpoints are either
removed or inserted, as appropriate. The exception is if we're sitting removed or inserted, as appropriate. The exception is if we're sitting
@@ -1723,9 +1725,10 @@ a command like `return' or `jump' to con @@ -1730,9 +1732,10 @@ a command like `return' or `jump' to con
individually. */ individually. */
resume_ptid = inferior_ptid; resume_ptid = inferior_ptid;
} }
@ -92,9 +92,9 @@ Index: gdb-7.2.50.20101231/gdb/infrun.c
+ && (step == RESUME_STEP_USER + && (step == RESUME_STEP_USER
+ || singlestep_breakpoints_inserted_p))) + || singlestep_breakpoints_inserted_p)))
{ {
/* User-settable 'scheduler' mode requires solo thread resume. */ /* User-settable 'scheduler' mode requires solo thread resume. */
resume_ptid = inferior_ptid; resume_ptid = inferior_ptid;
@@ -1934,7 +1937,7 @@ proceed (CORE_ADDR addr, enum target_sig @@ -1941,7 +1944,7 @@ proceed (CORE_ADDR addr, enum target_sig
struct thread_info *tp; struct thread_info *tp;
CORE_ADDR pc; CORE_ADDR pc;
struct address_space *aspace; struct address_space *aspace;
@ -103,7 +103,7 @@ Index: gdb-7.2.50.20101231/gdb/infrun.c
/* If we're stopped at a fork/vfork, follow the branch set by the /* If we're stopped at a fork/vfork, follow the branch set by the
"set follow-fork-mode" command; otherwise, we'll just proceed "set follow-fork-mode" command; otherwise, we'll just proceed
@@ -1969,13 +1972,13 @@ proceed (CORE_ADDR addr, enum target_sig @@ -1976,13 +1979,13 @@ proceed (CORE_ADDR addr, enum target_sig
actually be executing the breakpoint insn anyway. actually be executing the breakpoint insn anyway.
We'll be (un-)executing the previous instruction. */ We'll be (un-)executing the previous instruction. */
@ -119,9 +119,9 @@ Index: gdb-7.2.50.20101231/gdb/infrun.c
} }
else else
{ {
@@ -2016,13 +2019,13 @@ proceed (CORE_ADDR addr, enum target_sig @@ -2023,13 +2026,13 @@ proceed (CORE_ADDR addr, enum target_sig
is required it returns TRUE and sets the current thread to is required it returns TRUE and sets the current thread to
the old thread. */ the old thread. */
if (prepare_to_proceed (step)) if (prepare_to_proceed (step))
- oneproc = 1; - oneproc = 1;
+ resume_step = RESUME_STEP_USER; + resume_step = RESUME_STEP_USER;
@ -135,7 +135,7 @@ Index: gdb-7.2.50.20101231/gdb/infrun.c
{ {
tp->control.trap_expected = 1; tp->control.trap_expected = 1;
/* If displaced stepping is enabled, we can step over the /* If displaced stepping is enabled, we can step over the
@@ -2109,8 +2112,13 @@ proceed (CORE_ADDR addr, enum target_sig @@ -2116,8 +2119,13 @@ proceed (CORE_ADDR addr, enum target_sig
/* Reset to normal state. */ /* Reset to normal state. */
init_infwait_state (); init_infwait_state ();
@ -150,7 +150,7 @@ Index: gdb-7.2.50.20101231/gdb/infrun.c
/* Wait for it to stop (if not standalone) /* Wait for it to stop (if not standalone)
and in any case decode why it stopped, and act accordingly. */ and in any case decode why it stopped, and act accordingly. */
@@ -4933,14 +4941,19 @@ infrun: not switching back to stepped th @@ -4957,14 +4965,19 @@ process_event_stop_test:
/* Is thread TP in the middle of single-stepping? */ /* Is thread TP in the middle of single-stepping? */
@ -176,11 +176,11 @@ Index: gdb-7.2.50.20101231/gdb/infrun.c
} }
/* Returns true if any thread *but* the one passed in "data" is in the /* Returns true if any thread *but* the one passed in "data" is in the
Index: gdb-7.2.50.20101231/gdb/linux-nat.c Index: gdb-7.2.50.20110117/gdb/linux-nat.c
=================================================================== ===================================================================
--- gdb-7.2.50.20101231.orig/gdb/linux-nat.c 2011-01-01 01:25:16.000000000 +0100 --- gdb-7.2.50.20110117.orig/gdb/linux-nat.c 2011-01-17 15:47:37.000000000 +0100
+++ gdb-7.2.50.20101231/gdb/linux-nat.c 2011-01-01 01:25:16.000000000 +0100 +++ gdb-7.2.50.20110117/gdb/linux-nat.c 2011-01-17 15:48:39.000000000 +0100
@@ -2908,7 +2908,10 @@ count_events_callback (struct lwp_info * @@ -2928,7 +2928,10 @@ count_events_callback (struct lwp_info *
static int static int
select_singlestep_lwp_callback (struct lwp_info *lp, void *data) select_singlestep_lwp_callback (struct lwp_info *lp, void *data)
{ {
@ -192,10 +192,10 @@ Index: gdb-7.2.50.20101231/gdb/linux-nat.c
return 1; return 1;
else else
return 0; return 0;
Index: gdb-7.2.50.20101231/gdb/linux-nat.h Index: gdb-7.2.50.20110117/gdb/linux-nat.h
=================================================================== ===================================================================
--- gdb-7.2.50.20101231.orig/gdb/linux-nat.h 2011-01-01 01:25:16.000000000 +0100 --- gdb-7.2.50.20110117.orig/gdb/linux-nat.h 2011-01-17 15:47:37.000000000 +0100
+++ gdb-7.2.50.20101231/gdb/linux-nat.h 2011-01-01 01:25:16.000000000 +0100 +++ gdb-7.2.50.20110117/gdb/linux-nat.h 2011-01-17 15:48:39.000000000 +0100
@@ -55,8 +55,8 @@ struct lwp_info @@ -55,8 +55,8 @@ struct lwp_info
/* If non-zero, a pending wait status. */ /* If non-zero, a pending wait status. */
int status; int status;

View File

@ -5,10 +5,10 @@ Some of the threads may not be properly PTRACE_DETACHed which hurts if they
should have been detached with SIGSTOP (as they are accidentally left running should have been detached with SIGSTOP (as they are accidentally left running
on the debugger termination). on the debugger termination).
Index: gdb-7.2.50.20101231/gdb/defs.h Index: gdb-7.2.50.20110117/gdb/defs.h
=================================================================== ===================================================================
--- gdb-7.2.50.20101231.orig/gdb/defs.h 2011-01-01 01:00:29.000000000 +0100 --- gdb-7.2.50.20110117.orig/gdb/defs.h 2011-01-17 15:47:37.000000000 +0100
+++ gdb-7.2.50.20101231/gdb/defs.h 2011-01-01 01:09:17.000000000 +0100 +++ gdb-7.2.50.20110117/gdb/defs.h 2011-01-17 15:53:05.000000000 +0100
@@ -165,6 +165,7 @@ extern char *python_libdir; @@ -165,6 +165,7 @@ extern char *python_libdir;
extern char *debug_file_directory; extern char *debug_file_directory;
@ -18,7 +18,7 @@ Index: gdb-7.2.50.20101231/gdb/defs.h
extern int sevenbit_strings; extern int sevenbit_strings;
@@ -178,7 +179,7 @@ extern void quit (void); @@ -178,7 +179,7 @@ extern void quit (void);
needed. */ needed. */
#define QUIT { \ #define QUIT { \
- if (quit_flag) quit (); \ - if (quit_flag) quit (); \
@ -26,10 +26,10 @@ Index: gdb-7.2.50.20101231/gdb/defs.h
if (deprecated_interactive_hook) deprecated_interactive_hook (); \ if (deprecated_interactive_hook) deprecated_interactive_hook (); \
} }
Index: gdb-7.2.50.20101231/gdb/event-top.c Index: gdb-7.2.50.20110117/gdb/event-top.c
=================================================================== ===================================================================
--- gdb-7.2.50.20101231.orig/gdb/event-top.c 2011-01-01 01:07:37.000000000 +0100 --- gdb-7.2.50.20110117.orig/gdb/event-top.c 2011-01-17 15:52:39.000000000 +0100
+++ gdb-7.2.50.20101231/gdb/event-top.c 2011-01-01 01:09:39.000000000 +0100 +++ gdb-7.2.50.20110117/gdb/event-top.c 2011-01-17 15:52:49.000000000 +0100
@@ -904,7 +904,7 @@ async_request_quit (gdb_client_data arg) @@ -904,7 +904,7 @@ async_request_quit (gdb_client_data arg)
is no reason to call quit again here, unless immediate_quit is is no reason to call quit again here, unless immediate_quit is
set. */ set. */
@ -39,11 +39,11 @@ Index: gdb-7.2.50.20101231/gdb/event-top.c
quit (); quit ();
} }
Index: gdb-7.2.50.20101231/gdb/top.c Index: gdb-7.2.50.20110117/gdb/top.c
=================================================================== ===================================================================
--- gdb-7.2.50.20101231.orig/gdb/top.c 2011-01-01 01:00:29.000000000 +0100 --- gdb-7.2.50.20110117.orig/gdb/top.c 2011-01-17 15:47:37.000000000 +0100
+++ gdb-7.2.50.20101231/gdb/top.c 2011-01-01 01:09:17.000000000 +0100 +++ gdb-7.2.50.20110117/gdb/top.c 2011-01-17 15:52:49.000000000 +0100
@@ -1254,7 +1254,9 @@ quit_force (char *args, int from_tty) @@ -1257,7 +1257,9 @@ quit_force (char *args, int from_tty)
qt.args = args; qt.args = args;
qt.from_tty = from_tty; qt.from_tty = from_tty;
@ -54,10 +54,10 @@ Index: gdb-7.2.50.20101231/gdb/top.c
catch_errors (quit_target, &qt, catch_errors (quit_target, &qt,
"Quitting: ", RETURN_MASK_ALL); "Quitting: ", RETURN_MASK_ALL);
Index: gdb-7.2.50.20101231/gdb/utils.c Index: gdb-7.2.50.20110117/gdb/utils.c
=================================================================== ===================================================================
--- gdb-7.2.50.20101231.orig/gdb/utils.c 2011-01-01 01:00:29.000000000 +0100 --- gdb-7.2.50.20110117.orig/gdb/utils.c 2011-01-17 15:47:37.000000000 +0100
+++ gdb-7.2.50.20101231/gdb/utils.c 2011-01-01 01:09:17.000000000 +0100 +++ gdb-7.2.50.20110117/gdb/utils.c 2011-01-17 15:52:49.000000000 +0100
@@ -121,6 +121,11 @@ int job_control; @@ -121,6 +121,11 @@ int job_control;
int quit_flag; int quit_flag;

View File

@ -1,8 +1,8 @@
Index: gdb-7.2.50.20101116/gdb/dwarf2read.c Index: gdb-7.2.50.20110117/gdb/dwarf2read.c
=================================================================== ===================================================================
--- gdb-7.2.50.20101116.orig/gdb/dwarf2read.c 2010-11-16 08:25:21.000000000 +0100 --- gdb-7.2.50.20110117.orig/gdb/dwarf2read.c 2011-01-17 15:56:23.000000000 +0100
+++ gdb-7.2.50.20101116/gdb/dwarf2read.c 2010-11-16 08:26:35.000000000 +0100 +++ gdb-7.2.50.20110117/gdb/dwarf2read.c 2011-01-17 16:00:14.000000000 +0100
@@ -7325,7 +7325,12 @@ read_common_block (struct die_info *die, @@ -7475,7 +7475,12 @@ read_common_block (struct die_info *die,
{ {
struct attribute *attr; struct attribute *attr;
struct symbol *sym; struct symbol *sym;
@ -16,7 +16,7 @@ Index: gdb-7.2.50.20101116/gdb/dwarf2read.c
attr = dwarf2_attr (die, DW_AT_location, cu); attr = dwarf2_attr (die, DW_AT_location, cu);
if (attr) if (attr)
@@ -7334,6 +7339,7 @@ read_common_block (struct die_info *die, @@ -7484,6 +7489,7 @@ read_common_block (struct die_info *die,
if (attr_form_is_block (attr)) if (attr_form_is_block (attr))
{ {
base = decode_locdesc (DW_BLOCK (attr), cu); base = decode_locdesc (DW_BLOCK (attr), cu);
@ -24,7 +24,7 @@ Index: gdb-7.2.50.20101116/gdb/dwarf2read.c
} }
else if (attr_form_is_section_offset (attr)) else if (attr_form_is_section_offset (attr))
{ {
@@ -7395,12 +7401,15 @@ read_common_block (struct die_info *die, @@ -7545,12 +7551,15 @@ read_common_block (struct die_info *die,
else else
dwarf2_complex_location_expr_complaint (); dwarf2_complex_location_expr_complaint ();
@ -42,7 +42,7 @@ Index: gdb-7.2.50.20101116/gdb/dwarf2read.c
else else
SET_FIELD_PHYSNAME (*field, SYMBOL_LINKAGE_NAME (sym)); SET_FIELD_PHYSNAME (*field, SYMBOL_LINKAGE_NAME (sym));
FIELD_TYPE (*field) = SYMBOL_TYPE (sym); FIELD_TYPE (*field) = SYMBOL_TYPE (sym);
@@ -7414,7 +7423,7 @@ read_common_block (struct die_info *die, @@ -7564,7 +7573,7 @@ read_common_block (struct die_info *die,
sym = new_symbol (die, type, cu); sym = new_symbol (die, type, cu);
/* SYMBOL_VALUE_ADDRESS never gets used as all its fields are static. */ /* SYMBOL_VALUE_ADDRESS never gets used as all its fields are static. */
@ -51,11 +51,11 @@ Index: gdb-7.2.50.20101116/gdb/dwarf2read.c
set_die_type (die, type, cu); set_die_type (die, type, cu);
} }
Index: gdb-7.2.50.20101116/gdb/gdbtypes.h Index: gdb-7.2.50.20110117/gdb/gdbtypes.h
=================================================================== ===================================================================
--- gdb-7.2.50.20101116.orig/gdb/gdbtypes.h 2010-11-16 08:01:33.000000000 +0100 --- gdb-7.2.50.20110117.orig/gdb/gdbtypes.h 2011-01-17 15:51:03.000000000 +0100
+++ gdb-7.2.50.20101116/gdb/gdbtypes.h 2010-11-16 08:26:35.000000000 +0100 +++ gdb-7.2.50.20110117/gdb/gdbtypes.h 2011-01-17 16:00:32.000000000 +0100
@@ -395,6 +395,7 @@ enum type_instance_flag_value @@ -394,6 +394,7 @@ enum type_instance_flag_value
enum field_loc_kind enum field_loc_kind
{ {
FIELD_LOC_KIND_BITPOS, /* bitpos */ FIELD_LOC_KIND_BITPOS, /* bitpos */
@ -65,13 +65,13 @@ Index: gdb-7.2.50.20101116/gdb/gdbtypes.h
}; };
@@ -576,6 +577,7 @@ struct main_type @@ -576,6 +577,7 @@ struct main_type
is the location (in the target) of the static field. is the location (in the target) of the static field.
Otherwise, physname is the mangled label of the static field. */ Otherwise, physname is the mangled label of the static field. */
+ /* This address is unrelocated by the objfile's ANOFFSET. */ + /* This address is unrelocated by the objfile's ANOFFSET. */
CORE_ADDR physaddr; CORE_ADDR physaddr;
char *physname; char *physname;
} }
@@ -1101,6 +1103,7 @@ extern void allocate_gnat_aux_type (stru @@ -1102,6 +1104,7 @@ extern void allocate_gnat_aux_type (stru
#define FIELD_LOC_KIND(thisfld) ((thisfld).loc_kind) #define FIELD_LOC_KIND(thisfld) ((thisfld).loc_kind)
#define FIELD_BITPOS(thisfld) ((thisfld).loc.bitpos) #define FIELD_BITPOS(thisfld) ((thisfld).loc.bitpos)
#define FIELD_STATIC_PHYSNAME(thisfld) ((thisfld).loc.physname) #define FIELD_STATIC_PHYSNAME(thisfld) ((thisfld).loc.physname)
@ -79,7 +79,7 @@ Index: gdb-7.2.50.20101116/gdb/gdbtypes.h
#define FIELD_STATIC_PHYSADDR(thisfld) ((thisfld).loc.physaddr) #define FIELD_STATIC_PHYSADDR(thisfld) ((thisfld).loc.physaddr)
#define SET_FIELD_BITPOS(thisfld, bitpos) \ #define SET_FIELD_BITPOS(thisfld, bitpos) \
(FIELD_LOC_KIND (thisfld) = FIELD_LOC_KIND_BITPOS, \ (FIELD_LOC_KIND (thisfld) = FIELD_LOC_KIND_BITPOS, \
@@ -1108,6 +1111,7 @@ extern void allocate_gnat_aux_type (stru @@ -1109,6 +1112,7 @@ extern void allocate_gnat_aux_type (stru
#define SET_FIELD_PHYSNAME(thisfld, name) \ #define SET_FIELD_PHYSNAME(thisfld, name) \
(FIELD_LOC_KIND (thisfld) = FIELD_LOC_KIND_PHYSNAME, \ (FIELD_LOC_KIND (thisfld) = FIELD_LOC_KIND_PHYSNAME, \
FIELD_STATIC_PHYSNAME (thisfld) = (name)) FIELD_STATIC_PHYSNAME (thisfld) = (name))
@ -87,7 +87,7 @@ Index: gdb-7.2.50.20101116/gdb/gdbtypes.h
#define SET_FIELD_PHYSADDR(thisfld, addr) \ #define SET_FIELD_PHYSADDR(thisfld, addr) \
(FIELD_LOC_KIND (thisfld) = FIELD_LOC_KIND_PHYSADDR, \ (FIELD_LOC_KIND (thisfld) = FIELD_LOC_KIND_PHYSADDR, \
FIELD_STATIC_PHYSADDR (thisfld) = (addr)) FIELD_STATIC_PHYSADDR (thisfld) = (addr))
@@ -1120,6 +1124,7 @@ extern void allocate_gnat_aux_type (stru @@ -1121,6 +1125,7 @@ extern void allocate_gnat_aux_type (stru
#define TYPE_FIELD_LOC_KIND(thistype, n) FIELD_LOC_KIND (TYPE_FIELD (thistype, n)) #define TYPE_FIELD_LOC_KIND(thistype, n) FIELD_LOC_KIND (TYPE_FIELD (thistype, n))
#define TYPE_FIELD_BITPOS(thistype, n) FIELD_BITPOS (TYPE_FIELD (thistype, n)) #define TYPE_FIELD_BITPOS(thistype, n) FIELD_BITPOS (TYPE_FIELD (thistype, n))
#define TYPE_FIELD_STATIC_PHYSNAME(thistype, n) FIELD_STATIC_PHYSNAME (TYPE_FIELD (thistype, n)) #define TYPE_FIELD_STATIC_PHYSNAME(thistype, n) FIELD_STATIC_PHYSNAME (TYPE_FIELD (thistype, n))
@ -95,21 +95,21 @@ Index: gdb-7.2.50.20101116/gdb/gdbtypes.h
#define TYPE_FIELD_STATIC_PHYSADDR(thistype, n) FIELD_STATIC_PHYSADDR (TYPE_FIELD (thistype, n)) #define TYPE_FIELD_STATIC_PHYSADDR(thistype, n) FIELD_STATIC_PHYSADDR (TYPE_FIELD (thistype, n))
#define TYPE_FIELD_ARTIFICIAL(thistype, n) FIELD_ARTIFICIAL(TYPE_FIELD(thistype,n)) #define TYPE_FIELD_ARTIFICIAL(thistype, n) FIELD_ARTIFICIAL(TYPE_FIELD(thistype,n))
#define TYPE_FIELD_BITSIZE(thistype, n) FIELD_BITSIZE(TYPE_FIELD(thistype,n)) #define TYPE_FIELD_BITSIZE(thistype, n) FIELD_BITSIZE(TYPE_FIELD(thistype,n))
Index: gdb-7.2.50.20101116/gdb/jv-lang.c Index: gdb-7.2.50.20110117/gdb/jv-lang.c
=================================================================== ===================================================================
--- gdb-7.2.50.20101116.orig/gdb/jv-lang.c 2010-08-09 21:42:47.000000000 +0200 --- gdb-7.2.50.20110117.orig/gdb/jv-lang.c 2011-01-09 04:08:57.000000000 +0100
+++ gdb-7.2.50.20101116/gdb/jv-lang.c 2010-11-16 08:26:35.000000000 +0100 +++ gdb-7.2.50.20110117/gdb/jv-lang.c 2011-01-17 16:00:59.000000000 +0100
@@ -409,7 +409,8 @@ java_link_class_type (struct gdbarch *gd @@ -414,7 +414,8 @@ java_link_class_type (struct gdbarch *gd
fields = NULL; fields = NULL;
nfields--; /* First set up dummy "class" field. */ nfields--; /* First set up dummy "class" field. */
- SET_FIELD_PHYSADDR (TYPE_FIELD (type, nfields), value_address (clas)); - SET_FIELD_PHYSADDR (TYPE_FIELD (type, nfields), value_address (clas));
+ SET_FIELD_PHYSADDR (TYPE_FIELD (type, nfields), value_address (clas) + SET_FIELD_PHYSADDR (TYPE_FIELD (type, nfields), value_address (clas)
+ - (TYPE_OBJFILE (type) == NULL ? 0 : ANOFFSET (TYPE_OBJFILE (type)->section_offsets, SECT_OFF_TEXT (TYPE_OBJFILE (type))))); + - (TYPE_OBJFILE (type) == NULL ? 0 : ANOFFSET (TYPE_OBJFILE (type)->section_offsets, SECT_OFF_TEXT (TYPE_OBJFILE (type)))));
TYPE_FIELD_NAME (type, nfields) = "class"; TYPE_FIELD_NAME (type, nfields) = "class";
TYPE_FIELD_TYPE (type, nfields) = value_type (clas); TYPE_FIELD_TYPE (type, nfields) = value_type (clas);
SET_TYPE_FIELD_PRIVATE (type, nfields); SET_TYPE_FIELD_PRIVATE (type, nfields);
@@ -457,7 +458,8 @@ java_link_class_type (struct gdbarch *gd @@ -462,7 +463,8 @@ java_link_class_type (struct gdbarch *gd
SET_TYPE_FIELD_PROTECTED (type, i); SET_TYPE_FIELD_PROTECTED (type, i);
} }
if (accflags & 0x0008) /* ACC_STATIC */ if (accflags & 0x0008) /* ACC_STATIC */
@ -119,11 +119,11 @@ Index: gdb-7.2.50.20101116/gdb/jv-lang.c
else else
TYPE_FIELD_BITPOS (type, i) = 8 * boffset; TYPE_FIELD_BITPOS (type, i) = 8 * boffset;
if (accflags & 0x8000) /* FIELD_UNRESOLVED_FLAG */ if (accflags & 0x8000) /* FIELD_UNRESOLVED_FLAG */
Index: gdb-7.2.50.20101116/gdb/value.c Index: gdb-7.2.50.20110117/gdb/value.c
=================================================================== ===================================================================
--- gdb-7.2.50.20101116.orig/gdb/value.c 2010-11-16 07:54:00.000000000 +0100 --- gdb-7.2.50.20110117.orig/gdb/value.c 2011-01-17 15:47:37.000000000 +0100
+++ gdb-7.2.50.20101116/gdb/value.c 2010-11-16 08:26:35.000000000 +0100 +++ gdb-7.2.50.20110117/gdb/value.c 2011-01-17 16:00:14.000000000 +0100
@@ -1965,7 +1965,8 @@ value_static_field (struct type *type, i @@ -1997,7 +1997,8 @@ value_static_field (struct type *type, i
{ {
case FIELD_LOC_KIND_PHYSADDR: case FIELD_LOC_KIND_PHYSADDR:
retval = value_at_lazy (TYPE_FIELD_TYPE (type, fieldno), retval = value_at_lazy (TYPE_FIELD_TYPE (type, fieldno),

File diff suppressed because it is too large Load Diff

View File

@ -1,7 +1,7 @@
Index: gdb-7.1.90.20100711/gdb/config/i386/linux64.mh Index: gdb-7.2.50.20110117/gdb/config/i386/linux64.mh
=================================================================== ===================================================================
--- gdb-7.1.90.20100711.orig/gdb/config/i386/linux64.mh 2010-05-28 20:50:31.000000000 +0200 --- gdb-7.2.50.20110117.orig/gdb/config/i386/linux64.mh 2010-05-28 20:50:31.000000000 +0200
+++ gdb-7.1.90.20100711/gdb/config/i386/linux64.mh 2010-07-13 19:02:54.000000000 +0200 +++ gdb-7.2.50.20110117/gdb/config/i386/linux64.mh 2011-01-17 16:01:48.000000000 +0100
@@ -2,7 +2,7 @@ @@ -2,7 +2,7 @@
NATDEPFILES= inf-ptrace.o fork-child.o \ NATDEPFILES= inf-ptrace.o fork-child.o \
i386-nat.o amd64-nat.o amd64-linux-nat.o linux-nat.o \ i386-nat.o amd64-nat.o amd64-linux-nat.o linux-nat.o \
@ -11,10 +11,10 @@ Index: gdb-7.1.90.20100711/gdb/config/i386/linux64.mh
NAT_CDEPS = $(srcdir)/proc-service.list NAT_CDEPS = $(srcdir)/proc-service.list
# The dynamically loaded libthread_db needs access to symbols in the # The dynamically loaded libthread_db needs access to symbols in the
Index: gdb-7.1.90.20100711/gdb/config/i386/nm-linux64.h Index: gdb-7.2.50.20110117/gdb/config/i386/nm-linux64.h
=================================================================== ===================================================================
--- /dev/null 1970-01-01 00:00:00.000000000 +0000 --- /dev/null 1970-01-01 00:00:00.000000000 +0000
+++ gdb-7.1.90.20100711/gdb/config/i386/nm-linux64.h 2010-07-13 19:02:28.000000000 +0200 +++ gdb-7.2.50.20110117/gdb/config/i386/nm-linux64.h 2011-01-17 16:01:48.000000000 +0100
@@ -0,0 +1,28 @@ @@ -0,0 +1,28 @@
+/* Native support for GNU/Linux amd64. +/* Native support for GNU/Linux amd64.
+ +
@ -44,11 +44,11 @@ Index: gdb-7.1.90.20100711/gdb/config/i386/nm-linux64.h
+#define target_can_use_hardware_watchpoint(type, cnt, ot) 1 +#define target_can_use_hardware_watchpoint(type, cnt, ot) 1
+ +
+#endif /* NM_LINUX64_H */ +#endif /* NM_LINUX64_H */
Index: gdb-7.1.90.20100711/gdb/target.h Index: gdb-7.2.50.20110117/gdb/target.h
=================================================================== ===================================================================
--- gdb-7.1.90.20100711.orig/gdb/target.h 2010-07-12 23:07:34.000000000 +0200 --- gdb-7.2.50.20110117.orig/gdb/target.h 2011-01-14 14:47:15.000000000 +0100
+++ gdb-7.1.90.20100711/gdb/target.h 2010-07-13 19:02:28.000000000 +0200 +++ gdb-7.2.50.20110117/gdb/target.h 2011-01-17 16:02:08.000000000 +0100
@@ -1298,8 +1298,10 @@ extern char *normal_pid_to_str (ptid_t p @@ -1318,8 +1318,10 @@ extern char *normal_pid_to_str (ptid_t p
bp_hardware_breakpoint. CNT is the number of such watchpoints used so far bp_hardware_breakpoint. CNT is the number of such watchpoints used so far
(including this one?). OTHERTYPE is who knows what... */ (including this one?). OTHERTYPE is who knows what... */
@ -57,12 +57,12 @@ Index: gdb-7.1.90.20100711/gdb/target.h
(*current_target.to_can_use_hw_breakpoint) (TYPE, CNT, OTHERTYPE); (*current_target.to_can_use_hw_breakpoint) (TYPE, CNT, OTHERTYPE);
+#endif +#endif
#define target_region_ok_for_hw_watchpoint(addr, len) \ /* Returns the number of debug registers needed to watch the given
(*current_target.to_region_ok_for_hw_watchpoint) (addr, len) memory region, or zero if not supported. */
Index: gdb-7.1.90.20100711/gdb/testsuite/gdb.base/watchpoint-hw-before-run.exp Index: gdb-7.2.50.20110117/gdb/testsuite/gdb.base/watchpoint-hw-before-run.exp
=================================================================== ===================================================================
--- /dev/null 1970-01-01 00:00:00.000000000 +0000 --- /dev/null 1970-01-01 00:00:00.000000000 +0000
+++ gdb-7.1.90.20100711/gdb/testsuite/gdb.base/watchpoint-hw-before-run.exp 2010-07-13 19:02:28.000000000 +0200 +++ gdb-7.2.50.20110117/gdb/testsuite/gdb.base/watchpoint-hw-before-run.exp 2011-01-17 16:01:48.000000000 +0100
@@ -0,0 +1,40 @@ @@ -0,0 +1,40 @@
+# Copyright 2009, 2010 Free Software Foundation, Inc. +# Copyright 2009, 2010 Free Software Foundation, Inc.
+ +

View File

@ -78,11 +78,11 @@ gdb/testsuite/
* gdb.threads/sigstep-threads.exp: New file. * gdb.threads/sigstep-threads.exp: New file.
* gdb.threads/sigstep-threads.c: New file. * gdb.threads/sigstep-threads.c: New file.
Index: gdb-7.2.50.20101116/gdb/linux-nat.c Index: gdb-7.2.50.20110117/gdb/linux-nat.c
=================================================================== ===================================================================
--- gdb-7.2.50.20101116.orig/gdb/linux-nat.c 2010-11-16 08:21:46.000000000 +0100 --- gdb-7.2.50.20110117.orig/gdb/linux-nat.c 2011-01-17 15:53:14.000000000 +0100
+++ gdb-7.2.50.20101116/gdb/linux-nat.c 2010-11-16 09:12:26.000000000 +0100 +++ gdb-7.2.50.20110117/gdb/linux-nat.c 2011-01-17 16:05:57.000000000 +0100
@@ -2759,6 +2759,8 @@ stop_wait_callback (struct lwp_info *lp, @@ -2803,6 +2803,8 @@ stop_wait_callback (struct lwp_info *lp,
{ {
int status; int status;
@ -91,7 +91,7 @@ Index: gdb-7.2.50.20101116/gdb/linux-nat.c
status = wait_lwp (lp); status = wait_lwp (lp);
if (status == 0) if (status == 0)
return 0; return 0;
@@ -2783,110 +2785,61 @@ stop_wait_callback (struct lwp_info *lp, @@ -2828,110 +2830,61 @@ stop_wait_callback (struct lwp_info *lp,
if (WSTOPSIG (status) != SIGSTOP) if (WSTOPSIG (status) != SIGSTOP)
{ {
@ -115,7 +115,7 @@ Index: gdb-7.2.50.20101116/gdb/linux-nat.c
- -
- save_sigtrap (lp); - save_sigtrap (lp);
- -
- /* Now resume this LWP and get the SIGSTOP event. */ - /* Now resume this LWP and get the SIGSTOP event. */
- errno = 0; - errno = 0;
- ptrace (PTRACE_CONT, GET_LWP (lp->ptid), 0, 0); - ptrace (PTRACE_CONT, GET_LWP (lp->ptid), 0, 0);
- if (debug_linux_nat) - if (debug_linux_nat)
@ -130,13 +130,13 @@ Index: gdb-7.2.50.20101116/gdb/linux-nat.c
- target_pid_to_str (lp->ptid)); - target_pid_to_str (lp->ptid));
- } - }
- /* Hold this event/waitstatus while we check to see if - /* Hold this event/waitstatus while we check to see if
- there are any more (we still want to get that SIGSTOP). */ - there are any more (we still want to get that SIGSTOP). */
- stop_wait_callback (lp, NULL); - stop_wait_callback (lp, NULL);
+ /* The thread was stopped with a signal other than SIGSTOP. */ + /* The thread was stopped with a signal other than SIGSTOP. */
- /* Hold the SIGTRAP for handling by linux_nat_wait. If - /* Hold the SIGTRAP for handling by linux_nat_wait. If
- there's another event, throw it back into the - there's another event, throw it back into the
- queue. */ - queue. */
- if (lp->status) - if (lp->status)
- { - {
- if (debug_linux_nat) - if (debug_linux_nat)
@ -149,14 +149,14 @@ Index: gdb-7.2.50.20101116/gdb/linux-nat.c
+ /* Save the trap's siginfo in case we need it later. */ + /* Save the trap's siginfo in case we need it later. */
+ save_siginfo (lp); + save_siginfo (lp);
- /* Save the sigtrap event. */ - /* Save the sigtrap event. */
- lp->status = status; - lp->status = status;
- return 0; - return 0;
- } - }
- else - else
- { - {
- /* The thread was stopped with a signal other than - /* The thread was stopped with a signal other than
- SIGSTOP, and didn't accidentally trip a breakpoint. */ - SIGSTOP, and didn't accidentally trip a breakpoint. */
+ save_sigtrap (lp); + save_sigtrap (lp);
- if (debug_linux_nat) - if (debug_linux_nat)
@ -166,7 +166,7 @@ Index: gdb-7.2.50.20101116/gdb/linux-nat.c
- status_to_str ((int) status), - status_to_str ((int) status),
- target_pid_to_str (lp->ptid)); - target_pid_to_str (lp->ptid));
- } - }
- /* Now resume this LWP and get the SIGSTOP event. */ - /* Now resume this LWP and get the SIGSTOP event. */
- errno = 0; - errno = 0;
- ptrace (PTRACE_CONT, GET_LWP (lp->ptid), 0, 0); - ptrace (PTRACE_CONT, GET_LWP (lp->ptid), 0, 0);
- if (debug_linux_nat) - if (debug_linux_nat)
@ -176,7 +176,7 @@ Index: gdb-7.2.50.20101116/gdb/linux-nat.c
- errno ? safe_strerror (errno) : "OK"); - errno ? safe_strerror (errno) : "OK");
- -
- /* Hold this event/waitstatus while we check to see if - /* Hold this event/waitstatus while we check to see if
- there are any more (we still want to get that SIGSTOP). */ - there are any more (we still want to get that SIGSTOP). */
- stop_wait_callback (lp, NULL); - stop_wait_callback (lp, NULL);
+ if (debug_linux_nat) + if (debug_linux_nat)
+ fprintf_unfiltered (gdb_stdlog, + fprintf_unfiltered (gdb_stdlog,
@ -202,7 +202,7 @@ Index: gdb-7.2.50.20101116/gdb/linux-nat.c
- lp->status = status; - lp->status = status;
- return 0; - return 0;
- } - }
+ /* Save the sigtrap event. */ + /* Save the sigtrap event. */
+ lp->status = status; + lp->status = status;
+ gdb_assert (! lp->stopped); + gdb_assert (! lp->stopped);
+ gdb_assert (lp->signalled); + gdb_assert (lp->signalled);
@ -248,7 +248,7 @@ Index: gdb-7.2.50.20101116/gdb/linux-nat.c
lp->signalled = 0; lp->signalled = 0;
} }
} }
@@ -3469,52 +3422,6 @@ retry: @@ -3514,52 +3467,6 @@ retry:
lp = NULL; lp = NULL;
} }
@ -301,10 +301,10 @@ Index: gdb-7.2.50.20101116/gdb/linux-nat.c
if (!target_can_async_p ()) if (!target_can_async_p ())
{ {
/* Causes SIGINT to be passed on to the attached process. */ /* Causes SIGINT to be passed on to the attached process. */
Index: gdb-7.2.50.20101116/gdb/testsuite/gdb.threads/siginfo-threads.c Index: gdb-7.2.50.20110117/gdb/testsuite/gdb.threads/siginfo-threads.c
=================================================================== ===================================================================
--- /dev/null 1970-01-01 00:00:00.000000000 +0000 --- /dev/null 1970-01-01 00:00:00.000000000 +0000
+++ gdb-7.2.50.20101116/gdb/testsuite/gdb.threads/siginfo-threads.c 2010-11-16 09:08:44.000000000 +0100 +++ gdb-7.2.50.20110117/gdb/testsuite/gdb.threads/siginfo-threads.c 2011-01-17 16:02:40.000000000 +0100
@@ -0,0 +1,447 @@ @@ -0,0 +1,447 @@
+/* This testcase is part of GDB, the GNU debugger. +/* This testcase is part of GDB, the GNU debugger.
+ +
@ -753,10 +753,10 @@ Index: gdb-7.2.50.20101116/gdb/testsuite/gdb.threads/siginfo-threads.c
+ +
+ return EXIT_SUCCESS; + return EXIT_SUCCESS;
+} +}
Index: gdb-7.2.50.20101116/gdb/testsuite/gdb.threads/siginfo-threads.exp Index: gdb-7.2.50.20110117/gdb/testsuite/gdb.threads/siginfo-threads.exp
=================================================================== ===================================================================
--- /dev/null 1970-01-01 00:00:00.000000000 +0000 --- /dev/null 1970-01-01 00:00:00.000000000 +0000
+++ gdb-7.2.50.20101116/gdb/testsuite/gdb.threads/siginfo-threads.exp 2010-11-16 09:08:44.000000000 +0100 +++ gdb-7.2.50.20110117/gdb/testsuite/gdb.threads/siginfo-threads.exp 2011-01-17 16:02:40.000000000 +0100
@@ -0,0 +1,94 @@ @@ -0,0 +1,94 @@
+# Copyright 2010 Free Software Foundation, Inc. +# Copyright 2010 Free Software Foundation, Inc.
+ +
@ -852,10 +852,10 @@ Index: gdb-7.2.50.20101116/gdb/testsuite/gdb.threads/siginfo-threads.exp
+} +}
+ +
+gdb_continue_to_breakpoint break-at-exit ".*break-at-exit.*" +gdb_continue_to_breakpoint break-at-exit ".*break-at-exit.*"
Index: gdb-7.2.50.20101116/gdb/testsuite/gdb.threads/sigstep-threads.c Index: gdb-7.2.50.20110117/gdb/testsuite/gdb.threads/sigstep-threads.c
=================================================================== ===================================================================
--- /dev/null 1970-01-01 00:00:00.000000000 +0000 --- /dev/null 1970-01-01 00:00:00.000000000 +0000
+++ gdb-7.2.50.20101116/gdb/testsuite/gdb.threads/sigstep-threads.c 2010-11-16 09:08:44.000000000 +0100 +++ gdb-7.2.50.20110117/gdb/testsuite/gdb.threads/sigstep-threads.c 2011-01-17 16:02:40.000000000 +0100
@@ -0,0 +1,54 @@ @@ -0,0 +1,54 @@
+/* This testcase is part of GDB, the GNU debugger. +/* This testcase is part of GDB, the GNU debugger.
+ +
@ -911,10 +911,10 @@ Index: gdb-7.2.50.20101116/gdb/testsuite/gdb.threads/sigstep-threads.c
+ start (NULL); /* main-start */ + start (NULL); /* main-start */
+ return 0; + return 0;
+} +}
Index: gdb-7.2.50.20101116/gdb/testsuite/gdb.threads/sigstep-threads.exp Index: gdb-7.2.50.20110117/gdb/testsuite/gdb.threads/sigstep-threads.exp
=================================================================== ===================================================================
--- /dev/null 1970-01-01 00:00:00.000000000 +0000 --- /dev/null 1970-01-01 00:00:00.000000000 +0000
+++ gdb-7.2.50.20101116/gdb/testsuite/gdb.threads/sigstep-threads.exp 2010-11-16 09:08:44.000000000 +0100 +++ gdb-7.2.50.20110117/gdb/testsuite/gdb.threads/sigstep-threads.exp 2011-01-17 16:02:40.000000000 +0100
@@ -0,0 +1,74 @@ @@ -0,0 +1,74 @@
+# Copyright 2010 Free Software Foundation, Inc. +# Copyright 2010 Free Software Foundation, Inc.
+ +

View File

@ -1,7 +1,7 @@
Index: gdb-7.2.50.20110107/gdb/f-lang.c Index: gdb-7.2.50.20110117/gdb/f-lang.c
=================================================================== ===================================================================
--- gdb-7.2.50.20110107.orig/gdb/f-lang.c 2011-01-05 23:22:48.000000000 +0100 --- gdb-7.2.50.20110117.orig/gdb/f-lang.c 2011-01-07 20:36:16.000000000 +0100
+++ gdb-7.2.50.20110107/gdb/f-lang.c 2011-01-07 09:08:52.000000000 +0100 +++ gdb-7.2.50.20110117/gdb/f-lang.c 2011-01-17 15:56:07.000000000 +0100
@@ -57,20 +57,6 @@ typedef struct saved_bf_symnum SAVED_BF, @@ -57,20 +57,6 @@ typedef struct saved_bf_symnum SAVED_BF,
/* Local functions */ /* Local functions */
@ -77,10 +77,10 @@ Index: gdb-7.2.50.20110107/gdb/f-lang.c
- above list. */ - above list. */
- -
-static SAVED_BF_PTR tmp_bf_ptr; /* Generic temporary for use -static SAVED_BF_PTR tmp_bf_ptr; /* Generic temporary for use
- in macros */ - in macros. */
- -
-/* The following function simply enters a given common block onto -/* The following function simply enters a given common block onto
- the global common block chain */ - the global common block chain. */
- -
-static void -static void
-add_common_block (char *name, CORE_ADDR offset, int secnum, char *func_stab) -add_common_block (char *name, CORE_ADDR offset, int secnum, char *func_stab)
@ -91,7 +91,7 @@ Index: gdb-7.2.50.20110107/gdb/f-lang.c
- /* If the COMMON block we are trying to add has a blank - /* If the COMMON block we are trying to add has a blank
- name (i.e. "#BLNK_COM") then we set it to __BLANK - name (i.e. "#BLNK_COM") then we set it to __BLANK
- because the darn "#" character makes GDB's input - because the darn "#" character makes GDB's input
- parser have fits. */ - parser have fits. */
- -
- -
- if (strcmp (name, BLANK_COMMON_NAME_ORIGINAL) == 0 - if (strcmp (name, BLANK_COMMON_NAME_ORIGINAL) == 0
@ -111,7 +111,7 @@ Index: gdb-7.2.50.20110107/gdb/f-lang.c
- tmp->name = xmalloc (strlen (name) + 1); - tmp->name = xmalloc (strlen (name) + 1);
- -
- /* local_copy_func_stab is a stabstring, let us first extract the - /* local_copy_func_stab is a stabstring, let us first extract the
- function name from the stab by NULLing out the ':' character. */ - function name from the stab by NULLing out the ':' character. */
- -
- -
- c = NULL; - c = NULL;
@ -148,7 +148,7 @@ Index: gdb-7.2.50.20110107/gdb/f-lang.c
-#endif -#endif
- -
-/* The following function simply enters a given common entry onto -/* The following function simply enters a given common entry onto
- the "current_common" block that has been saved away. */ - the "current_common" block that has been saved away. */
- -
-#if 0 -#if 0
-static void -static void
@ -160,7 +160,7 @@ Index: gdb-7.2.50.20110107/gdb/f-lang.c
- -
- /* The order of this list is important, since - /* The order of this list is important, since
- we expect the entries to appear in decl. - we expect the entries to appear in decl.
- order when we later issue "info common" calls */ - order when we later issue "info common" calls. */
- -
- tmp = allocate_common_entry_node (); - tmp = allocate_common_entry_node ();
- -
@ -185,7 +185,7 @@ Index: gdb-7.2.50.20110107/gdb/f-lang.c
-} -}
-#endif -#endif
- -
-/* This routine finds the first encountred COMMON block named "name" */ -/* This routine finds the first encountred COMMON block named "name". */
- -
-#if 0 -#if 0
-static SAVED_F77_COMMON_PTR -static SAVED_F77_COMMON_PTR
@ -208,7 +208,7 @@ Index: gdb-7.2.50.20110107/gdb/f-lang.c
-#endif -#endif
/* This routine finds the first encountred COMMON block named "name" /* This routine finds the first encountred COMMON block named "name"
that belongs to function funcname */ that belongs to function funcname. */
@@ -662,193 +470,3 @@ find_common_for_function (char *name, ch @@ -662,193 +470,3 @@ find_common_for_function (char *name, ch
} }
return (NULL); return (NULL);
@ -226,7 +226,7 @@ Index: gdb-7.2.50.20110107/gdb/f-lang.c
-{ -{
- COMMON_ENTRY_PTR entry; - COMMON_ENTRY_PTR entry;
- -
- blk->offset = offset; /* Keep this around for future use. */ - blk->offset = offset; /* Keep this around for future use. */
- -
- entry = blk->entries; - entry = blk->entries;
- -
@ -244,7 +244,7 @@ Index: gdb-7.2.50.20110107/gdb/f-lang.c
- blocks occur with relative infrequency, we simply do a linear scan on - blocks occur with relative infrequency, we simply do a linear scan on
- the name. Eventually, the best way to do this will be a - the name. Eventually, the best way to do this will be a
- hashed-lookup. Secnum is the section number for the .bss section - hashed-lookup. Secnum is the section number for the .bss section
- (which is where common data lives). */ - (which is where common data lives). */
- -
-static void -static void
-patch_all_commons_by_name (char *name, CORE_ADDR offset, int secnum) -patch_all_commons_by_name (char *name, CORE_ADDR offset, int secnum)
@ -282,7 +282,7 @@ Index: gdb-7.2.50.20110107/gdb/f-lang.c
- #line pragmas sometimes cause line ranges to get messed up - #line pragmas sometimes cause line ranges to get messed up
- we simply create a linear list. This list can then be searched - we simply create a linear list. This list can then be searched
- first by a queueing algorithm and upon failure fall back to - first by a queueing algorithm and upon failure fall back to
- a linear scan. */ - a linear scan. */
- -
-#if 0 -#if 0
-#define ADD_BF_SYMNUM(bf_sym,fcn_sym) \ -#define ADD_BF_SYMNUM(bf_sym,fcn_sym) \
@ -311,7 +311,7 @@ Index: gdb-7.2.50.20110107/gdb/f-lang.c
- } - }
-#endif -#endif
- -
-/* This function frees the entire (.bf,function) list */ -/* This function frees the entire (.bf,function) list. */
- -
-#if 0 -#if 0
-static void -static void
@ -342,7 +342,7 @@ Index: gdb-7.2.50.20110107/gdb/f-lang.c
- int nprobes = 0; - int nprobes = 0;
- -
- /* First use a simple queuing algorithm (i.e. look and see if the - /* First use a simple queuing algorithm (i.e. look and see if the
- item at the head of the queue is the one you want) */ - item at the head of the queue is the one you want). */
- -
- if (saved_bf_list == NULL) - if (saved_bf_list == NULL)
- internal_error (__FILE__, __LINE__, - internal_error (__FILE__, __LINE__,
@ -361,7 +361,7 @@ Index: gdb-7.2.50.20110107/gdb/f-lang.c
- -
- /* If the above did not work (probably because #line directives were - /* If the above did not work (probably because #line directives were
- used in the sourcefile and they messed up our internal tables) we now do - used in the sourcefile and they messed up our internal tables) we now do
- the ugly linear scan */ - the ugly linear scan. */
- -
- if (global_remote_debug) - if (global_remote_debug)
- fprintf_unfiltered (gdb_stderr, "\ndefaulting to linear scan\n"); - fprintf_unfiltered (gdb_stderr, "\ndefaulting to linear scan\n");
@ -403,10 +403,10 @@ Index: gdb-7.2.50.20110107/gdb/f-lang.c
- saved_function_list = NULL; - saved_function_list = NULL;
-} -}
-#endif -#endif
Index: gdb-7.2.50.20110107/gdb/f-lang.h Index: gdb-7.2.50.20110117/gdb/f-lang.h
=================================================================== ===================================================================
--- gdb-7.2.50.20110107.orig/gdb/f-lang.h 2011-01-07 09:03:38.000000000 +0100 --- gdb-7.2.50.20110117.orig/gdb/f-lang.h 2011-01-17 15:47:37.000000000 +0100
+++ gdb-7.2.50.20110107/gdb/f-lang.h 2011-01-07 09:07:58.000000000 +0100 +++ gdb-7.2.50.20110117/gdb/f-lang.h 2011-01-17 15:54:14.000000000 +0100
@@ -76,14 +76,9 @@ typedef struct saved_f77_common SAVED_F7 @@ -76,14 +76,9 @@ typedef struct saved_f77_common SAVED_F7
typedef struct common_entry COMMON_ENTRY, *COMMON_ENTRY_PTR; typedef struct common_entry COMMON_ENTRY, *COMMON_ENTRY_PTR;
@ -422,10 +422,10 @@ Index: gdb-7.2.50.20110107/gdb/f-lang.h
#define BLANK_COMMON_NAME_ORIGINAL "#BLNK_COM" /* XLF assigned */ #define BLANK_COMMON_NAME_ORIGINAL "#BLNK_COM" /* XLF assigned */
#define BLANK_COMMON_NAME_MF77 "__BLNK__" /* MF77 assigned */ #define BLANK_COMMON_NAME_MF77 "__BLNK__" /* MF77 assigned */
#define BLANK_COMMON_NAME_LOCAL "__BLANK" /* Local GDB */ #define BLANK_COMMON_NAME_LOCAL "__BLANK" /* Local GDB */
Index: gdb-7.2.50.20110107/gdb/f-valprint.c Index: gdb-7.2.50.20110117/gdb/f-valprint.c
=================================================================== ===================================================================
--- gdb-7.2.50.20110107.orig/gdb/f-valprint.c 2011-01-07 09:03:38.000000000 +0100 --- gdb-7.2.50.20110117.orig/gdb/f-valprint.c 2011-01-17 15:47:37.000000000 +0100
+++ gdb-7.2.50.20110107/gdb/f-valprint.c 2011-01-07 09:07:58.000000000 +0100 +++ gdb-7.2.50.20110117/gdb/f-valprint.c 2011-01-17 15:54:36.000000000 +0100
@@ -35,10 +35,6 @@ @@ -35,10 +35,6 @@
#include "command.h" #include "command.h"
#include "block.h" #include "block.h"
@ -442,7 +442,7 @@ Index: gdb-7.2.50.20110107/gdb/f-valprint.c
} }
-/* This function is used to determine whether there is a -/* This function is used to determine whether there is a
- F77 common block visible at the current scope called 'comname'. */ - F77 common block visible at the current scope called 'comname'. */
- -
-#if 0 -#if 0
-static int -static int
@ -459,7 +459,7 @@ Index: gdb-7.2.50.20110107/gdb/f-valprint.c
- fi = get_selected_frame (_("No frame selected")); - fi = get_selected_frame (_("No frame selected"));
- -
- /* The following is generally ripped off from stack.c's routine - /* The following is generally ripped off from stack.c's routine
- print_frame_info() */ - print_frame_info(). */
- -
- func = find_pc_function (fi->pc); - func = find_pc_function (fi->pc);
- if (func) - if (func)
@ -476,7 +476,7 @@ Index: gdb-7.2.50.20110107/gdb/f-valprint.c
- up with a larger address for the function use that instead. - up with a larger address for the function use that instead.
- I don't think this can ever cause any problems; there shouldn't - I don't think this can ever cause any problems; there shouldn't
- be any minimal symbols in the middle of a function. - be any minimal symbols in the middle of a function.
- FIXME: (Not necessarily true. What about text labels) */ - FIXME: (Not necessarily true. What about text labels?) */
- -
- struct minimal_symbol *msymbol = lookup_minimal_symbol_by_pc (fi->pc); - struct minimal_symbol *msymbol = lookup_minimal_symbol_by_pc (fi->pc);
- -

View File

@ -1,8 +1,8 @@
Index: gdb-7.2.50.20101116/gdb/dwarf2read.c Index: gdb-7.2.50.20110117/gdb/dwarf2read.c
=================================================================== ===================================================================
--- gdb-7.2.50.20101116.orig/gdb/dwarf2read.c 2010-11-16 08:19:54.000000000 +0100 --- gdb-7.2.50.20110117.orig/gdb/dwarf2read.c 2011-01-17 15:50:41.000000000 +0100
+++ gdb-7.2.50.20101116/gdb/dwarf2read.c 2010-11-16 08:25:21.000000000 +0100 +++ gdb-7.2.50.20110117/gdb/dwarf2read.c 2011-01-17 15:56:23.000000000 +0100
@@ -7315,12 +7315,14 @@ read_set_type (struct die_info *die, str @@ -7465,12 +7465,14 @@ read_set_type (struct die_info *die, str
return set_die_type (die, set_type, cu); return set_die_type (die, set_type, cu);
} }
@ -19,7 +19,7 @@ Index: gdb-7.2.50.20101116/gdb/dwarf2read.c
struct attribute *attr; struct attribute *attr;
struct symbol *sym; struct symbol *sym;
CORE_ADDR base = (CORE_ADDR) 0; CORE_ADDR base = (CORE_ADDR) 0;
@@ -7345,10 +7347,40 @@ read_common_block (struct die_info *die, @@ -7495,10 +7497,40 @@ read_common_block (struct die_info *die,
} }
if (die->child != NULL) if (die->child != NULL)
{ {
@ -60,7 +60,7 @@ Index: gdb-7.2.50.20101116/gdb/dwarf2read.c
attr = dwarf2_attr (child_die, DW_AT_data_member_location, cu); attr = dwarf2_attr (child_die, DW_AT_data_member_location, cu);
if (sym != NULL && attr != NULL) if (sym != NULL && attr != NULL)
{ {
@@ -7366,8 +7398,25 @@ read_common_block (struct die_info *die, @@ -7516,8 +7548,25 @@ read_common_block (struct die_info *die,
SYMBOL_VALUE_ADDRESS (sym) = base + byte_offset; SYMBOL_VALUE_ADDRESS (sym) = base + byte_offset;
add_symbol_to_list (sym, &global_symbols); add_symbol_to_list (sym, &global_symbols);
} }
@ -86,7 +86,7 @@ Index: gdb-7.2.50.20101116/gdb/dwarf2read.c
} }
} }
@@ -10954,6 +11003,13 @@ new_symbol_full (struct die_info *die, s @@ -11111,6 +11160,13 @@ new_symbol_full (struct die_info *die, s
{ {
var_decode_location (attr, sym, cu); var_decode_location (attr, sym, cu);
attr2 = dwarf2_attr (die, DW_AT_external, cu); attr2 = dwarf2_attr (die, DW_AT_external, cu);
@ -100,7 +100,7 @@ Index: gdb-7.2.50.20101116/gdb/dwarf2read.c
if (SYMBOL_CLASS (sym) == LOC_STATIC if (SYMBOL_CLASS (sym) == LOC_STATIC
&& SYMBOL_VALUE_ADDRESS (sym) == 0 && SYMBOL_VALUE_ADDRESS (sym) == 0
&& !dwarf2_per_objfile->has_section_at_zero) && !dwarf2_per_objfile->has_section_at_zero)
@@ -11126,6 +11182,11 @@ new_symbol_full (struct die_info *die, s @@ -11283,6 +11339,11 @@ new_symbol_full (struct die_info *die, s
SYMBOL_CLASS (sym) = LOC_TYPEDEF; SYMBOL_CLASS (sym) = LOC_TYPEDEF;
list_to_add = &global_symbols; list_to_add = &global_symbols;
break; break;
@ -112,11 +112,11 @@ Index: gdb-7.2.50.20101116/gdb/dwarf2read.c
default: default:
/* Not a tag we recognize. Hopefully we aren't processing /* Not a tag we recognize. Hopefully we aren't processing
trash data, but since we must specifically ignore things trash data, but since we must specifically ignore things
Index: gdb-7.2.50.20101116/gdb/f-lang.c Index: gdb-7.2.50.20110117/gdb/f-lang.c
=================================================================== ===================================================================
--- gdb-7.2.50.20101116.orig/gdb/f-lang.c 2010-11-16 08:21:46.000000000 +0100 --- gdb-7.2.50.20110117.orig/gdb/f-lang.c 2011-01-17 15:56:07.000000000 +0100
+++ gdb-7.2.50.20101116/gdb/f-lang.c 2010-11-16 08:22:05.000000000 +0100 +++ gdb-7.2.50.20110117/gdb/f-lang.c 2011-01-17 15:56:48.000000000 +0100
@@ -443,27 +443,3 @@ _initialize_f_language (void) @@ -446,27 +446,3 @@ _initialize_f_language (void)
add_language (&f_language_defn); add_language (&f_language_defn);
} }
@ -124,7 +124,7 @@ Index: gdb-7.2.50.20101116/gdb/f-lang.c
-SAVED_F77_COMMON_PTR head_common_list = NULL; /* Ptr to 1st saved COMMON */ -SAVED_F77_COMMON_PTR head_common_list = NULL; /* Ptr to 1st saved COMMON */
- -
-/* This routine finds the first encountred COMMON block named "name" -/* This routine finds the first encountred COMMON block named "name"
- that belongs to function funcname */ - that belongs to function funcname. */
- -
-SAVED_F77_COMMON_PTR -SAVED_F77_COMMON_PTR
-find_common_for_function (char *name, char *funcname) -find_common_for_function (char *name, char *funcname)
@ -144,10 +144,10 @@ Index: gdb-7.2.50.20101116/gdb/f-lang.c
- } - }
- return (NULL); - return (NULL);
-} -}
Index: gdb-7.2.50.20101116/gdb/f-lang.h Index: gdb-7.2.50.20110117/gdb/f-lang.h
=================================================================== ===================================================================
--- gdb-7.2.50.20101116.orig/gdb/f-lang.h 2010-11-16 08:21:46.000000000 +0100 --- gdb-7.2.50.20110117.orig/gdb/f-lang.h 2011-01-17 15:54:14.000000000 +0100
+++ gdb-7.2.50.20101116/gdb/f-lang.h 2010-11-16 08:22:05.000000000 +0100 +++ gdb-7.2.50.20110117/gdb/f-lang.h 2011-01-17 15:56:23.000000000 +0100
@@ -52,36 +52,8 @@ enum f90_range_type @@ -52,36 +52,8 @@ enum f90_range_type
NONE_BOUND_DEFAULT /* "(low:high)" */ NONE_BOUND_DEFAULT /* "(low:high)" */
}; };
@ -185,10 +185,10 @@ Index: gdb-7.2.50.20101116/gdb/f-lang.h
/* When reasonable array bounds cannot be fetched, such as when /* When reasonable array bounds cannot be fetched, such as when
you ask to 'mt print symbols' and there is no stack frame and you ask to 'mt print symbols' and there is no stack frame and
Index: gdb-7.2.50.20101116/gdb/f-valprint.c Index: gdb-7.2.50.20110117/gdb/f-valprint.c
=================================================================== ===================================================================
--- gdb-7.2.50.20101116.orig/gdb/f-valprint.c 2010-11-16 08:21:46.000000000 +0100 --- gdb-7.2.50.20110117.orig/gdb/f-valprint.c 2011-01-17 15:54:36.000000000 +0100
+++ gdb-7.2.50.20101116/gdb/f-valprint.c 2010-11-16 08:22:05.000000000 +0100 +++ gdb-7.2.50.20110117/gdb/f-valprint.c 2011-01-17 15:59:38.000000000 +0100
@@ -34,6 +34,8 @@ @@ -34,6 +34,8 @@
#include "gdbcore.h" #include "gdbcore.h"
#include "command.h" #include "command.h"
@ -198,7 +198,7 @@ Index: gdb-7.2.50.20101116/gdb/f-valprint.c
extern void _initialize_f_valprint (void); extern void _initialize_f_valprint (void);
static void info_common_command (char *, int); static void info_common_command (char *, int);
@@ -486,22 +488,54 @@ f_val_print (struct type *type, const gd @@ -489,22 +491,54 @@ f_val_print (struct type *type, const gd
return 0; return 0;
} }
@ -266,7 +266,7 @@ Index: gdb-7.2.50.20101116/gdb/f-valprint.c
} }
/* This function is used to print out the values in a given COMMON /* This function is used to print out the values in a given COMMON
@@ -511,11 +545,9 @@ list_all_visible_commons (char *funname) @@ -514,11 +548,9 @@ list_all_visible_commons (char *funname)
static void static void
info_common_command (char *comname, int from_tty) info_common_command (char *comname, int from_tty)
{ {
@ -280,9 +280,9 @@ Index: gdb-7.2.50.20101116/gdb/f-valprint.c
/* We have been told to display the contents of F77 COMMON /* We have been told to display the contents of F77 COMMON
block supposedly visible in this function. Let us block supposedly visible in this function. Let us
@@ -527,74 +559,31 @@ info_common_command (char *comname, int @@ -530,74 +562,31 @@ info_common_command (char *comname, int
/* The following is generally ripped off from stack.c's routine /* The following is generally ripped off from stack.c's routine
print_frame_info() */ print_frame_info(). */
- func = find_pc_function (get_frame_pc (fi)); - func = find_pc_function (get_frame_pc (fi));
- if (func) - if (func)
@ -301,7 +301,7 @@ Index: gdb-7.2.50.20101116/gdb/f-valprint.c
- up with a larger address for the function use that instead. - up with a larger address for the function use that instead.
- I don't think this can ever cause any problems; there shouldn't - I don't think this can ever cause any problems; there shouldn't
- be any minimal symbols in the middle of a function. - be any minimal symbols in the middle of a function.
- FIXME: (Not necessarily true. What about text labels) */ - FIXME: (Not necessarily true. What about text labels?) */
- -
- struct minimal_symbol *msymbol = - struct minimal_symbol *msymbol =
- lookup_minimal_symbol_by_pc (get_frame_pc (fi)); - lookup_minimal_symbol_by_pc (get_frame_pc (fi));
@ -327,7 +327,7 @@ Index: gdb-7.2.50.20101116/gdb/f-valprint.c
} }
- /* If comname is NULL, we assume the user wishes to see the - /* If comname is NULL, we assume the user wishes to see the
- which COMMON blocks are visible here and then return */ - which COMMON blocks are visible here and then return. */
- -
- if (comname == 0) - if (comname == 0)
+ while (block) + while (block)
@ -371,11 +371,11 @@ Index: gdb-7.2.50.20101116/gdb/f-valprint.c
} }
void void
Index: gdb-7.2.50.20101116/gdb/stack.c Index: gdb-7.2.50.20110117/gdb/stack.c
=================================================================== ===================================================================
--- gdb-7.2.50.20101116.orig/gdb/stack.c 2010-09-30 12:29:00.000000000 +0200 --- gdb-7.2.50.20110117.orig/gdb/stack.c 2011-01-17 15:47:37.000000000 +0100
+++ gdb-7.2.50.20101116/gdb/stack.c 2010-11-16 08:22:05.000000000 +0100 +++ gdb-7.2.50.20110117/gdb/stack.c 2011-01-17 15:56:23.000000000 +0100
@@ -1490,6 +1490,8 @@ iterate_over_block_locals (struct block @@ -1498,6 +1498,8 @@ iterate_over_block_locals (struct block
case LOC_COMPUTED: case LOC_COMPUTED:
if (SYMBOL_IS_ARGUMENT (sym)) if (SYMBOL_IS_ARGUMENT (sym))
break; break;
@ -384,10 +384,10 @@ Index: gdb-7.2.50.20101116/gdb/stack.c
(*cb) (SYMBOL_PRINT_NAME (sym), sym, cb_data); (*cb) (SYMBOL_PRINT_NAME (sym), sym, cb_data);
break; break;
Index: gdb-7.2.50.20101116/gdb/symtab.h Index: gdb-7.2.50.20110117/gdb/symtab.h
=================================================================== ===================================================================
--- gdb-7.2.50.20101116.orig/gdb/symtab.h 2010-11-16 07:53:59.000000000 +0100 --- gdb-7.2.50.20110117.orig/gdb/symtab.h 2011-01-17 15:47:37.000000000 +0100
+++ gdb-7.2.50.20101116/gdb/symtab.h 2010-11-16 08:22:05.000000000 +0100 +++ gdb-7.2.50.20110117/gdb/symtab.h 2011-01-17 15:56:23.000000000 +0100
@@ -408,7 +408,10 @@ typedef enum domain_enum_tag @@ -408,7 +408,10 @@ typedef enum domain_enum_tag
FUNCTIONS_DOMAIN, FUNCTIONS_DOMAIN,
@ -400,10 +400,10 @@ Index: gdb-7.2.50.20101116/gdb/symtab.h
} }
domain_enum; domain_enum;
Index: gdb-7.2.50.20101116/gdb/testsuite/gdb.fortran/common-block.exp Index: gdb-7.2.50.20110117/gdb/testsuite/gdb.fortran/common-block.exp
=================================================================== ===================================================================
--- /dev/null 1970-01-01 00:00:00.000000000 +0000 --- /dev/null 1970-01-01 00:00:00.000000000 +0000
+++ gdb-7.2.50.20101116/gdb/testsuite/gdb.fortran/common-block.exp 2010-11-16 08:22:05.000000000 +0100 +++ gdb-7.2.50.20110117/gdb/testsuite/gdb.fortran/common-block.exp 2011-01-17 15:56:23.000000000 +0100
@@ -0,0 +1,101 @@ @@ -0,0 +1,101 @@
+# Copyright 2008 Free Software Foundation, Inc. +# Copyright 2008 Free Software Foundation, Inc.
+ +
@ -506,10 +506,10 @@ Index: gdb-7.2.50.20101116/gdb/testsuite/gdb.fortran/common-block.exp
+gdb_test "p ix_x" " = 1 *" "p ix_x in" +gdb_test "p ix_x" " = 1 *" "p ix_x in"
+gdb_test "p iy_y" " = 2 *" "p iy_y in" +gdb_test "p iy_y" " = 2 *" "p iy_y in"
+gdb_test "p iz_z2" " = 3 *" "p iz_z2 in" +gdb_test "p iz_z2" " = 3 *" "p iz_z2 in"
Index: gdb-7.2.50.20101116/gdb/testsuite/gdb.fortran/common-block.f90 Index: gdb-7.2.50.20110117/gdb/testsuite/gdb.fortran/common-block.f90
=================================================================== ===================================================================
--- /dev/null 1970-01-01 00:00:00.000000000 +0000 --- /dev/null 1970-01-01 00:00:00.000000000 +0000
+++ gdb-7.2.50.20101116/gdb/testsuite/gdb.fortran/common-block.f90 2010-11-16 08:22:05.000000000 +0100 +++ gdb-7.2.50.20110117/gdb/testsuite/gdb.fortran/common-block.f90 2011-01-17 15:56:23.000000000 +0100
@@ -0,0 +1,67 @@ @@ -0,0 +1,67 @@
+! Copyright 2008 Free Software Foundation, Inc. +! Copyright 2008 Free Software Foundation, Inc.
+! +!

View File

@ -0,0 +1,266 @@
http://sourceware.org/ml/gdb-patches/2009-11/msg00596.html
Subject: [gdb FYI-patch] callback-mode readline-6.0 regression
Hi Chet,
FSF GDB currently ships bundled with readline-5.2 which works fine.
But using --with-system-readline and readline-6.0-patchlevel4 has
a regression:
readline-5.2: Run `gdb -nx -q' and type CTRL-C:
(gdb) Quit
(gdb) _
readline-6.0: Run `gdb -nx -q' and type CTRL-C:
(gdb) _
= nothing happens (it gets buffered and executed later)
(It does also FAIL on gdb.gdb/selftest.exp.)
It is because GDB waits in its own poll() mainloop and readline uses via
rl_callback_handler_install and rl_callback_handler_remove. This way the
readline internal variable _rl_interrupt_immediately remains 0 and CTRL-C gets
only stored to _rl_caught_signal but not executed.
Seen in rl_signal_handler even if _rl_interrupt_immediately is set and
_rl_handle_signal is called then the signal is still stored to
_rl_caught_signal. In the _rl_interrupt_immediately case it should not be
stored when it was already processed.
rl_signal_handler does `_rl_interrupt_immediately = 0;' - while I am not aware
of its meaning it breaks the nest-counting of other routines which do
`_rl_interrupt_immediately++;' and `_rl_interrupt_immediately--;' possibly
creating problematic `_rl_interrupt_immediately == -1'.
`_rl_interrupt_immediately' is an internal variable, how it could be accessed
by a readline application? (OK, maybe it should not be used.)
Attaching a current GDB-side patch but it must access readline internal
variable _rl_caught_signal and it is generally just a workaround. Could you
please include support for signals in this asynchronous mode in readline-6.1?
I find it would be enough to make RL_CHECK_SIGNALS public?
GDB: No regressions on {x86_64,x86_64-m32,i686}-fedora12-linux-gnu.
But this is not a patch intended to be accepted.
Thanks,
Jan
gdb/
2009-11-29 Jan Kratochvil <jan.kratochvil@redhat.com>
* config.in, configure: Regenerate.
* configure.ac (for readline_echoing_p): Move inside $LIBS change.
(for _rl_caught_signal): New.
* event-loop.c: Include readline/readline.h.
(gdb_do_one_event) [HAVE_READLINE_CAUGHT_SIGNAL]: New.
gdb/testsuite/
2009-11-29 Jan Kratochvil <jan.kratochvil@redhat.com>
* gdb.gdb/selftest.exp (backtrace through signal handler): Move before
SIGINT pass, drop the timeout case.
(send SIGINT signal to child process): Use gdb_test.
(backtrace through readline handler): New.
Index: gdb-7.2.50.20110107/gdb/config.in
===================================================================
--- gdb-7.2.50.20110107.orig/gdb/config.in 2011-01-17 15:36:40.000000000 +0100
+++ gdb-7.2.50.20110107/gdb/config.in 2011-01-17 15:37:09.000000000 +0100
@@ -464,6 +464,9 @@
/* Define to 1 if wcwidth is declared even after undefining macros. */
#undef HAVE_RAW_DECL_WCWIDTH
+/* readline-6.0 workaround of blocked signals. */
+#undef HAVE_READLINE_CAUGHT_SIGNAL
+
/* Define to 1 if you have the `realpath' function. */
#undef HAVE_REALPATH
Index: gdb-7.2.50.20110107/gdb/configure.ac
===================================================================
--- gdb-7.2.50.20110107.orig/gdb/configure.ac 2011-01-17 15:36:42.000000000 +0100
+++ gdb-7.2.50.20110107/gdb/configure.ac 2011-01-17 15:37:09.000000000 +0100
@@ -736,17 +736,25 @@ if test "$with_system_readline" = yes; t
# readline-6.0 started to use the name `_rl_echoing_p'.
# `$(READLINE_DIR)/' of bundled readline would not resolve in configure.
- AC_MSG_CHECKING([for readline_echoing_p])
save_LIBS=$LIBS
LIBS="$LIBS $READLINE"
+ AC_MSG_CHECKING([for readline_echoing_p])
AC_LINK_IFELSE(AC_LANG_PROGRAM(,[[extern int readline_echoing_p;
return readline_echoing_p;]]),
[READLINE_ECHOING_P=yes],
[READLINE_ECHOING_P=no
AC_DEFINE([readline_echoing_p], [_rl_echoing_p],
[readline-6.0 started to use different name.])])
- LIBS="$save_LIBS"
AC_MSG_RESULT([$READLINE_ECHOING_P])
+ AC_MSG_CHECKING([for _rl_caught_signal])
+ AC_LINK_IFELSE(AC_LANG_PROGRAM(,[[extern int volatile _rl_caught_signal;
+ return _rl_caught_signal;]]),
+ [READLINE_CAUGHT_SIGNAL=yes
+ AC_DEFINE([HAVE_READLINE_CAUGHT_SIGNAL],,
+ [readline-6.0 workaround of blocked signals.])],
+ [READLINE_CAUGHT_SIGNAL=no])
+ AC_MSG_RESULT([$READLINE_CAUGHT_SIGNAL])
+ LIBS="$save_LIBS"
else
READLINE='$(READLINE_DIR)/libreadline.a'
READLINE_DEPS='$(READLINE)'
Index: gdb-7.2.50.20110107/gdb/event-loop.c
===================================================================
--- gdb-7.2.50.20110107.orig/gdb/event-loop.c 2011-01-05 23:22:48.000000000 +0100
+++ gdb-7.2.50.20110107/gdb/event-loop.c 2011-01-17 15:37:23.000000000 +0100
@@ -37,6 +37,7 @@
#include "exceptions.h"
#include "gdb_assert.h"
#include "gdb_select.h"
+#include "readline/readline.h"
/* Tell create_file_handler what events we are interested in.
This is used by the select version of the event loop. */
@@ -419,6 +420,9 @@ gdb_do_one_event (void *data)
static int event_source_head = 0;
const int number_of_sources = 3;
int current = 0;
+#ifdef HAVE_READLINE_CAUGHT_SIGNAL
+ extern int volatile _rl_caught_signal;
+#endif
/* Any events already waiting in the queue? */
if (process_event ())
@@ -463,6 +467,29 @@ gdb_do_one_event (void *data)
if (gdb_wait_for_event (1) < 0)
return -1;
+#ifdef HAVE_READLINE_CAUGHT_SIGNAL
+ if (async_command_editing_p && RL_ISSTATE (RL_STATE_CALLBACK)
+ && _rl_caught_signal)
+ {
+ char *prompt;
+
+ if (rl_prompt == NULL)
+ {
+ /* Should not happen, defensive only. */
+ prompt = "";
+ }
+ else
+ {
+ prompt = alloca (strlen (rl_prompt) + 1);
+ strcpy (prompt, rl_prompt);
+ }
+
+ /* Call RL_CHECK_SIGNALS this way. */
+ rl_callback_handler_remove ();
+ rl_callback_handler_install (prompt, input_handler);
+ }
+#endif
+
/* Handle any new events occurred while waiting. */
if (process_event ())
return 1;
Index: gdb-7.2.50.20110107/gdb/testsuite/gdb.gdb/selftest.exp
===================================================================
--- gdb-7.2.50.20110107.orig/gdb/testsuite/gdb.gdb/selftest.exp 2011-01-17 15:36:37.000000000 +0100
+++ gdb-7.2.50.20110107/gdb/testsuite/gdb.gdb/selftest.exp 2011-01-17 15:37:09.000000000 +0100
@@ -433,6 +433,28 @@ proc test_with_self { executable } {
}
}
+ # get a stack trace with the poll function
+ #
+ # This fails on some linux systems for unknown reasons. On the
+ # systems where it fails, sometimes it works fine when run manually.
+ # The testsuite failures may not be limited to just aout systems.
+ setup_xfail "i*86-pc-linuxaout-gnu"
+ set description "backtrace through signal handler"
+ gdb_test_multiple "backtrace" "$description" {
+ -re "#0.*(read|poll).*in main \\(.*\\) at .*gdb\\.c.*$gdb_prompt $" {
+ pass "$description"
+ }
+ -re ".*$gdb_prompt $" {
+ # On the alpha, we hit the infamous problem about gdb
+ # being unable to get the frame pointer (mentioned in
+ # gdb/README). As it is intermittent, there is no way to
+ # XFAIL it which will give us an XPASS if the problem goes
+ # away.
+ setup_xfail "alpha*-*-osf*"
+ fail "$description"
+ }
+ }
+
set description "send SIGINT signal to child process"
gdb_test "signal SIGINT" \
"Continuing with signal SIGINT.*" \
@@ -443,10 +465,11 @@ proc test_with_self { executable } {
# This fails on some linux systems for unknown reasons. On the
# systems where it fails, sometimes it works fine when run manually.
# The testsuite failures may not be limited to just aout systems.
+ # Optional system readline may not have symbols to be shown.
setup_xfail "i*86-pc-linuxaout-gnu"
- set description "backtrace through signal handler"
+ set description "backtrace through readline handler"
gdb_test_multiple "backtrace" "$description" {
- -re "#0.*(read|poll).*in main \\(.*\\) at .*gdb\\.c.*$gdb_prompt $" {
+ -re "#0.*gdb_do_one_event.*in main \\(.*\\) at .*gdb\\.c.*$gdb_prompt $" {
pass "$description"
}
-re ".*$gdb_prompt $" {
Index: gdb-7.2.50.20110107/gdb/configure
===================================================================
--- gdb-7.2.50.20110107.orig/gdb/configure 2011-01-17 15:36:42.000000000 +0100
+++ gdb-7.2.50.20110107/gdb/configure 2011-01-17 15:37:09.000000000 +0100
@@ -10237,10 +10237,10 @@ if test "$with_system_readline" = yes; t
# readline-6.0 started to use the name `_rl_echoing_p'.
# `$(READLINE_DIR)/' of bundled readline would not resolve in configure.
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking for readline_echoing_p" >&5
-$as_echo_n "checking for readline_echoing_p... " >&6; }
save_LIBS=$LIBS
LIBS="$LIBS $READLINE"
+ { $as_echo "$as_me:${as_lineno-$LINENO}: checking for readline_echoing_p" >&5
+$as_echo_n "checking for readline_echoing_p... " >&6; }
cat confdefs.h - <<_ACEOF >conftest.$ac_ext
/* end confdefs.h. */
@@ -10263,9 +10263,35 @@ $as_echo "#define readline_echoing_p _rl
fi
rm -f core conftest.err conftest.$ac_objext \
conftest$ac_exeext conftest.$ac_ext
- LIBS="$save_LIBS"
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $READLINE_ECHOING_P" >&5
$as_echo "$READLINE_ECHOING_P" >&6; }
+ { $as_echo "$as_me:${as_lineno-$LINENO}: checking for _rl_caught_signal" >&5
+$as_echo_n "checking for _rl_caught_signal... " >&6; }
+ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h. */
+
+int
+main ()
+{
+extern int volatile _rl_caught_signal;
+ return _rl_caught_signal;
+ ;
+ return 0;
+}
+_ACEOF
+if ac_fn_c_try_link "$LINENO"; then :
+ READLINE_CAUGHT_SIGNAL=yes
+
+$as_echo "#define HAVE_READLINE_CAUGHT_SIGNAL /**/" >>confdefs.h
+
+else
+ READLINE_CAUGHT_SIGNAL=no
+fi
+rm -f core conftest.err conftest.$ac_objext \
+ conftest$ac_exeext conftest.$ac_ext
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: $READLINE_CAUGHT_SIGNAL" >&5
+$as_echo "$READLINE_CAUGHT_SIGNAL" >&6; }
+ LIBS="$save_LIBS"
else
READLINE='$(READLINE_DIR)/libreadline.a'
READLINE_DEPS='$(READLINE)'

View File

@ -27,10 +27,10 @@ gdb/testsuite/
* gdb.python/py-prettyprint.py (class pp_hint_error): New. * gdb.python/py-prettyprint.py (class pp_hint_error): New.
(register_pretty_printers): Register it. (register_pretty_printers): Register it.
Index: gdb-7.2.50.20110107/gdb/testsuite/gdb.python/py-prettyprint.c Index: gdb-7.2.50.20110117/gdb/testsuite/gdb.python/py-prettyprint.c
=================================================================== ===================================================================
--- gdb-7.2.50.20110107.orig/gdb/testsuite/gdb.python/py-prettyprint.c 2011-01-01 16:33:49.000000000 +0100 --- gdb-7.2.50.20110117.orig/gdb/testsuite/gdb.python/py-prettyprint.c 2011-01-01 16:33:49.000000000 +0100
+++ gdb-7.2.50.20110107/gdb/testsuite/gdb.python/py-prettyprint.c 2011-01-07 09:11:18.000000000 +0100 +++ gdb-7.2.50.20110117/gdb/testsuite/gdb.python/py-prettyprint.c 2011-01-17 16:08:16.000000000 +0100
@@ -44,6 +44,10 @@ struct lazystring { @@ -44,6 +44,10 @@ struct lazystring {
const char *lazy_str; const char *lazy_str;
}; };
@ -50,10 +50,10 @@ Index: gdb-7.2.50.20110107/gdb/testsuite/gdb.python/py-prettyprint.c
nstype.elements = narray; nstype.elements = narray;
nstype.len = 0; nstype.len = 0;
Index: gdb-7.2.50.20110107/gdb/testsuite/gdb.python/py-prettyprint.exp Index: gdb-7.2.50.20110117/gdb/testsuite/gdb.python/py-prettyprint.exp
=================================================================== ===================================================================
--- gdb-7.2.50.20110107.orig/gdb/testsuite/gdb.python/py-prettyprint.exp 2011-01-07 09:03:38.000000000 +0100 --- gdb-7.2.50.20110117.orig/gdb/testsuite/gdb.python/py-prettyprint.exp 2011-01-01 16:33:49.000000000 +0100
+++ gdb-7.2.50.20110107/gdb/testsuite/gdb.python/py-prettyprint.exp 2011-01-07 09:11:32.000000000 +0100 +++ gdb-7.2.50.20110117/gdb/testsuite/gdb.python/py-prettyprint.exp 2011-01-17 16:08:33.000000000 +0100
@@ -97,6 +97,8 @@ proc run_lang_tests {lang} { @@ -97,6 +97,8 @@ proc run_lang_tests {lang} {
gdb_test_no_output "python pp_ls_encoding = 'UTF-8'" gdb_test_no_output "python pp_ls_encoding = 'UTF-8'"
gdb_test "print estring2" "\"embedded \", <incomplete sequence \\\\302>" gdb_test "print estring2" "\"embedded \", <incomplete sequence \\\\302>"
@ -62,11 +62,11 @@ Index: gdb-7.2.50.20110107/gdb/testsuite/gdb.python/py-prettyprint.exp
+ +
gdb_test "print c" " = container \"container\" with 2 elements = {$nl *.0. = 23,$nl *.1. = 72$nl}" gdb_test "print c" " = container \"container\" with 2 elements = {$nl *.0. = 23,$nl *.1. = 72$nl}"
gdb_test "print nullstr" "RuntimeError: Error reading string from inferior.*" gdb_test "print nstype" " = {$nl *.0. = 7,$nl *.1. = 42$nl}"
Index: gdb-7.2.50.20110107/gdb/testsuite/gdb.python/py-prettyprint.py Index: gdb-7.2.50.20110117/gdb/testsuite/gdb.python/py-prettyprint.py
=================================================================== ===================================================================
--- gdb-7.2.50.20110107.orig/gdb/testsuite/gdb.python/py-prettyprint.py 2011-01-01 16:33:49.000000000 +0100 --- gdb-7.2.50.20110117.orig/gdb/testsuite/gdb.python/py-prettyprint.py 2011-01-01 16:33:49.000000000 +0100
+++ gdb-7.2.50.20110107/gdb/testsuite/gdb.python/py-prettyprint.py 2011-01-07 09:11:18.000000000 +0100 +++ gdb-7.2.50.20110117/gdb/testsuite/gdb.python/py-prettyprint.py 2011-01-17 16:08:16.000000000 +0100
@@ -156,6 +156,18 @@ class pp_ls: @@ -156,6 +156,18 @@ class pp_ls:
def display_hint (self): def display_hint (self):
return 'string' return 'string'

View File

@ -23,11 +23,11 @@ Name: gdb%{?_with_debug:-debug}
# Set version to contents of gdb/version.in. # Set version to contents of gdb/version.in.
# NOTE: the FSF gdb versions are numbered N.M for official releases, like 6.3 # NOTE: the FSF gdb versions are numbered N.M for official releases, like 6.3
# and, since January 2005, X.Y.Z.date for daily snapshots, like 6.3.50.20050112 # (daily snapshot from mailine), or 6.3.0.20040112 (head of the release branch). # and, since January 2005, X.Y.Z.date for daily snapshots, like 6.3.50.20050112 # (daily snapshot from mailine), or 6.3.0.20040112 (head of the release branch).
Version: 7.2.50.20110107 Version: 7.2.50.20110117
# The release always contains a leading reserved number, start it at 1. # The release always contains a leading reserved number, start it at 1.
# `upstream' is not a part of `name' to stay fully rpm dependencies compatible for the testing. # `upstream' is not a part of `name' to stay fully rpm dependencies compatible for the testing.
Release: 10%{?_with_upstream:.upstream}%{dist} Release: 11%{?_with_upstream:.upstream}%{dist}
License: GPLv3+ and GPLv3+ with exceptions and GPLv2+ and GPLv2+ with exceptions and GPL+ and LGPLv2+ and GFDL and BSD and Public Domain License: GPLv3+ and GPLv3+ with exceptions and GPLv2+ and GPLv2+ with exceptions and GPL+ and LGPLv2+ and GFDL and BSD and Public Domain
Group: Development/Debuggers Group: Development/Debuggers
@ -418,6 +418,9 @@ Patch381: gdb-simultaneous-step-resume-breakpoint-test.patch
#=push+work: It should be in glibc: libc-alpha: <20091004161706.GA27450@.*> #=push+work: It should be in glibc: libc-alpha: <20091004161706.GA27450@.*>
Patch382: gdb-core-open-vdso-warning.patch Patch382: gdb-core-open-vdso-warning.patch
# Fix callback-mode readline-6.0 regression for CTRL-C (for RHEL-6.0).
Patch390: gdb-readline-6.0-signal.patch
# Fix syscall restarts for amd64->i386 biarch. # Fix syscall restarts for amd64->i386 biarch.
#=push #=push
Patch391: gdb-x86_64-i386-syscall-restart.patch Patch391: gdb-x86_64-i386-syscall-restart.patch
@ -783,8 +786,14 @@ rm -f gdb/jv-exp.c gdb/m2-exp.c gdb/objc-exp.c gdb/p-exp.c
%patch547 -p1 %patch547 -p1
%patch548 -p1 %patch548 -p1
%patch390 -p1
%patch393 -p1 %patch393 -p1
%patch335 -p1 %patch335 -p1
readline="$(readlink -f %{_libdir}/libreadline.so)"
if [ "$readline" = "${readline%/libreadline.so.6.0}" ]
then
%patch390 -p1 -R
fi
%if 0%{!?el5:1} %if 0%{!?el5:1}
%patch393 -p1 -R %patch393 -p1 -R
%patch335 -p1 -R %patch335 -p1 -R
@ -1178,6 +1187,11 @@ fi
%endif %endif
%changelog %changelog
* Mon Jan 17 2011 Jan Kratochvil <jan.kratochvil@redhat.com> - 7.2.50.20110117-11.fc15
- Rebase to FSF GDB 7.2.50.20110117 (which is a 7.3 pre-release).
- Fix callback-mode readline-6.0 regression for CTRL-C (for RHEL-6.0).
- Fix occasional NULL dereference of the readline-6.0 workaround (BZ 575516).
* Sat Jan 15 2011 Jan Kratochvil <jan.kratochvil@redhat.com> - 7.2.50.20110107-10.fc15 * Sat Jan 15 2011 Jan Kratochvil <jan.kratochvil@redhat.com> - 7.2.50.20110107-10.fc15
- [delayed-symfile] Test a backtrace regression on CFIs without DIE (BZ 614604). - [delayed-symfile] Test a backtrace regression on CFIs without DIE (BZ 614604).
- [archer-tromey-delayed-symfile] New test gdb.dwarf2/dw2-aranges.exp. - [archer-tromey-delayed-symfile] New test gdb.dwarf2/dw2-aranges.exp.

View File

@ -1,2 +1,2 @@
a409209e95cd717274431b2eaa77dac0 gdb-7.2.50.20110107.tar.bz2
04e5c4b1b9e633422cc48990fe61958d libstdc++-v3-python-r155978.tar.bz2 04e5c4b1b9e633422cc48990fe61958d libstdc++-v3-python-r155978.tar.bz2
3cecba20b0efd51e5acb937f3abd2014 gdb-7.2.50.20110117.tar.bz2