rpms/gdb/devel gdb-archer.patch, NONE, 1.1 .cvsignore, 1.30, 1.31 gdb-6.3-gstack-20050411.patch, 1.3, 1.4 gdb-6.3-ia64-gcore-speedup-20050714.patch, 1.3, 1.4 gdb-6.3-large-core-20051206.patch, 1.7, 1.8 gdb-6.3-pie-20050110.patch, 1.12, 1.13 gdb-6.3-readnever-20050907.patch, 1.3, 1.4 gdb-6.3-security-errata-20050610.patch, 1.6, 1.7 gdb-6.3-test-self-20050110.patch, 1.1, 1.2 gdb-6.5-bz185337-resolve-tls-without-debuginfo-v2.patch, 1.8, 1.9 gdb-6.6-buildid-locate.patch, 1.16, 1.17 gdb-6.6-step-thread-exit.patch, 1.3, 1.4 gdb-6.8-inlining-addon.patch, 1.3, 1.4 gdb-6.8-inlining.patch, 1.7, 1.8 gdb.spec, 1.323, 1.324 sources, 1.29, 1.30 gdb-6.6-buildid-readnever-silent.patch, 1.2, NONE gdb-6.8-bz377541-vla.patch, 1.5, NONE

Jan Kratochvil jkratoch at fedoraproject.org
Mon Mar 2 00:12:07 UTC 2009


Author: jkratoch

Update of /cvs/pkgs/rpms/gdb/devel
In directory cvs1.fedora.phx.redhat.com:/tmp/cvs-serv25900

Modified Files:
	.cvsignore gdb-6.3-gstack-20050411.patch 
	gdb-6.3-ia64-gcore-speedup-20050714.patch 
	gdb-6.3-large-core-20051206.patch gdb-6.3-pie-20050110.patch 
	gdb-6.3-readnever-20050907.patch 
	gdb-6.3-security-errata-20050610.patch 
	gdb-6.3-test-self-20050110.patch 
	gdb-6.5-bz185337-resolve-tls-without-debuginfo-v2.patch 
	gdb-6.6-buildid-locate.patch gdb-6.6-step-thread-exit.patch 
	gdb-6.8-inlining-addon.patch gdb-6.8-inlining.patch gdb.spec 
	sources 
Added Files:
	gdb-archer.patch 
Removed Files:
	gdb-6.6-buildid-readnever-silent.patch 
	gdb-6.8-bz377541-vla.patch 
Log Message:
Backup of a draft Archer port - before importing archer-keiths-expr-cumulative.


gdb-archer.patch:

--- NEW FILE gdb-archer.patch ---
diff --git a/gdb/Makefile.in b/gdb/Makefile.in
index af3f534..716884d 100644
--- a/gdb/Makefile.in
+++ b/gdb/Makefile.in
@@ -167,11 +167,16 @@ INTL_CFLAGS = @INCINTL@
 
 # Where is the ICONV library?  This can be empty if libc has iconv.
 LIBICONV = @LIBICONV@
+LIBICONV_INCLUDE = @LIBICONV_INCLUDE@
+LIBICONV_LIBDIR = @LIBICONV_LIBDIR@
 
 # Did the user give us a --with-sysroot option?
 TARGET_SYSTEM_ROOT = @TARGET_SYSTEM_ROOT@
 TARGET_SYSTEM_ROOT_DEFINE = @TARGET_SYSTEM_ROOT_DEFINE@
 
+# Did the user give us a --with-gdb-datadir option?
+GDB_DATADIR_PATH = @GDB_DATADIR_PATH@
+
 # Helper code from gnulib.
 LIBGNU = gnulib/libgnu.a
 INCGNU = -I$(srcdir)/gnulib -Ignulib
@@ -270,12 +275,34 @@ SUBDIR_TUI_CFLAGS= \
 #
 SUBDIR_PYTHON_OBS = \
 	python.o \
+	python-block.o \
+	python-breakpoint.o \
 	python-cmd.o \
+	python-frame.o \
+	python-function.o \
+	python-hooks.o \
+	python-membuf.o \
+	python-objfile.o \
+	python-param.o \
+	python-symbol.o \
+	python-symtab.o \
+	python-type.o \
 	python-utils.o \
 	python-value.o
 SUBDIR_PYTHON_SRCS = \
 	python/python.c \
+	python/python-block.c \
+	python/python-breakpoint.c \
 	python/python-cmd.c \
+	python/python-frame.c \
+	python/python-function.c \
+	python/python-hooks.c \
+	python/python-membuf.c \
+	python/python-objfile.c \
+	python/python-param.c \
+	python/python-symbol.c \
+	python/python-symtab.c \
+	python/python-type.c \
 	python/python-utils.c \
 	python/python-value.c
 SUBDIR_PYTHON_DEPS =
@@ -389,7 +416,8 @@ INTERNAL_CFLAGS_BASE = \
 	$(CFLAGS) $(GLOBAL_CFLAGS) $(PROFILE_CFLAGS) \
 	$(GDB_CFLAGS) $(OPCODES_CFLAGS) $(READLINE_CFLAGS) \
 	$(BFD_CFLAGS) $(INCLUDE_CFLAGS) $(LIBDECNUMBER_CFLAGS) \
-	$(INTL_CFLAGS) $(INCGNU) $(ENABLE_CFLAGS) $(INTERNAL_CPPFLAGS)
+	$(INTL_CFLAGS) $(INCGNU) $(ENABLE_CFLAGS) $(INTERNAL_CPPFLAGS) \
+	$(LIBICONV_INCLUDE)
 INTERNAL_WARN_CFLAGS = $(INTERNAL_CFLAGS_BASE) $(GDB_WARN_CFLAGS)
 INTERNAL_CFLAGS = $(INTERNAL_WARN_CFLAGS) $(GDB_WERROR_CFLAGS)
 
@@ -401,7 +429,7 @@ LDFLAGS = @LDFLAGS@
 # I think it's perfectly reasonable for a user to set -pg in CFLAGS
 # and have it work; that's why CFLAGS is here.
 # PROFILE_CFLAGS is _not_ included, however, because we use monstartup.
-INTERNAL_LDFLAGS = $(CFLAGS) $(GLOBAL_CFLAGS) $(MH_LDFLAGS) $(LDFLAGS) $(CONFIG_LDFLAGS)
+INTERNAL_LDFLAGS = $(CFLAGS) $(GLOBAL_CFLAGS) $(MH_LDFLAGS) $(LDFLAGS) $(CONFIG_LDFLAGS) $(LIBICONV_LIBDIR)
 
 # If your system is missing alloca(), or, more likely, it's there but
 # it doesn't work, then refer to libiberty.
@@ -662,6 +690,7 @@ SFILES = ada-exp.y ada-lang.c ada-typeprint.c ada-valprint.c ada-tasks.c \
 	valarith.c valops.c valprint.c value.c varobj.c vec.c \
 	wrapper.c \
 	xml-tdesc.c xml-support.c \
+	xml-syscall.c \
 	inferior.c
 
 LINTFILES = $(SFILES) $(YYFILES) $(CONFIG_SRCS) init.c
@@ -732,7 +761,8 @@ config/sparc/nm-sol2.h config/nm-linux.h config/mips/nm-irix5.h	\
 config/rs6000/nm-rs6000.h top.h bsd-kvm.h gdb-stabs.h reggroups.h \
 annotate.h sim-regno.h dictionary.h dfp.h main.h frame-unwind.h	\
 remote-fileio.h i386-linux-tdep.h vax-tdep.h objc-lang.h \
-sentinel-frame.h bcache.h symfile.h windows-tdep.h linux-tdep.h
+sentinel-frame.h bcache.h symfile.h windows-tdep.h linux-tdep.h xml-syscall.h \
+python/python.h python/python-internal.h
 
 # Header files that already have srcdir in them, or which are in objdir.
 
@@ -811,10 +841,16 @@ COMMON_OBS = $(DEPFILES) $(CONFIG_OBS) $(YYOBJ) \
 	trad-frame.o \
 	tramp-frame.o \
 	solib.o solib-null.o \
-	prologue-value.o memory-map.o xml-support.o \
+	prologue-value.o memory-map.o xml-support.o xml-syscall.o \
 	target-descriptions.o target-memory.o xml-tdesc.o xml-builtin.o \
 	inferior.o osdata.o
 
+# Definitions for the syscall's XML files and dir
+XML_SYSCALLS_DIR = syscalls/
+XML_SYSCALLS_FILES = gdb-syscalls.dtd \
+		     ppc-linux.xml ppc64-linux.xml \
+		     i386-linux.xml amd64-linux.xml
+
 TSOBS = inflow.o
 
 SUBDIRS = @subdirs@
@@ -848,11 +884,38 @@ generated_files = config.h observer.h observer.inc ada-lex.c \
 	$(COMPILE) $<
 	$(POSTCOMPILE)
 
-all: gdb$(EXEEXT) $(CONFIG_ALL)
+all: gdb$(EXEEXT) $(CONFIG_ALL) .gdbinit xml-syscall-copy
 	@$(MAKE) $(FLAGS_TO_PASS) DO=all "DODIRS=`echo $(SUBDIRS) | sed 's/testsuite//'`" subdir_do
 .PHONY: all-tui
 all-tui: $(TUI)$(EXEEXT)
 
+xml-syscall-copy:
+	if [ "`cd $(srcdir) && pwd`" != "`pwd`" ] ; then \
+	  mkdir -p ./$(XML_SYSCALLS_DIR) ; \
+	  list='$(XML_SYSCALLS_FILES)' ; \
+ 	  for file in $$list ; do \
+	    f=$(srcdir)/$(XML_SYSCALLS_DIR)/$$file ; \
+	    if test -f $$f ; then \
+	      $(INSTALL_DATA) $$f \
+	    	  ./$(XML_SYSCALLS_DIR) ; \
+	    fi ; \
+	  done ; \
+	fi ;
+
+# This target is responsible for properly installing the syscalls'
+# XML files in the system.
+xml-syscall-install:
+	$(SHELL) $(srcdir)/../mkinstalldirs \
+		$(DESTDIR)$(GDB_DATADIR_PATH)/$(XML_SYSCALLS_DIR) ; \
+	list='$(XML_SYSCALLS_FILES)' ; \
+	for file in $$list ; do \
+	  f=$(srcdir)/$(XML_SYSCALLS_DIR)/$$file ; \
+	  if test -f $$f ; then \
+	    $(INSTALL_DATA) $$f \
+	    	$(DESTDIR)$(GDB_DATADIR_PATH)/$(XML_SYSCALLS_DIR) ; \
+	  fi ; \
+	done ;
+
 installcheck:
 
 # The check target can not use subdir_do, because subdir_do does not
@@ -906,8 +969,11 @@ gdb.z:gdb.1
 # source file and doesn't care about rebuilding or just wants to save the
 # time it takes for make to check that all is up to date.
 # install-only is intended to address that need.
-install: all install-only
-install-only: $(CONFIG_INSTALL)
+install: all install-only 
+
+# The "install-only" target also installs the syscalls' XML files in
+# the system.
+install-only: $(CONFIG_INSTALL) xml-syscall-install
 	transformed_name=`t='$(program_transform_name)'; \
 			  echo gdb | sed -e "$$t"` ; \
 		if test "x$$transformed_name" = x; then \
@@ -1200,6 +1266,12 @@ stamp-h: config.in config.status
 	  CONFIG_LINKS= \
 	  $(SHELL) config.status
 
+.gdbinit: gdbinit.in config.status
+	CONFIG_FILES=".gdbinit:gdbinit.in" \
+	  CONFIG_COMMANDS= \
+	  CONFIG_HEADERS= \
+	  $(SHELL) config.status
+
 config.status: configure configure.tgt configure.host
 	$(SHELL) config.status --recheck
 
@@ -1843,10 +1915,54 @@ python.o: $(srcdir)/python/python.c
 	$(COMPILE) $(PYTHON_CFLAGS) $(srcdir)/python/python.c
 	$(POSTCOMPILE)
 
+python-block.o: $(srcdir)/python/python-block.c
+	$(COMPILE) $(PYTHON_CFLAGS) $(srcdir)/python/python-block.c
+	$(POSTCOMPILE)
+
+python-breakpoint.o: $(srcdir)/python/python-breakpoint.c
+	$(COMPILE) $(PYTHON_CFLAGS) $(srcdir)/python/python-breakpoint.c
+	$(POSTCOMPILE)
+
 python-cmd.o: $(srcdir)/python/python-cmd.c
 	$(COMPILE) $(PYTHON_CFLAGS) $(srcdir)/python/python-cmd.c
 	$(POSTCOMPILE)
 
+python-frame.o: $(srcdir)/python/python-frame.c
+	$(COMPILE) $(PYTHON_CFLAGS) $(srcdir)/python/python-frame.c
+	$(POSTCOMPILE)
+
+python-function.o: $(srcdir)/python/python-function.c
[...35180 lines suppressed...]
+static struct syscalls_info *
+syscall_parse_xml (const char *document, xml_fetch_another fetcher,
+                   void *fetcher_baton)
+{
+  struct cleanup *result_cleanup;
+  struct gdb_xml_parser *parser;
+  struct syscall_parsing_data data;
+  char *expanded_text;
+  int i;
+
+  parser = gdb_xml_create_parser_and_cleanup (_("syscalls info"),
+					      syselements, &data);
+
+  memset (&data, 0, sizeof (struct syscall_parsing_data));
+  data.sysinfo = allocate_syscalls_info ();
+  result_cleanup = make_cleanup_free_syscalls_info (data.sysinfo);
+
+  if (gdb_xml_parse (parser, document) == 0)
+    {
+      /* Parsed successfully.  */
+      discard_cleanups (result_cleanup);
+      return data.sysinfo;
+    }
+  else
+    {
+      warning (_("Could not load XML syscalls info; ignoring"));
+      do_cleanups (result_cleanup);
+      return NULL;
+    }
+}
+
+const struct syscalls_info *
+xml_init_syscalls_info (const char *filename)
+{
+  char *full_file;
+  char *dirname;
+  struct syscalls_info *sysinfo;
+  struct cleanup *back_to;
+
+  full_file = fetch_xml_from_file (filename, gdb_datadir);
+  if (full_file == NULL)
+    {
+      warning (_("Could not open \"%s\""), filename);
+      return NULL;
+    }
+
+  back_to = make_cleanup (xfree, full_file);
+
+  dirname = ldirname (filename);
+  if (dirname != NULL)
+    make_cleanup (xfree, dirname);
+
+  sysinfo = syscall_parse_xml (full_file, fetch_xml_from_file, dirname);
+  do_cleanups (back_to);
+
+  return sysinfo;
+}
+
+int
+xml_get_syscall_number (const struct syscalls_info *sysinfo,
+                        const char *syscall_name)
+{
+  struct syscall_desc *sysdesc;
+  int i;
+
+  if (sysinfo == NULL
+      || syscall_name == NULL)
+    return UNKNOWN_SYSCALL;
+
+  for (i = 0;
+       VEC_iterate(syscall_desc_p, sysinfo->syscalls, i, sysdesc);
+       i++)
+    if (strcmp (sysdesc->name, syscall_name) == 0)
+      return sysdesc->number;
+
+  return UNKNOWN_SYSCALL;
+}
+
+const char *
+xml_get_syscall_name (const struct syscalls_info *sysinfo,
+                      int syscall_number)
+{
+  struct syscall_desc *sysdesc;
+  int i;
+
+  if (sysinfo == NULL
+      || syscall_number < 0)
+    return NULL;
+
+  for (i = 0;
+       VEC_iterate(syscall_desc_p, sysinfo->syscalls, i, sysdesc);
+       i++)
+    if (sysdesc->number == syscall_number)
+      return sysdesc->name;
+
+  return NULL;
+}
+
+int
+xml_number_of_syscalls (const struct syscalls_info *sysinfo)
+{
+  return (sysinfo == NULL ? 0 : VEC_length(syscall_desc_p,
+                                           sysinfo->syscalls));
+}
+
+const char **
+xml_list_of_syscalls (const struct syscalls_info *sysinfo)
+{
+  struct syscall_desc *sysdesc;
+  const char **names = NULL;
+  int nsyscalls;
+  int i;
+
+  if (sysinfo == NULL)
+    return NULL;
+
+  nsyscalls = VEC_length (syscall_desc_p, sysinfo->syscalls);
+  names = xmalloc ((nsyscalls + 1) * sizeof (char *));
+
+  for (i = 0;
+       VEC_iterate (syscall_desc_p, sysinfo->syscalls, i, sysdesc);
+       i++)
+    names[i] = sysdesc->name;
+
+  names[i] = NULL;
+
+  return names;
+}
+
+#endif /* HAVE_LIBEXPAT */
diff --git a/gdb/xml-syscall.h b/gdb/xml-syscall.h
new file mode 100644
index 0000000..ff11f20
--- /dev/null
+++ b/gdb/xml-syscall.h
@@ -0,0 +1,64 @@
+/* Functions that provide the mechanism to parse a syscall XML file
+   and get its values.
+
+   Copyright (C) 1986, 1988, 1989, 1990, 1991, 1992, 1993, 1994, 1995, 1996,
+   1998, 1999, 2000, 2001, 2003, 2004, 2005, 2006, 2007, 2008
+   Free Software Foundation, Inc.
+
+   This file is part of GDB.
+
+   This program is free software; you can redistribute it and/or modify
+   it under the terms of the GNU General Public License as published by
+   the Free Software Foundation; either version 3 of the License, or
+   (at your option) any later version.
+
+   This program is distributed in the hope that it will be useful,
+   but WITHOUT ANY WARRANTY; without even the implied warranty of
+   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+   GNU General Public License for more details.
+
+   You should have received a copy of the GNU General Public License
+   along with this program.  If not, see <http://www.gnu.org/licenses/>.  */
+
+#ifndef XML_SYSCALL_H
+#define XML_SYSCALL_H 1
+
+/* Structure that stores information about the system's
+   syscalls.  */
+
+struct syscalls_info;
+
+
+/* Function responsible for initializing the information
+   about the syscalls.  It reads the XML file and fills the
+   struct syscalls_info with the values.
+   
+   Returns the struct syscalls_info if the file is valid, NULL otherwise.  */
+
+const struct syscalls_info *xml_init_syscalls_info (const char *);
+
+/* Function that retrieves the syscall number corresponding to the given
+   name.
+
+   Returns the syscall number if found, or  otherwise.  */
+
+int xml_get_syscall_number (const struct syscalls_info *, const char *);
+
+/* Function that retrieves the syscall name corresponding to the given
+   number.
+
+   Returns the syscall name if found, NULL otherwise.  */
+const char *xml_get_syscall_name (const struct syscalls_info *, int);
+
+/* Function that returns the number of syscalls defined in the system.
+
+   Returns the number of syscalls, or zero otherwise.  */
+int xml_number_of_syscalls (const struct syscalls_info *);
+
+/* Function used to retrieve the list of syscalls in the system.  This list
+   is returned as an array of strings.
+
+   Returns the list of syscalls in the system, or NULL otherwise.  */
+const char **xml_list_of_syscalls (const struct syscalls_info *sysinfo);
+
+#endif /* XML_SYSCALL_H */


Index: .cvsignore
===================================================================
RCS file: /cvs/pkgs/rpms/gdb/devel/.cvsignore,v
retrieving revision 1.30
retrieving revision 1.31
diff -u -r1.30 -r1.31
--- .cvsignore	11 Feb 2009 00:43:22 -0000	1.30
+++ .cvsignore	2 Mar 2009 00:11:34 -0000	1.31
@@ -1 +1 @@
-gdb-6.8.50.20090210.tar.bz2
+gdb-6.8.50.20090228.tar.bz2

gdb-6.3-gstack-20050411.patch:

Index: gdb-6.3-gstack-20050411.patch
===================================================================
RCS file: /cvs/pkgs/rpms/gdb/devel/gdb-6.3-gstack-20050411.patch,v
retrieving revision 1.3
retrieving revision 1.4
diff -u -r1.3 -r1.4
--- gdb-6.3-gstack-20050411.patch	14 Dec 2008 14:05:14 -0000	1.3
+++ gdb-6.3-gstack-20050411.patch	2 Mar 2009 00:11:34 -0000	1.4
@@ -4,20 +4,20 @@
 	to install and uninstall.
 	* gstack.sh, gstack.1: New files.
 
-Index: gdb-6.8.50.20081128/gdb/Makefile.in
+Index: gdb-6.8.50.20090226/gdb/Makefile.in
 ===================================================================
---- gdb-6.8.50.20081128.orig/gdb/Makefile.in	2008-12-01 16:11:48.000000000 +0100
-+++ gdb-6.8.50.20081128/gdb/Makefile.in	2008-12-01 16:14:11.000000000 +0100
-@@ -902,7 +902,7 @@ gdb.z:gdb.1
- # time it takes for make to check that all is up to date.
- # install-only is intended to address that need.
- install: all install-only
--install-only: $(CONFIG_INSTALL)
-+install-only: install-gstack $(CONFIG_INSTALL)
+--- gdb-6.8.50.20090226.orig/gdb/Makefile.in	2009-02-26 22:09:59.000000000 +0100
++++ gdb-6.8.50.20090226/gdb/Makefile.in	2009-02-26 22:10:22.000000000 +0100
+@@ -973,7 +973,7 @@ install: all install-only 
+ 
+ # The "install-only" target also installs the syscalls' XML files in
+ # the system.
+-install-only: $(CONFIG_INSTALL) xml-syscall-install
++install-only: install-gstack $(CONFIG_INSTALL) xml-syscall-install
  	transformed_name=`t='$(program_transform_name)'; \
  			  echo gdb | sed -e "$$t"` ; \
  		if test "x$$transformed_name" = x; then \
-@@ -934,9 +934,26 @@ install-tui:
+@@ -1005,9 +1005,26 @@ install-tui:
  			$(DESTDIR)$(man1dir) ; \
  		$(INSTALL_DATA) $(srcdir)/gdb.1 \
  			$(DESTDIR)$(man1dir)/$$transformed_name.1
@@ -45,7 +45,7 @@
  	transformed_name=`t='$(program_transform_name)'; \
  			  echo gdb | sed -e $$t` ; \
  		if test "x$$transformed_name" = x; then \
-@@ -958,6 +975,17 @@ uninstall-tui:
+@@ -1029,6 +1046,17 @@ uninstall-tui:
  		fi ; \
  		rm -f $(DESTDIR)$(bindir)/$$transformed_name$(EXEEXT) \
  		      $(DESTDIR)$(man1dir)/$$transformed_name.1
@@ -63,10 +63,10 @@
  
  # The C++ name parser can be built standalone for testing.
  test-cp-name-parser.o: cp-name-parser.c
-Index: gdb-6.8.50.20081128/gdb/gstack.sh
+Index: gdb-6.8.50.20090226/gdb/gstack.sh
 ===================================================================
 --- /dev/null	1970-01-01 00:00:00.000000000 +0000
-+++ gdb-6.8.50.20081128/gdb/gstack.sh	2008-12-01 16:13:16.000000000 +0100
++++ gdb-6.8.50.20090226/gdb/gstack.sh	2009-02-26 22:10:05.000000000 +0100
 @@ -0,0 +1,45 @@
 +#!/bin/sh
 +

gdb-6.3-ia64-gcore-speedup-20050714.patch:

Index: gdb-6.3-ia64-gcore-speedup-20050714.patch
===================================================================
RCS file: /cvs/pkgs/rpms/gdb/devel/gdb-6.3-ia64-gcore-speedup-20050714.patch,v
retrieving revision 1.3
retrieving revision 1.4
diff -u -r1.3 -r1.4
--- gdb-6.3-ia64-gcore-speedup-20050714.patch	14 Dec 2008 14:05:14 -0000	1.3
+++ gdb-6.3-ia64-gcore-speedup-20050714.patch	2 Mar 2009 00:11:34 -0000	1.4
@@ -7,22 +7,11 @@
 	(ia64_rse_skip_regs): Ditto.
 	(ia64_linux_check_stack_region): New function.
 	
-Index: gdb-6.8.50.20081209/gdb/linux-nat.c
+Index: gdb-6.8.50.20090226/gdb/linux-nat.c
 ===================================================================
---- gdb-6.8.50.20081209.orig/gdb/linux-nat.c	2008-12-10 01:25:43.000000000 +0100
-+++ gdb-6.8.50.20081209/gdb/linux-nat.c	2008-12-10 01:27:09.000000000 +0100
-@@ -3246,7 +3246,9 @@ linux_nat_xfer_partial (struct target_op
-   do_cleanups (old_chain);
-   return xfer;
- }
--
-+#ifdef NATIVE_XFER_UNWIND_TABLE
-+extern int ia64_linux_check_stack_region(struct lwp_info *lwp, void *range);
-+#endif
- static int
- linux_nat_thread_alive (ptid_t ptid)
- {
-@@ -4148,15 +4150,34 @@ linux_xfer_partial (struct target_ops *o
+--- gdb-6.8.50.20090226.orig/gdb/linux-nat.c	2009-02-27 07:51:44.000000000 +0100
++++ gdb-6.8.50.20090226/gdb/linux-nat.c	2009-02-28 07:19:05.000000000 +0100
+@@ -4386,15 +4386,38 @@ linux_xfer_partial (struct target_ops *o
      return linux_nat_xfer_osdata (ops, object, annex, readbuf, writebuf,
                                 offset, len);
  
@@ -43,6 +32,10 @@
 +      /* FIXME: For ia64, we cannot currently use
 +	 linux_proc_xfer_partial for accessing rse register storage.
 +	 Revert when Bugzilla 147436 is fixed.  */
++#ifdef NATIVE_XFER_UNWIND_TABLE
++      extern int ia64_linux_check_stack_region (struct lwp_info *lwp,
++						void *range);
++#endif
 +      if (iterate_over_lwps (ia64_linux_check_stack_region, &range) != NULL)
 +	{ /* This region contains ia64 rse registers, we have to re-read.  */
 +	  int xxfer;
@@ -62,11 +55,11 @@
  
    return super_xfer_partial (ops, object, annex, readbuf, writebuf,
  			     offset, len);
-Index: gdb-6.8.50.20081209/gdb/ia64-linux-nat.c
+Index: gdb-6.8.50.20090226/gdb/ia64-linux-nat.c
 ===================================================================
---- gdb-6.8.50.20081209.orig/gdb/ia64-linux-nat.c	2008-08-15 10:08:27.000000000 +0200
-+++ gdb-6.8.50.20081209/gdb/ia64-linux-nat.c	2008-12-10 01:25:53.000000000 +0100
-@@ -807,6 +807,64 @@ ia64_linux_xfer_partial (struct target_o
+--- gdb-6.8.50.20090226.orig/gdb/ia64-linux-nat.c	2009-02-23 01:03:49.000000000 +0100
++++ gdb-6.8.50.20090226/gdb/ia64-linux-nat.c	2009-02-28 07:18:10.000000000 +0100
+@@ -809,6 +809,64 @@ ia64_linux_xfer_partial (struct target_o
  
  void _initialize_ia64_linux_nat (void);
  

gdb-6.3-large-core-20051206.patch:

Index: gdb-6.3-large-core-20051206.patch
===================================================================
RCS file: /cvs/pkgs/rpms/gdb/devel/gdb-6.3-large-core-20051206.patch,v
retrieving revision 1.7
retrieving revision 1.8
diff -u -r1.7 -r1.8
--- gdb-6.3-large-core-20051206.patch	11 Feb 2009 00:04:47 -0000	1.7
+++ gdb-6.3-large-core-20051206.patch	2 Mar 2009 00:11:34 -0000	1.8
@@ -25,10 +25,10 @@
 
 	Port to GDB-6.7.
 
-Index: gdb-6.8.50.20090209/gdb/symfile-mem.c
+Index: gdb-6.8.50.20090226/gdb/symfile-mem.c
 ===================================================================
---- gdb-6.8.50.20090209.orig/gdb/symfile-mem.c	2009-01-03 06:57:53.000000000 +0100
-+++ gdb-6.8.50.20090209/gdb/symfile-mem.c	2009-02-09 15:49:25.000000000 +0100
+--- gdb-6.8.50.20090226.orig/gdb/symfile-mem.c	2009-02-21 17:14:49.000000000 +0100
++++ gdb-6.8.50.20090226/gdb/symfile-mem.c	2009-02-28 07:22:09.000000000 +0100
 @@ -56,6 +56,14 @@
  #include "elf/common.h"
  
@@ -53,10 +53,10 @@
    if (nbfd == NULL)
      error (_("Failed to read a valid object file image from memory."));
  
-Index: gdb-6.8.50.20090209/gdb/target.c
+Index: gdb-6.8.50.20090226/gdb/target.c
 ===================================================================
---- gdb-6.8.50.20090209.orig/gdb/target.c	2009-02-06 23:21:26.000000000 +0100
-+++ gdb-6.8.50.20090209/gdb/target.c	2009-02-09 15:50:39.000000000 +0100
+--- gdb-6.8.50.20090226.orig/gdb/target.c	2009-02-27 00:04:32.000000000 +0100
++++ gdb-6.8.50.20090226/gdb/target.c	2009-02-28 07:22:09.000000000 +0100
 @@ -57,7 +57,7 @@ static int nosymbol (char *, CORE_ADDR *
  
  static void tcomplain (void) ATTR_NORETURN;
@@ -66,7 +66,7 @@
  
  static int return_zero (void);
  
-@@ -294,7 +294,7 @@ target_create_inferior (char *exec_file,
+@@ -286,7 +286,7 @@ target_create_inferior (char *exec_file,
  }
  
  
@@ -75,7 +75,7 @@
  nomemory (CORE_ADDR memaddr, char *myaddr, int len, int write,
  	  struct target_ops *t)
  {
-@@ -522,7 +522,7 @@ update_current_target (void)
+@@ -507,7 +507,7 @@ update_current_target (void)
  	    (void (*) (struct regcache *))
  	    noprocess);
    de_fault (deprecated_xfer_memory,
@@ -84,7 +84,7 @@
  	    nomemory);
    de_fault (to_files_info,
  	    (void (*) (struct target_ops *))
-@@ -1252,7 +1252,7 @@ target_xfer_partial (struct target_ops *
+@@ -1237,7 +1237,7 @@ target_xfer_partial (struct target_ops *
     it makes no progress, and then return how much was transferred). */
  
  int
@@ -93,7 +93,7 @@
  {
    if (target_read (&current_target, TARGET_OBJECT_MEMORY, NULL,
  		   myaddr, memaddr, len) == len)
-@@ -1262,7 +1262,7 @@ target_read_memory (CORE_ADDR memaddr, g
+@@ -1247,7 +1247,7 @@ target_read_memory (CORE_ADDR memaddr, g
  }
  
  int
@@ -102,7 +102,7 @@
  {
    if (target_write (&current_target, TARGET_OBJECT_MEMORY, NULL,
  		    myaddr, memaddr, len) == len)
-@@ -2723,8 +2723,8 @@ debug_to_prepare_to_store (struct regcac
+@@ -2777,8 +2777,8 @@ debug_to_prepare_to_store (struct regcac
    fprintf_unfiltered (gdb_stdlog, "target_prepare_to_store ()\n");
  }
  
@@ -113,7 +113,7 @@
  			      int write, struct mem_attrib *attrib,
  			      struct target_ops *target)
  {
-@@ -2734,8 +2734,8 @@ deprecated_debug_xfer_memory (CORE_ADDR 
+@@ -2788,8 +2788,8 @@ deprecated_debug_xfer_memory (CORE_ADDR 
  						attrib, target);
  
    fprintf_unfiltered (gdb_stdlog,
@@ -124,11 +124,11 @@
                        retval);
  
    if (retval > 0)
-Index: gdb-6.8.50.20090209/gdb/target.h
+Index: gdb-6.8.50.20090226/gdb/target.h
 ===================================================================
---- gdb-6.8.50.20090209.orig/gdb/target.h	2009-02-06 23:59:01.000000000 +0100
-+++ gdb-6.8.50.20090209/gdb/target.h	2009-02-09 15:49:25.000000000 +0100
-@@ -360,10 +360,10 @@ struct target_ops
+--- gdb-6.8.50.20090226.orig/gdb/target.h	2009-02-27 00:04:32.000000000 +0100
++++ gdb-6.8.50.20090226/gdb/target.h	2009-02-28 07:22:09.000000000 +0100
+@@ -376,10 +376,10 @@ struct target_ops
         NOTE: cagney/2004-10-01: This has been entirely superseeded by
         to_xfer_partial and inferior inheritance.  */
  
@@ -143,7 +143,7 @@
  
      void (*to_files_info) (struct target_ops *);
      int (*to_insert_breakpoint) (struct bp_target_info *);
-@@ -663,13 +663,14 @@ extern DCACHE *target_dcache;
+@@ -679,13 +679,14 @@ extern DCACHE *target_dcache;
  
  extern int target_read_string (CORE_ADDR, char **, int, int *);
  
@@ -162,10 +162,10 @@
  
  /* Fetches the target's memory map.  If one is found it is sorted
     and returned, after some consistency checking.  Otherwise, NULL
-Index: gdb-6.8.50.20090209/gdb/dcache.c
+Index: gdb-6.8.50.20090226/gdb/dcache.c
 ===================================================================
---- gdb-6.8.50.20090209.orig/gdb/dcache.c	2009-01-03 06:57:51.000000000 +0100
-+++ gdb-6.8.50.20090209/gdb/dcache.c	2009-02-09 15:49:25.000000000 +0100
+--- gdb-6.8.50.20090226.orig/gdb/dcache.c	2009-01-03 06:57:51.000000000 +0100
++++ gdb-6.8.50.20090226/gdb/dcache.c	2009-02-28 07:22:09.000000000 +0100
 @@ -524,9 +524,9 @@ dcache_free (DCACHE *dcache)
  
     This routine is indended to be called by remote_xfer_ functions. */
@@ -178,10 +178,10 @@
  {
    int i;
    int (*xfunc) (DCACHE *dcache, CORE_ADDR addr, gdb_byte *ptr);
-Index: gdb-6.8.50.20090209/gdb/dcache.h
+Index: gdb-6.8.50.20090226/gdb/dcache.h
 ===================================================================
---- gdb-6.8.50.20090209.orig/gdb/dcache.h	2009-01-03 06:57:51.000000000 +0100
-+++ gdb-6.8.50.20090209/gdb/dcache.h	2009-02-09 15:49:25.000000000 +0100
+--- gdb-6.8.50.20090226.orig/gdb/dcache.h	2009-01-03 06:57:51.000000000 +0100
++++ gdb-6.8.50.20090226/gdb/dcache.h	2009-02-28 07:22:09.000000000 +0100
 @@ -35,7 +35,7 @@ void dcache_free (DCACHE *);
  
  /* Simple to call from <remote>_xfer_memory */
@@ -192,11 +192,11 @@
 +			    LONGEST len, int should_write);
  
  #endif /* DCACHE_H */
-Index: gdb-6.8.50.20090209/gdb/exec.c
+Index: gdb-6.8.50.20090226/gdb/exec.c
 ===================================================================
---- gdb-6.8.50.20090209.orig/gdb/exec.c	2009-01-08 17:32:29.000000000 +0100
-+++ gdb-6.8.50.20090209/gdb/exec.c	2009-02-09 15:49:25.000000000 +0100
-@@ -466,8 +466,8 @@ map_vmap (bfd *abfd, bfd *arch)
+--- gdb-6.8.50.20090226.orig/gdb/exec.c	2009-02-22 20:35:47.000000000 +0100
++++ gdb-6.8.50.20090226/gdb/exec.c	2009-02-28 07:22:09.000000000 +0100
+@@ -464,8 +464,8 @@ map_vmap (bfd *abfd, bfd *arch)
     The same routine is used to handle both core and exec files;
     we just tail-call it with more arguments to select between them.  */
  
@@ -207,12 +207,12 @@
  	     struct mem_attrib *attrib, struct target_ops *target)
  {
    int res;
-Index: gdb-6.8.50.20090209/gdb/linux-nat.c
+Index: gdb-6.8.50.20090226/gdb/linux-nat.c
 ===================================================================
---- gdb-6.8.50.20090209.orig/gdb/linux-nat.c	2009-02-09 15:48:46.000000000 +0100
-+++ gdb-6.8.50.20090209/gdb/linux-nat.c	2009-02-09 15:49:25.000000000 +0100
-@@ -4283,7 +4283,7 @@ linux_xfer_partial (struct target_ops *o
- 	 Revert when Bugzilla 147436 is fixed.  */
+--- gdb-6.8.50.20090226.orig/gdb/linux-nat.c	2009-02-28 07:22:02.000000000 +0100
++++ gdb-6.8.50.20090226/gdb/linux-nat.c	2009-02-28 07:22:32.000000000 +0100
+@@ -4407,7 +4407,7 @@ linux_xfer_partial (struct target_ops *o
+ #endif
        if (iterate_over_lwps (ia64_linux_check_stack_region, &range) != NULL)
  	{ /* This region contains ia64 rse registers, we have to re-read.  */
 -	  int xxfer;
@@ -220,10 +220,10 @@
  
  	  /* Re-read register stack area.  */
  	  xxfer = super_xfer_partial (ops, object, annex,
-Index: gdb-6.8.50.20090209/gdb/remote.c
+Index: gdb-6.8.50.20090226/gdb/remote.c
 ===================================================================
---- gdb-6.8.50.20090209.orig/gdb/remote.c	2009-02-06 23:59:00.000000000 +0100
-+++ gdb-6.8.50.20090209/gdb/remote.c	2009-02-09 15:49:25.000000000 +0100
+--- gdb-6.8.50.20090226.orig/gdb/remote.c	2009-02-25 03:14:22.000000000 +0100
++++ gdb-6.8.50.20090226/gdb/remote.c	2009-02-28 07:22:09.000000000 +0100
 @@ -25,6 +25,7 @@
  #include "gdb_string.h"
  #include <ctype.h>
@@ -232,7 +232,7 @@
  #include "inferior.h"
  #include "bfd.h"
  #include "symfile.h"
-@@ -5688,12 +5689,19 @@ handle_notification (char *buf, size_t l
+@@ -5683,12 +5684,19 @@ handle_notification (char *buf, size_t l
     if SHOULD_WRITE is nonzero.  Returns length of data written or
     read; 0 for error.  TARGET is unused.  */
  
@@ -254,7 +254,7 @@
  
    set_general_thread (inferior_ptid);
  
-@@ -5702,7 +5710,7 @@ remote_xfer_memory (CORE_ADDR mem_addr, 
+@@ -5697,7 +5705,7 @@ remote_xfer_memory (CORE_ADDR mem_addr, 
    else
      res = remote_read_bytes (mem_addr, buffer, mem_len);
  
@@ -263,11 +263,11 @@
  }
  
  /* Sends a packet with content determined by the printf format string
-Index: gdb-6.8.50.20090209/gdb/remote-sim.c
+Index: gdb-6.8.50.20090226/gdb/remote-sim.c
 ===================================================================
---- gdb-6.8.50.20090209.orig/gdb/remote-sim.c	2009-02-06 23:21:26.000000000 +0100
-+++ gdb-6.8.50.20090209/gdb/remote-sim.c	2009-02-09 15:49:25.000000000 +0100
-@@ -757,11 +757,14 @@ gdbsim_prepare_to_store (struct regcache
+--- gdb-6.8.50.20090226.orig/gdb/remote-sim.c	2009-02-23 19:31:23.000000000 +0100
++++ gdb-6.8.50.20090226/gdb/remote-sim.c	2009-02-28 07:22:09.000000000 +0100
+@@ -754,11 +754,14 @@ gdbsim_prepare_to_store (struct regcache
  
     Returns the number of bytes transferred. */
  
@@ -284,7 +284,7 @@
    /* If no program is running yet, then ignore the simulator for
       memory.  Pass the request down to the next target, hopefully
       an exec file.  */
-@@ -777,22 +780,22 @@ gdbsim_xfer_inferior_memory (CORE_ADDR m
+@@ -774,22 +777,22 @@ gdbsim_xfer_inferior_memory (CORE_ADDR m
        printf_filtered ("gdbsim_xfer_inferior_memory: myaddr 0x");
        gdb_print_host_address (myaddr, gdb_stdout);
        printf_filtered (", memaddr 0x%s, len %d, write %d\n",

gdb-6.3-pie-20050110.patch:

Index: gdb-6.3-pie-20050110.patch
===================================================================
RCS file: /cvs/pkgs/rpms/gdb/devel/gdb-6.3-pie-20050110.patch,v
retrieving revision 1.12
retrieving revision 1.13
diff -u -r1.12 -r1.13
--- gdb-6.3-pie-20050110.patch	11 Feb 2009 00:04:47 -0000	1.12
+++ gdb-6.3-pie-20050110.patch	2 Mar 2009 00:11:34 -0000	1.13
@@ -26,10 +26,10 @@
 
 	Fix scan_dyntag() for binaries provided by valgrind (BZ 460319).
 
-Index: gdb-6.8.50.20090209/gdb/amd64-tdep.c
+Index: gdb-6.8.50.20090226/gdb/amd64-tdep.c
 ===================================================================
---- gdb-6.8.50.20090209.orig/gdb/amd64-tdep.c	2009-02-09 16:02:28.000000000 +0100
-+++ gdb-6.8.50.20090209/gdb/amd64-tdep.c	2009-02-09 16:21:55.000000000 +0100
+--- gdb-6.8.50.20090226.orig/gdb/amd64-tdep.c	2009-02-28 07:31:48.000000000 +0100
++++ gdb-6.8.50.20090226/gdb/amd64-tdep.c	2009-02-28 07:38:59.000000000 +0100
 @@ -36,6 +36,7 @@
  #include "regcache.h"
  #include "regset.h"
@@ -38,7 +38,7 @@
  
  #include "gdb_assert.h"
  
-@@ -1597,16 +1598,28 @@ amd64_analyze_stack_align (CORE_ADDR pc,
+@@ -1586,16 +1587,28 @@ amd64_analyze_stack_align (CORE_ADDR pc,
     Any function that doesn't start with this sequence will be assumed
     to have no prologue and thus no valid frame pointer in %rbp.  */
  
@@ -71,7 +71,7 @@
  
    pc = amd64_analyze_stack_align (pc, current_pc, cache);
  
-@@ -1621,18 +1634,57 @@ amd64_analyze_prologue (CORE_ADDR pc, CO
+@@ -1610,18 +1623,57 @@ amd64_analyze_prologue (CORE_ADDR pc, CO
  
        /* If that's all, return now.  */
        if (current_pc <= pc + 1)
@@ -132,13 +132,13 @@
    return pc;
  }
  
-Index: gdb-6.8.50.20090209/gdb/auxv.c
+Index: gdb-6.8.50.20090226/gdb/auxv.c
 ===================================================================
---- gdb-6.8.50.20090209.orig/gdb/auxv.c	2009-01-03 06:57:50.000000000 +0100
-+++ gdb-6.8.50.20090209/gdb/auxv.c	2009-02-09 16:21:55.000000000 +0100
+--- gdb-6.8.50.20090226.orig/gdb/auxv.c	2009-02-27 00:04:32.000000000 +0100
++++ gdb-6.8.50.20090226/gdb/auxv.c	2009-02-28 07:40:35.000000000 +0100
 @@ -81,7 +81,7 @@ procfs_xfer_auxv (struct target_ops *ops
     Return 1 if an entry was read into *TYPEP and *VALP.  */
- int
+ static int
  default_auxv_parse (struct target_ops *ops, gdb_byte **readptr,
 -		   gdb_byte *endptr, CORE_ADDR *typep, CORE_ADDR *valp)
 +		   gdb_byte *endptr, ULONGEST *typep, CORE_ADDR *valp)
@@ -215,7 +215,7 @@
        switch (flavor)
  	{
  	case dec:
-@@ -253,7 +255,7 @@ fprint_target_auxv (struct ui_file *file
+@@ -254,7 +256,7 @@ fprint_target_auxv (struct ui_file *file
  	  break;
  	}
        ++ents;
@@ -224,10 +224,10 @@
  	break;
      }
  
-Index: gdb-6.8.50.20090209/gdb/auxv.h
+Index: gdb-6.8.50.20090226/gdb/auxv.h
 ===================================================================
---- gdb-6.8.50.20090209.orig/gdb/auxv.h	2009-01-03 06:57:50.000000000 +0100
-+++ gdb-6.8.50.20090209/gdb/auxv.h	2009-02-09 16:21:55.000000000 +0100
+--- gdb-6.8.50.20090226.orig/gdb/auxv.h	2009-01-03 06:57:50.000000000 +0100
++++ gdb-6.8.50.20090226/gdb/auxv.h	2009-02-28 07:38:59.000000000 +0100
 @@ -36,14 +36,14 @@ struct target_ops;		/* Forward declarati
     Return 1 if an entry was read into *TYPEP and *VALP.  */
  extern int target_auxv_parse (struct target_ops *ops,
@@ -245,11 +245,11 @@
  
  /* Print the contents of the target's AUXV on the specified file. */
  extern int fprint_target_auxv (struct ui_file *file, struct target_ops *ops);
-Index: gdb-6.8.50.20090209/gdb/breakpoint.c
+Index: gdb-6.8.50.20090226/gdb/breakpoint.c
 ===================================================================
---- gdb-6.8.50.20090209.orig/gdb/breakpoint.c	2009-02-09 16:12:23.000000000 +0100
-+++ gdb-6.8.50.20090209/gdb/breakpoint.c	2009-02-09 16:21:55.000000000 +0100
-@@ -3894,7 +3894,8 @@ describe_other_breakpoints (CORE_ADDR pc
+--- gdb-6.8.50.20090226.orig/gdb/breakpoint.c	2009-02-28 07:38:47.000000000 +0100
++++ gdb-6.8.50.20090226/gdb/breakpoint.c	2009-02-28 07:38:59.000000000 +0100
+@@ -3920,7 +3920,8 @@ describe_other_breakpoints (CORE_ADDR pc
  	      printf_filtered (" (thread %d)", b->thread);
  	    printf_filtered ("%s%s ",
  			     ((b->enable_state == bp_disabled || 
@@ -259,7 +259,7 @@
  			      ? " (disabled)"
  			      : b->enable_state == bp_permanent 
  			      ? " (permanent)"
-@@ -4725,6 +4726,61 @@ create_catchpoint (int tempflag, char *c
+@@ -5008,6 +5009,61 @@ create_catchpoint (int tempflag, char *c
    return b;
  }
  
@@ -321,11 +321,11 @@
  static void
  create_fork_vfork_event_catchpoint (int tempflag, char *cond_string,
                                      struct breakpoint_ops *ops)
-Index: gdb-6.8.50.20090209/gdb/breakpoint.h
+Index: gdb-6.8.50.20090226/gdb/breakpoint.h
 ===================================================================
---- gdb-6.8.50.20090209.orig/gdb/breakpoint.h	2009-01-30 19:28:00.000000000 +0100
-+++ gdb-6.8.50.20090209/gdb/breakpoint.h	2009-02-09 16:21:55.000000000 +0100
-@@ -126,6 +126,7 @@ enum enable_state
+--- gdb-6.8.50.20090226.orig/gdb/breakpoint.h	2009-02-27 00:04:32.000000000 +0100
++++ gdb-6.8.50.20090226/gdb/breakpoint.h	2009-02-28 07:38:59.000000000 +0100
+@@ -127,6 +127,7 @@ enum enable_state
  			   automatically enabled and reset when the call 
  			   "lands" (either completes, or stops at another 
  			   eventpoint). */
@@ -333,7 +333,7 @@
      bp_permanent	/* There is a breakpoint instruction hard-wired into
  			   the target's code.  Don't try to write another
  			   breakpoint instruction on top of it, or restore
-@@ -819,6 +820,10 @@ extern void remove_thread_event_breakpoi
+@@ -847,6 +848,10 @@ extern void remove_thread_event_breakpoi
  
  extern void disable_breakpoints_in_shlibs (void);
  
@@ -344,11 +344,11 @@
  /* This function returns TRUE if ep is a catchpoint. */
  extern int ep_is_catchpoint (struct breakpoint *);
  
-Index: gdb-6.8.50.20090209/gdb/dwarf2read.c
+Index: gdb-6.8.50.20090226/gdb/dwarf2read.c
 ===================================================================
---- gdb-6.8.50.20090209.orig/gdb/dwarf2read.c	2009-02-09 16:12:23.000000000 +0100
-+++ gdb-6.8.50.20090209/gdb/dwarf2read.c	2009-02-09 16:21:55.000000000 +0100
-@@ -1296,7 +1296,7 @@ dwarf2_build_psymtabs (struct objfile *o
+--- gdb-6.8.50.20090226.orig/gdb/dwarf2read.c	2009-02-28 07:38:48.000000000 +0100
++++ gdb-6.8.50.20090226/gdb/dwarf2read.c	2009-02-28 07:38:59.000000000 +0100
+@@ -1421,7 +1421,7 @@ dwarf2_build_psymtabs (struct objfile *o
    else
      dwarf2_per_objfile->loc_buffer = NULL;
  
@@ -357,10 +357,10 @@
        || (objfile->global_psymbols.size == 0
  	  && objfile->static_psymbols.size == 0))
      {
-Index: gdb-6.8.50.20090209/gdb/elfread.c
+Index: gdb-6.8.50.20090226/gdb/elfread.c
 ===================================================================
---- gdb-6.8.50.20090209.orig/gdb/elfread.c	2009-01-03 06:57:51.000000000 +0100
-+++ gdb-6.8.50.20090209/gdb/elfread.c	2009-02-09 16:21:55.000000000 +0100
+--- gdb-6.8.50.20090226.orig/gdb/elfread.c	2009-02-27 00:04:32.000000000 +0100
++++ gdb-6.8.50.20090226/gdb/elfread.c	2009-02-28 07:38:59.000000000 +0100
 @@ -680,7 +680,7 @@ elf_symfile_read (struct objfile *objfil
    /* If we are reinitializing, or if we have never loaded syms yet,
       set table to empty.  MAINLINE is cleared so that *_read_psymtab
@@ -370,11 +370,11 @@
      {
        init_psymbol_list (objfile, 0);
        mainline = 0;
-Index: gdb-6.8.50.20090209/gdb/infrun.c
+Index: gdb-6.8.50.20090226/gdb/infrun.c
 ===================================================================
---- gdb-6.8.50.20090209.orig/gdb/infrun.c	2009-02-09 16:12:23.000000000 +0100
-+++ gdb-6.8.50.20090209/gdb/infrun.c	2009-02-09 16:21:55.000000000 +0100
-@@ -3278,6 +3278,11 @@ infrun: BPSTAT_WHAT_SET_LONGJMP_RESUME (
+--- gdb-6.8.50.20090226.orig/gdb/infrun.c	2009-02-28 07:37:54.000000000 +0100
++++ gdb-6.8.50.20090226/gdb/infrun.c	2009-02-28 07:38:59.000000000 +0100
+@@ -3328,6 +3328,11 @@ infrun: BPSTAT_WHAT_SET_LONGJMP_RESUME (
  #endif
  	  target_terminal_inferior ();
  
@@ -386,10 +386,10 @@
  	  /* If requested, stop when the dynamic linker notifies
  	     gdb of events.  This allows the user to get control
  	     and place breakpoints in initializer routines for
-Index: gdb-6.8.50.20090209/gdb/objfiles.c
+Index: gdb-6.8.50.20090226/gdb/objfiles.c
 ===================================================================
---- gdb-6.8.50.20090209.orig/gdb/objfiles.c	2009-01-15 17:35:22.000000000 +0100
-+++ gdb-6.8.50.20090209/gdb/objfiles.c	2009-02-09 16:21:55.000000000 +0100
+--- gdb-6.8.50.20090226.orig/gdb/objfiles.c	2009-02-27 00:04:32.000000000 +0100
++++ gdb-6.8.50.20090226/gdb/objfiles.c	2009-02-28 07:38:59.000000000 +0100
 @@ -51,6 +51,9 @@
  #include "arch-utils.h"
  #include "exec.h"
@@ -421,7 +421,7 @@
  }
  
  /* Create the terminating entry of OBJFILE's minimal symbol table.
-@@ -458,6 +458,9 @@ free_objfile (struct objfile *objfile)
+@@ -443,6 +458,9 @@ free_objfile (struct objfile *objfile)
    if (objfile == rt_common_objfile)
      rt_common_objfile = NULL;
  
@@ -431,10 +431,10 @@
    /* Before the symbol table code was redone to make it easier to
       selectively load and remove information particular to a specific
       linkage unit, gdb used to do these things whenever the monolithic
-Index: gdb-6.8.50.20090209/gdb/solib-svr4.c
+Index: gdb-6.8.50.20090226/gdb/solib-svr4.c
 ===================================================================
---- gdb-6.8.50.20090209.orig/gdb/solib-svr4.c	2009-02-09 16:02:35.000000000 +0100
-+++ gdb-6.8.50.20090209/gdb/solib-svr4.c	2009-02-09 16:21:55.000000000 +0100
+--- gdb-6.8.50.20090226.orig/gdb/solib-svr4.c	2009-02-28 07:31:58.000000000 +0100
++++ gdb-6.8.50.20090226/gdb/solib-svr4.c	2009-02-28 07:38:59.000000000 +0100
 @@ -45,6 +45,7 @@
  #include "exec.h"
  #include "auxv.h"
@@ -1116,11 +1116,11 @@
 +  add_info ("linkmap", info_linkmap_command,
 +	    "Display the inferior's linkmap.");
  }
-Index: gdb-6.8.50.20090209/gdb/solib.c
+Index: gdb-6.8.50.20090226/gdb/solib.c
 ===================================================================
---- gdb-6.8.50.20090209.orig/gdb/solib.c	2009-01-15 17:35:22.000000000 +0100
-+++ gdb-6.8.50.20090209/gdb/solib.c	2009-02-09 16:26:02.000000000 +0100
-@@ -80,6 +80,8 @@ set_solib_ops (struct gdbarch *gdbarch, 
+--- gdb-6.8.50.20090226.orig/gdb/solib.c	2009-02-21 17:14:49.000000000 +0100
++++ gdb-6.8.50.20090226/gdb/solib.c	2009-02-28 07:38:59.000000000 +0100
+@@ -81,6 +81,8 @@ set_solib_ops (struct gdbarch *gdbarch, 
  
  /* external data declarations */
  
@@ -1129,7 +1129,7 @@
  /* FIXME: gdbarch needs to control this variable, or else every
     configuration needs to call set_solib_ops.  */
  struct target_so_ops *current_target_so_ops;
-@@ -103,6 +105,8 @@ The search path for loading non-absolute
+@@ -104,6 +106,8 @@ The search path for loading non-absolute
  		    value);
  }
  
@@ -1138,7 +1138,7 @@
  /*
  
     GLOBAL FUNCTION
-@@ -425,10 +429,23 @@ free_so (struct so_list *so)
+@@ -426,10 +430,23 @@ free_so (struct so_list *so)
        
    if (so->abfd)
      {
@@ -1166,7 +1166,7 @@
      }
  
    if (bfd_filename)
-@@ -459,15 +461,40 @@ symbol_add_stub (void *arg)
+@@ -460,15 +477,40 @@ symbol_add_stub (void *arg)
    /* Have we already loaded this shared object?  */
    ALL_OBJFILES (so->objfile)
      {
@@ -1210,7 +1210,7 @@
    free_section_addr_info (sap);
  
    return (1);
-@@ -599,6 +626,10 @@ update_solib_list (int from_tty, struct 
+@@ -600,6 +642,10 @@ update_solib_list (int from_tty, struct 
  	    }
  	  else
  	    {
@@ -1221,7 +1221,7 @@
  	      if (! strcmp (gdb->so_original_name, i->so_original_name))
  		break;	      
  	    }
-@@ -653,28 +684,7 @@ update_solib_list (int from_tty, struct 
+@@ -654,28 +700,7 @@ update_solib_list (int from_tty, struct 
        /* Fill in the rest of each of the `struct so_list' nodes.  */
        for (i = inferior; i; i = i->next)
  	{
@@ -1251,7 +1251,7 @@
  
  	  /* Notify any observer that the shared object has been
               loaded now that we've added it to GDB's tables.  */
-@@ -770,6 +780,41 @@ solib_add (char *pattern, int from_tty, 
+@@ -771,6 +796,41 @@ solib_add (char *pattern, int from_tty, 
    }
  }
  
@@ -1293,7 +1293,7 @@
  
  /*
  
-@@ -1087,4 +1132,12 @@ This takes precedence over the environme
+@@ -1089,4 +1149,12 @@ This takes precedence over the environme
  				     reload_shared_libraries,
  				     show_solib_search_path,
  				     &setlist, &showlist);
@@ -1306,10 +1306,10 @@
 +			   NULL, NULL,
 +			   &setdebuglist, &showdebuglist);
  }
-Index: gdb-6.8.50.20090209/gdb/solist.h
+Index: gdb-6.8.50.20090226/gdb/solist.h
 ===================================================================
---- gdb-6.8.50.20090209.orig/gdb/solist.h	2009-02-04 09:42:11.000000000 +0100
-+++ gdb-6.8.50.20090209/gdb/solist.h	2009-02-09 16:21:55.000000000 +0100
+--- gdb-6.8.50.20090226.orig/gdb/solist.h	2009-02-04 09:42:11.000000000 +0100
++++ gdb-6.8.50.20090226/gdb/solist.h	2009-02-28 07:38:59.000000000 +0100
 @@ -61,6 +61,8 @@ struct so_list
      bfd *abfd;
      char symbols_loaded;	/* flag: symbols read in yet? */
@@ -1330,10 +1330,10 @@
 +extern int debug_solib;
 +
  #endif
-Index: gdb-6.8.50.20090209/gdb/symfile-mem.c
+Index: gdb-6.8.50.20090226/gdb/symfile-mem.c
 ===================================================================
---- gdb-6.8.50.20090209.orig/gdb/symfile-mem.c	2009-02-09 15:49:25.000000000 +0100
-+++ gdb-6.8.50.20090209/gdb/symfile-mem.c	2009-02-09 16:21:55.000000000 +0100
+--- gdb-6.8.50.20090226.orig/gdb/symfile-mem.c	2009-02-28 07:22:09.000000000 +0100
++++ gdb-6.8.50.20090226/gdb/symfile-mem.c	2009-02-28 07:38:59.000000000 +0100
 @@ -116,7 +116,7 @@ symbol_file_add_from_memory (struct bfd 
        }
  
@@ -1343,10 +1343,10 @@
  
    /* This might change our ideas about frames already looked at.  */
    reinit_frame_cache ();
-Index: gdb-6.8.50.20090209/gdb/symfile.c
+Index: gdb-6.8.50.20090226/gdb/symfile.c
 ===================================================================
---- gdb-6.8.50.20090209.orig/gdb/symfile.c	2009-02-09 16:03:45.000000000 +0100
-+++ gdb-6.8.50.20090209/gdb/symfile.c	2009-02-09 16:21:55.000000000 +0100
+--- gdb-6.8.50.20090226.orig/gdb/symfile.c	2009-02-28 07:31:58.000000000 +0100
++++ gdb-6.8.50.20090226/gdb/symfile.c	2009-02-28 07:39:59.000000000 +0100
 @@ -47,6 +47,7 @@
  #include "readline/readline.h"
  #include "gdb_assert.h"
@@ -1397,16 +1397,16 @@
  
    /* We're done reading the symbol file; finish off complaints.  */
    clear_complaints (&symfile_complaints, 0, verbo);
-@@ -970,7 +975,7 @@ symbol_file_add_with_addrs_or_offsets (b
+@@ -980,7 +985,7 @@ symbol_file_add_with_addrs_or_offsets (b
+   /* Give user a chance to burp if we'd be
       interactively wiping out any existing symbols.  */
  
-   if ((have_full_symbols () || have_partial_symbols ())
--      && mainline
-+      && (mainline == 1)
+-  if (mainline
++  if (mainline == 1
        && from_tty
-       && !query ("Load new symbol table from \"%s\"? ", name))
-     error (_("Not confirmed."));
-@@ -1161,6 +1166,10 @@ symbol_file_clear (int from_tty)
+       && (have_full_symbols () || have_partial_symbols ())
+       && !query (_("Load new symbol table from \"%s\"? "), name))
+@@ -1175,6 +1180,10 @@ symbol_file_clear (int from_tty)
  		    symfile_objfile->name)
  	  : !query (_("Discard symbol table? "))))
      error (_("Not confirmed."));
@@ -1417,7 +1417,7 @@
      free_all_objfiles ();
  
      /* solib descriptors may have handles to objfiles.  Since their
-@@ -3260,6 +3269,8 @@ reread_symbols (void)
+@@ -3275,6 +3284,8 @@ reread_symbols (void)
  	      /* Discard cleanups as symbol reading was successful.  */
  	      discard_cleanups (old_cleanups);
  
@@ -1426,7 +1426,7 @@
  	      /* If the mtime has changed between the time we set new_modtime
  	         and now, we *want* this to be out of date, so don't call stat
  	         again now.  */
-@@ -3629,6 +3640,7 @@ clear_symtab_users (void)
+@@ -3644,6 +3655,7 @@ clear_symtab_users (void)
    breakpoint_re_set ();
    set_default_breakpoint (0, 0, 0, 0);
    clear_pc_function_cache ();
@@ -1434,12 +1434,12 @@
    observer_notify_new_objfile (NULL);
  
    /* Clear globals which might have pointed into a removed objfile.
-Index: gdb-6.8.50.20090209/gdb/varobj.c
+Index: gdb-6.8.50.20090226/gdb/varobj.c
 ===================================================================
---- gdb-6.8.50.20090209.orig/gdb/varobj.c	2009-02-05 18:28:21.000000000 +0100
-+++ gdb-6.8.50.20090209/gdb/varobj.c	2009-02-09 16:21:55.000000000 +0100
-@@ -1123,6 +1123,62 @@ install_new_value (struct varobj *var, s
-   return changed;
+--- gdb-6.8.50.20090226.orig/gdb/varobj.c	2009-02-27 00:04:32.000000000 +0100
++++ gdb-6.8.50.20090226/gdb/varobj.c	2009-02-28 07:41:30.000000000 +0100
+@@ -1505,6 +1505,61 @@ varobj_set_visualizer (struct varobj *va
+ #endif
  }
  
 +void
@@ -1497,26 +1497,25 @@
 +       rootcount, mycount);
 +}
 +
-+
  /* Update the values for a variable and its children.  This is a
     two-pronged attack.  First, re-parse the value for the root's
     expression to see if it's changed.  Then go all the way
-Index: gdb-6.8.50.20090209/gdb/varobj.h
+Index: gdb-6.8.50.20090226/gdb/varobj.h
 ===================================================================
---- gdb-6.8.50.20090209.orig/gdb/varobj.h	2009-01-03 06:57:54.000000000 +0100
-+++ gdb-6.8.50.20090209/gdb/varobj.h	2009-02-09 16:21:55.000000000 +0100
-@@ -141,4 +141,6 @@ extern int varobj_editable_p (struct var
- 
- extern int varobj_floating_p (struct varobj *var);
+--- gdb-6.8.50.20090226.orig/gdb/varobj.h	2009-02-27 00:04:32.000000000 +0100
++++ gdb-6.8.50.20090226/gdb/varobj.h	2009-02-28 07:39:19.000000000 +0100
+@@ -163,4 +163,6 @@ varobj_clear_type_visualizers ();
+ extern void 
+ varobj_set_visualizer (struct varobj *var, const char *visualizer);
  
 +extern void varobj_refresh(void);
 +
  #endif /* VAROBJ_H */
-Index: gdb-6.8.50.20090209/gdb/target.h
+Index: gdb-6.8.50.20090226/gdb/target.h
 ===================================================================
---- gdb-6.8.50.20090209.orig/gdb/target.h	2009-02-09 16:02:42.000000000 +0100
-+++ gdb-6.8.50.20090209/gdb/target.h	2009-02-09 16:21:55.000000000 +0100
-@@ -524,7 +524,7 @@ struct target_ops
+--- gdb-6.8.50.20090226.orig/gdb/target.h	2009-02-28 07:32:32.000000000 +0100
++++ gdb-6.8.50.20090226/gdb/target.h	2009-02-28 07:38:59.000000000 +0100
+@@ -542,7 +542,7 @@ struct target_ops
         Return -1 if there is insufficient buffer for a whole entry.
         Return 1 if an entry was read into *TYPEP and *VALP.  */
      int (*to_auxv_parse) (struct target_ops *ops, gdb_byte **readptr,

gdb-6.3-readnever-20050907.patch:

Index: gdb-6.3-readnever-20050907.patch
===================================================================
RCS file: /cvs/pkgs/rpms/gdb/devel/gdb-6.3-readnever-20050907.patch,v
retrieving revision 1.3
retrieving revision 1.4
diff -u -r1.3 -r1.4
--- gdb-6.3-readnever-20050907.patch	14 Dec 2008 14:05:15 -0000	1.3
+++ gdb-6.3-readnever-20050907.patch	2 Mar 2009 00:11:35 -0000	1.4
@@ -11,11 +11,11 @@
 
         * gdb.texinfo (File Options): Document --readnever.
 
-Index: gdb-6.8.50.20081128/gdb/doc/gdb.texinfo
+Index: gdb-6.8.50.20090226/gdb/doc/gdb.texinfo
 ===================================================================
---- gdb-6.8.50.20081128.orig/gdb/doc/gdb.texinfo	2008-11-27 10:23:01.000000000 +0100
-+++ gdb-6.8.50.20081128/gdb/doc/gdb.texinfo	2008-12-02 19:07:35.000000000 +0100
-@@ -994,6 +994,12 @@ Read each symbol file's entire symbol ta
+--- gdb-6.8.50.20090226.orig/gdb/doc/gdb.texinfo	2009-02-27 00:04:32.000000000 +0100
++++ gdb-6.8.50.20090226/gdb/doc/gdb.texinfo	2009-02-28 07:19:50.000000000 +0100
+@@ -988,6 +988,12 @@ Read each symbol file's entire symbol ta
  the default, which is to read it incrementally as it is needed.
  This makes startup slower, but makes future operations faster.
  
@@ -28,11 +28,11 @@
  @end table
  
  @node Mode Options
-Index: gdb-6.8.50.20081128/gdb/main.c
+Index: gdb-6.8.50.20090226/gdb/main.c
 ===================================================================
---- gdb-6.8.50.20081128.orig/gdb/main.c	2008-12-02 18:07:21.000000000 +0100
-+++ gdb-6.8.50.20081128/gdb/main.c	2008-12-02 19:07:35.000000000 +0100
-@@ -295,6 +295,7 @@ captured_main (void *data)
+--- gdb-6.8.50.20090226.orig/gdb/main.c	2009-02-28 07:15:57.000000000 +0100
++++ gdb-6.8.50.20090226/gdb/main.c	2009-02-28 07:20:20.000000000 +0100
+@@ -427,6 +427,7 @@ captured_main (void *data)
        {"xdb", no_argument, &xdb_commands, 1},
        {"dbx", no_argument, &dbx_commands, 1},
        {"readnow", no_argument, &readnow_symbol_files, 1},
@@ -40,18 +40,18 @@
        {"r", no_argument, &readnow_symbol_files, 1},
        {"quiet", no_argument, &quiet, 1},
        {"q", no_argument, &quiet, 1},
-@@ -895,6 +896,7 @@ Options:\n\n\
-   fputs_unfiltered (_(" file.\n\
+@@ -1070,6 +1071,7 @@ Options:\n\n\
+   fputs_unfiltered (_("\
    --quiet            Do not print version number on startup.\n\
    --readnow          Fully read symbol files on first access.\n\
 +  --readnever        Do not read symbol files.\n\
  "), stream);
    fputs_unfiltered (_("\
    --se=FILE          Use FILE as symbol file and executable file.\n\
-Index: gdb-6.8.50.20081128/gdb/symfile.c
+Index: gdb-6.8.50.20090226/gdb/symfile.c
 ===================================================================
---- gdb-6.8.50.20081128.orig/gdb/symfile.c	2008-12-01 16:34:36.000000000 +0100
-+++ gdb-6.8.50.20081128/gdb/symfile.c	2008-12-02 19:07:35.000000000 +0100
+--- gdb-6.8.50.20090226.orig/gdb/symfile.c	2009-02-27 07:51:56.000000000 +0100
++++ gdb-6.8.50.20090226/gdb/symfile.c	2009-02-28 07:19:50.000000000 +0100
 @@ -77,6 +77,7 @@ static void clear_symtab_users_cleanup (
  
  /* Global variables owned by this file */
@@ -60,32 +60,32 @@
  
  /* External variables and functions referenced. */
  
-Index: gdb-6.8.50.20081128/gdb/dwarf2read.c
+Index: gdb-6.8.50.20090226/gdb/dwarf2read.c
 ===================================================================
---- gdb-6.8.50.20081128.orig/gdb/dwarf2read.c	2008-11-15 19:49:50.000000000 +0100
-+++ gdb-6.8.50.20081128/gdb/dwarf2read.c	2008-12-02 19:08:53.000000000 +0100
-@@ -46,6 +46,7 @@
- #include "command.h"
+--- gdb-6.8.50.20090226.orig/gdb/dwarf2read.c	2009-02-27 00:04:32.000000000 +0100
++++ gdb-6.8.50.20090226/gdb/dwarf2read.c	2009-02-28 07:21:27.000000000 +0100
+@@ -48,6 +48,7 @@
  #include "gdbcmd.h"
  #include "addrmap.h"
+ #include "f-lang.h"
 +#include "top.h"
  
  #include <fcntl.h>
  #include "gdb_string.h"
-@@ -1122,7 +1123,8 @@ dwarf2_has_info (struct objfile *objfile
-   dwarf_loc_section = 0;
+@@ -1169,7 +1170,8 @@ dwarf2_has_info (struct objfile *objfile
+   dwarf_aranges_section = 0;
    
-   bfd_map_over_sections (objfile->obfd, dwarf2_locate_sections, NULL);
+   bfd_map_over_sections (objfile->obfd, dwarf2_locate_sections, &update_sizes);
 -  return (dwarf_info_section != NULL && dwarf_abbrev_section != NULL);
 +  return !readnever_symbol_files
 +	 && dwarf_info_section != NULL && dwarf_abbrev_section != NULL;
  }
  
  /* When loading sections, we can either look for ".<name>", or for
-Index: gdb-6.8.50.20081128/gdb/top.h
+Index: gdb-6.8.50.20090226/gdb/top.h
 ===================================================================
---- gdb-6.8.50.20081128.orig/gdb/top.h	2008-01-01 23:53:13.000000000 +0100
-+++ gdb-6.8.50.20081128/gdb/top.h	2008-12-02 19:07:35.000000000 +0100
+--- gdb-6.8.50.20090226.orig/gdb/top.h	2009-01-03 06:57:53.000000000 +0100
++++ gdb-6.8.50.20090226/gdb/top.h	2009-02-28 07:19:50.000000000 +0100
 @@ -59,6 +59,7 @@ extern void set_prompt (char *);
  
  /* From random places.  */

gdb-6.3-security-errata-20050610.patch:

Index: gdb-6.3-security-errata-20050610.patch
===================================================================
RCS file: /cvs/pkgs/rpms/gdb/devel/gdb-6.3-security-errata-20050610.patch,v
retrieving revision 1.6
retrieving revision 1.7
diff -u -r1.6 -r1.7
--- gdb-6.3-security-errata-20050610.patch	11 Feb 2009 00:04:47 -0000	1.6
+++ gdb-6.3-security-errata-20050610.patch	2 Mar 2009 00:11:35 -0000	1.7
@@ -19,10 +19,10 @@
         (source_command): Update documentation.  Check permissions if
         FROM_TTY is -1.
 
-Index: gdb-6.8.50.20090209/gdb/cli/cli-cmds.c
+Index: gdb-6.8.50.20090226/gdb/cli/cli-cmds.c
 ===================================================================
---- gdb-6.8.50.20090209.orig/gdb/cli/cli-cmds.c	2009-01-14 21:40:07.000000000 +0100
-+++ gdb-6.8.50.20090209/gdb/cli/cli-cmds.c	2009-02-09 15:45:39.000000000 +0100
+--- gdb-6.8.50.20090226.orig/gdb/cli/cli-cmds.c	2009-02-27 00:04:32.000000000 +0100
++++ gdb-6.8.50.20090226/gdb/cli/cli-cmds.c	2009-02-28 07:17:49.000000000 +0100
 @@ -36,6 +36,7 @@
  #include "objfiles.h"
  #include "source.h"
@@ -31,7 +31,7 @@
  
  #include "ui-out.h"
  
-@@ -462,7 +463,7 @@ source_script (char *file, int from_tty)
+@@ -466,7 +467,7 @@ source_script (char *file, int from_tty)
  
    if (fd == -1)
      {
@@ -40,7 +40,7 @@
  	perror_with_name (file);
        else
  	{
-@@ -471,9 +472,33 @@ source_script (char *file, int from_tty)
+@@ -475,6 +476,29 @@ source_script (char *file, int from_tty)
  	}
      }
  
@@ -67,17 +67,21 @@
 +    }
 +#endif
 +
-   stream = fdopen (fd, FOPEN_RT);
-   script_from_file (stream, file);
+   is_python = source_python;
+   if (strlen (file) > 3 && !strcmp (&file[strlen (file) - 3], ".py"))
+     is_python = 1;
+@@ -486,6 +510,7 @@ source_script (char *file, int from_tty)
+   else
+     script_from_file (stream, file);
  
 +  /* FILE gets freed by do_cleanups (old_cleanups).  */
    do_cleanups (old_cleanups);
  }
  
-Index: gdb-6.8.50.20090209/gdb/testsuite/gdb.base/gdbinit.exp
+Index: gdb-6.8.50.20090226/gdb/testsuite/gdb.base/gdbinit.exp
 ===================================================================
 --- /dev/null	1970-01-01 00:00:00.000000000 +0000
-+++ gdb-6.8.50.20090209/gdb/testsuite/gdb.base/gdbinit.exp	2009-02-09 15:45:39.000000000 +0100
++++ gdb-6.8.50.20090226/gdb/testsuite/gdb.base/gdbinit.exp	2009-02-28 07:15:57.000000000 +0100
 @@ -0,0 +1,98 @@
 +#   Copyright 2005
 +#   Free Software Foundation, Inc.
@@ -177,17 +181,17 @@
 +}
 +
 +remote_exec build "rm .gdbinit"
-Index: gdb-6.8.50.20090209/gdb/testsuite/gdb.base/gdbinit.sample
+Index: gdb-6.8.50.20090226/gdb/testsuite/gdb.base/gdbinit.sample
 ===================================================================
 --- /dev/null	1970-01-01 00:00:00.000000000 +0000
-+++ gdb-6.8.50.20090209/gdb/testsuite/gdb.base/gdbinit.sample	2009-02-09 15:45:39.000000000 +0100
++++ gdb-6.8.50.20090226/gdb/testsuite/gdb.base/gdbinit.sample	2009-02-28 07:15:57.000000000 +0100
 @@ -0,0 +1 @@
 +echo "\nin gdbinit"
-Index: gdb-6.8.50.20090209/gdb/main.c
+Index: gdb-6.8.50.20090226/gdb/main.c
 ===================================================================
---- gdb-6.8.50.20090209.orig/gdb/main.c	2009-01-28 16:01:00.000000000 +0100
-+++ gdb-6.8.50.20090209/gdb/main.c	2009-02-09 15:46:33.000000000 +0100
-@@ -783,7 +783,7 @@ Excess command line arguments ignored. (
+--- gdb-6.8.50.20090226.orig/gdb/main.c	2009-02-27 00:04:32.000000000 +0100
++++ gdb-6.8.50.20090226/gdb/main.c	2009-02-28 07:15:57.000000000 +0100
+@@ -855,7 +855,7 @@ Excess command line arguments ignored. (
       debugging or what directory you are in.  */
  
    if (home_gdbinit && !inhibit_gdbinit)
@@ -196,7 +200,7 @@
  
    /* Now perform all the actions indicated by the arguments.  */
    if (cdarg != NULL)
-@@ -852,7 +852,7 @@ Can't attach to process and specify a co
+@@ -924,7 +924,7 @@ Can't attach to process and specify a co
    /* Read the .gdbinit file in the current directory, *if* it isn't
       the same as the $HOME/.gdbinit file (it should exist, also).  */
    if (local_gdbinit && !inhibit_gdbinit)

gdb-6.3-test-self-20050110.patch:

Index: gdb-6.3-test-self-20050110.patch
===================================================================
RCS file: /cvs/pkgs/rpms/gdb/devel/gdb-6.3-test-self-20050110.patch,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -r1.1 -r1.2
--- gdb-6.3-test-self-20050110.patch	11 Jan 2005 01:07:18 -0000	1.1
+++ gdb-6.3-test-self-20050110.patch	2 Mar 2009 00:11:35 -0000	1.2
@@ -6,9 +6,11 @@
         * gdb.gdb/xfullpath.exp: Ditto.
         * gdb.gdb/observer.exp: Ditto.
 
---- gdb-6.3/gdb/testsuite/gdb.gdb/complaints.exp.fix	Mon Jan 10 19:21:20 2005
-+++ gdb-6.3/gdb/testsuite/gdb.gdb/complaints.exp	Mon Jan 10 19:24:38 2005
-@@ -304,13 +304,13 @@ proc find_gdb { arg } {
+Index: gdb-6.8.50.20090226/gdb/testsuite/gdb.gdb/complaints.exp
+===================================================================
+--- gdb-6.8.50.20090226.orig/gdb/testsuite/gdb.gdb/complaints.exp	2009-01-03 06:58:04.000000000 +0100
++++ gdb-6.8.50.20090226/gdb/testsuite/gdb.gdb/complaints.exp	2009-02-26 22:10:48.000000000 +0100
+@@ -302,13 +302,13 @@ proc find_gdb { arg } {
  set GDB_FULLPATH [find_gdb $GDB]
  
  # Remove any old copy lying around.
@@ -25,15 +27,17 @@
  if {$setup_result <0} then {
      return -1
  }
-@@ -321,4 +321,4 @@ test_short_complaints
+@@ -319,4 +319,4 @@ test_short_complaints
  test_empty_complaints
  
  gdb_exit;
 -catch "remote_file host delete $file";
 +#catch "remote_file host delete $file";
---- gdb-6.3/gdb/testsuite/gdb.gdb/observer.exp.fix	Mon Jan 10 19:21:27 2005
-+++ gdb-6.3/gdb/testsuite/gdb.gdb/observer.exp	Mon Jan 10 19:24:38 2005
-@@ -259,13 +259,13 @@ proc find_gdb { arg } {
+Index: gdb-6.8.50.20090226/gdb/testsuite/gdb.gdb/observer.exp
+===================================================================
+--- gdb-6.8.50.20090226.orig/gdb/testsuite/gdb.gdb/observer.exp	2009-02-17 20:52:27.000000000 +0100
++++ gdb-6.8.50.20090226/gdb/testsuite/gdb.gdb/observer.exp	2009-02-26 22:11:40.000000000 +0100
+@@ -258,13 +258,13 @@ proc find_gdb { arg } {
  set GDB_FULLPATH [find_gdb $GDB]
  
  # Remove any old copy lying around.
@@ -42,18 +46,20 @@
  
  gdb_start
 -set file [remote_download host $GDB_FULLPATH x$tool]
--set result [test_observer_normal_stop $file];
+-set result [test_observer $file];
 +#set file [remote_download host $GDB_FULLPATH x$tool]
-+set result [test_observer_normal_stop $GDB_FULLPATH];
++set result [test_observer $GDB_FULLPATH];
  gdb_exit;
 -catch "remote_file host delete $file";
 +#catch "remote_file host delete $file";
  
  if {$result <0} then {
      warning "Couldn't test self"
---- gdb-6.3/gdb/testsuite/gdb.gdb/selftest.exp.fix	Mon Jan 10 19:21:33 2005
-+++ gdb-6.3/gdb/testsuite/gdb.gdb/selftest.exp	Mon Jan 10 19:24:38 2005
-@@ -512,13 +512,13 @@ proc find_gdb { arg } {
+Index: gdb-6.8.50.20090226/gdb/testsuite/gdb.gdb/selftest.exp
+===================================================================
+--- gdb-6.8.50.20090226.orig/gdb/testsuite/gdb.gdb/selftest.exp	2009-02-26 22:09:59.000000000 +0100
++++ gdb-6.8.50.20090226/gdb/testsuite/gdb.gdb/selftest.exp	2009-02-26 22:10:48.000000000 +0100
+@@ -551,13 +551,13 @@ proc find_gdb { arg } {
  set GDB_FULLPATH [find_gdb $GDB]
  
  # Remove any old copy lying around.
@@ -71,9 +77,11 @@
  
  if {$result <0} then {
      warning "Couldn't test self"
---- gdb-6.3/gdb/testsuite/gdb.gdb/xfullpath.exp.fix	Mon Jan 10 19:21:40 2005
-+++ gdb-6.3/gdb/testsuite/gdb.gdb/xfullpath.exp	Mon Jan 10 19:24:38 2005
-@@ -181,13 +181,13 @@ proc find_gdb { arg } {
+Index: gdb-6.8.50.20090226/gdb/testsuite/gdb.gdb/xfullpath.exp
+===================================================================
+--- gdb-6.8.50.20090226.orig/gdb/testsuite/gdb.gdb/xfullpath.exp	2009-01-03 06:58:04.000000000 +0100
++++ gdb-6.8.50.20090226/gdb/testsuite/gdb.gdb/xfullpath.exp	2009-02-26 22:10:48.000000000 +0100
+@@ -179,13 +179,13 @@ proc find_gdb { arg } {
  set GDB_FULLPATH [find_gdb $GDB]
  
  # Remove any old copy lying around.

gdb-6.5-bz185337-resolve-tls-without-debuginfo-v2.patch:

Index: gdb-6.5-bz185337-resolve-tls-without-debuginfo-v2.patch
===================================================================
RCS file: /cvs/pkgs/rpms/gdb/devel/gdb-6.5-bz185337-resolve-tls-without-debuginfo-v2.patch,v
retrieving revision 1.8
retrieving revision 1.9
diff -u -r1.8 -r1.9
--- gdb-6.5-bz185337-resolve-tls-without-debuginfo-v2.patch	11 Feb 2009 00:04:47 -0000	1.8
+++ gdb-6.5-bz185337-resolve-tls-without-debuginfo-v2.patch	2 Mar 2009 00:11:35 -0000	1.9
@@ -30,22 +30,20 @@
   <81a2>     DW_AT_name        : (indirect string, offset: 0x280e): __errno_location
   <81a8>     DW_AT_MIPS_linkage_name: (indirect string, offset: 0x2808): *__GI___errno_location
 
-Index: gdb-6.8.50.20090209/gdb/dwarf2read.c
+Index: gdb-6.8.50.20090226/gdb/dwarf2read.c
 ===================================================================
---- gdb-6.8.50.20090209.orig/gdb/dwarf2read.c	2009-02-09 15:50:59.000000000 +0100
-+++ gdb-6.8.50.20090209/gdb/dwarf2read.c	2009-02-09 15:51:57.000000000 +0100
-@@ -6031,8 +6031,8 @@ read_partial_die (struct partial_die_inf
+--- gdb-6.8.50.20090226.orig/gdb/dwarf2read.c	2009-02-28 07:22:44.000000000 +0100
++++ gdb-6.8.50.20090226/gdb/dwarf2read.c	2009-02-28 07:31:33.000000000 +0100
+@@ -6376,6 +6376,8 @@ read_partial_die (struct partial_die_inf
+       switch (attr.name)
  	{
  	case DW_AT_name:
- 
--	  /* Prefer DW_AT_MIPS_linkage_name over DW_AT_name.  */
--	  if (part_die->name == NULL)
 +	  /* Prefer DW_AT_MIPS_linkage_name over DW_AT_name for non-C.  */
-+	  if (cu->language == language_c || part_die->name == NULL)
- 	    part_die->name = DW_STRING (&attr);
- 	  break;
- 	case DW_AT_comp_dir:
-@@ -6040,7 +6040,9 @@ read_partial_die (struct partial_die_inf
++if (cu->language == language_c || part_die->name == NULL)
+ 	  switch (part_die->tag)
+ 	    {
+ 	    case DW_TAG_compile_unit:
+@@ -6399,7 +6401,9 @@ read_partial_die (struct partial_die_inf
  	    part_die->dirname = DW_STRING (&attr);
  	  break;
  	case DW_AT_MIPS_linkage_name:
@@ -56,7 +54,7 @@
  	  break;
  	case DW_AT_low_pc:
  	  has_low_pc_attr = 1;
-@@ -8278,9 +8280,13 @@ dwarf2_linkage_name (struct die_info *di
+@@ -8650,9 +8654,13 @@ dwarf2_linkage_name (struct die_info *di
  {
    struct attribute *attr;
  
@@ -70,13 +68,13 @@
 +      if (attr && DW_STRING (attr))
 +	return DW_STRING (attr);
 +    }
-   attr = dwarf2_attr (die, DW_AT_name, cu);
-   if (attr && DW_STRING (attr))
-     return DW_STRING (attr);
-Index: gdb-6.8.50.20090209/gdb/gdbtypes.c
+   return dwarf2_name (die, cu);
+ }
+ 
+Index: gdb-6.8.50.20090226/gdb/gdbtypes.c
 ===================================================================
---- gdb-6.8.50.20090209.orig/gdb/gdbtypes.c	2009-02-09 15:38:54.000000000 +0100
-+++ gdb-6.8.50.20090209/gdb/gdbtypes.c	2009-02-09 15:56:14.000000000 +0100
+--- gdb-6.8.50.20090226.orig/gdb/gdbtypes.c	2009-02-27 00:04:32.000000000 +0100
++++ gdb-6.8.50.20090226/gdb/gdbtypes.c	2009-02-28 07:22:55.000000000 +0100
 @@ -3643,6 +3643,8 @@ gdbtypes_post_init (struct gdbarch *gdba
      init_type (TYPE_CODE_INT, 
  	       gdbarch_int_bit (gdbarch) / TARGET_CHAR_BIT,
@@ -99,11 +97,11 @@
    builtin_type->nodebug_data_symbol =
      init_type (TYPE_CODE_INT, 
  	       gdbarch_int_bit (gdbarch) / HOST_CHAR_BIT, 0,
-Index: gdb-6.8.50.20090209/gdb/gdbtypes.h
+Index: gdb-6.8.50.20090226/gdb/gdbtypes.h
 ===================================================================
---- gdb-6.8.50.20090209.orig/gdb/gdbtypes.h	2009-02-09 15:38:54.000000000 +0100
-+++ gdb-6.8.50.20090209/gdb/gdbtypes.h	2009-02-09 15:51:57.000000000 +0100
-@@ -1050,6 +1050,7 @@ struct builtin_type
+--- gdb-6.8.50.20090226.orig/gdb/gdbtypes.h	2009-02-27 00:04:32.000000000 +0100
++++ gdb-6.8.50.20090226/gdb/gdbtypes.h	2009-02-28 07:22:55.000000000 +0100
+@@ -1053,6 +1053,7 @@ struct builtin_type
  
    /* Types used for symbols with no debug information.  */
    struct type *nodebug_text_symbol;
@@ -111,7 +109,7 @@
    struct type *nodebug_data_symbol;
    struct type *nodebug_unknown_symbol;
    struct type *nodebug_tls_symbol;
-@@ -1062,6 +1063,7 @@ struct builtin_type
+@@ -1065,6 +1066,7 @@ struct builtin_type
    struct type *builtin_char;
    struct type *builtin_short;
    struct type *builtin_int;
@@ -119,11 +117,11 @@
    struct type *builtin_long;
    struct type *builtin_signed_char;
    struct type *builtin_unsigned_char;
-Index: gdb-6.8.50.20090209/gdb/parse.c
+Index: gdb-6.8.50.20090226/gdb/parse.c
 ===================================================================
---- gdb-6.8.50.20090209.orig/gdb/parse.c	2009-01-03 06:57:52.000000000 +0100
-+++ gdb-6.8.50.20090209/gdb/parse.c	2009-02-09 15:51:57.000000000 +0100
-@@ -449,7 +449,12 @@ write_exp_msymbol (struct minimal_symbol
+--- gdb-6.8.50.20090226.orig/gdb/parse.c	2009-02-27 00:04:32.000000000 +0100
++++ gdb-6.8.50.20090226/gdb/parse.c	2009-02-28 07:22:55.000000000 +0100
+@@ -508,7 +508,12 @@ write_exp_msymbol (struct minimal_symbol
      case mst_text:
      case mst_file_text:
      case mst_solib_trampoline:
@@ -137,11 +135,11 @@
        break;
  
      case mst_data:
-Index: gdb-6.8.50.20090209/gdb/target.c
+Index: gdb-6.8.50.20090226/gdb/target.c
 ===================================================================
---- gdb-6.8.50.20090209.orig/gdb/target.c	2009-02-09 15:50:39.000000000 +0100
-+++ gdb-6.8.50.20090209/gdb/target.c	2009-02-09 15:51:57.000000000 +0100
-@@ -842,6 +842,25 @@ pop_all_targets (int quitting)
+--- gdb-6.8.50.20090226.orig/gdb/target.c	2009-02-28 07:22:09.000000000 +0100
++++ gdb-6.8.50.20090226/gdb/target.c	2009-02-28 07:22:55.000000000 +0100
+@@ -827,6 +827,25 @@ pop_all_targets (int quitting)
    pop_all_targets_above (dummy_stratum, quitting);
  }
  
@@ -167,7 +165,7 @@
  /* Using the objfile specified in OBJFILE, find the address for the
     current thread's thread-local storage with offset OFFSET.  */
  CORE_ADDR
-@@ -932,7 +951,28 @@ target_translate_tls_address (struct obj
+@@ -917,7 +936,28 @@ target_translate_tls_address (struct obj
    /* It wouldn't be wrong here to try a gdbarch method, too; finding
       TLS is an ABI-specific thing.  But we don't do that yet.  */
    else
@@ -197,10 +195,10 @@
  
    return addr;
  }
-Index: gdb-6.8.50.20090209/gdb/testsuite/gdb.dwarf2/dw2-errno.c
+Index: gdb-6.8.50.20090226/gdb/testsuite/gdb.dwarf2/dw2-errno.c
 ===================================================================
 --- /dev/null	1970-01-01 00:00:00.000000000 +0000
-+++ gdb-6.8.50.20090209/gdb/testsuite/gdb.dwarf2/dw2-errno.c	2009-02-09 15:51:57.000000000 +0100
++++ gdb-6.8.50.20090226/gdb/testsuite/gdb.dwarf2/dw2-errno.c	2009-02-28 07:22:55.000000000 +0100
 @@ -0,0 +1,28 @@
 +/* This testcase is part of GDB, the GNU debugger.
 +
@@ -230,10 +228,10 @@
 +
 +  return 0;	/* breakpoint */
 +}
-Index: gdb-6.8.50.20090209/gdb/testsuite/gdb.dwarf2/dw2-errno.exp
+Index: gdb-6.8.50.20090226/gdb/testsuite/gdb.dwarf2/dw2-errno.exp
 ===================================================================
 --- /dev/null	1970-01-01 00:00:00.000000000 +0000
-+++ gdb-6.8.50.20090209/gdb/testsuite/gdb.dwarf2/dw2-errno.exp	2009-02-09 15:51:57.000000000 +0100
++++ gdb-6.8.50.20090226/gdb/testsuite/gdb.dwarf2/dw2-errno.exp	2009-02-28 07:22:55.000000000 +0100
 @@ -0,0 +1,67 @@
 +# Copyright 2007 Free Software Foundation, Inc.
 +

gdb-6.6-buildid-locate.patch:

Index: gdb-6.6-buildid-locate.patch
===================================================================
RCS file: /cvs/pkgs/rpms/gdb/devel/gdb-6.6-buildid-locate.patch,v
retrieving revision 1.16
retrieving revision 1.17
diff -u -r1.16 -r1.17
--- gdb-6.6-buildid-locate.patch	14 Dec 2008 14:05:16 -0000	1.16
+++ gdb-6.6-buildid-locate.patch	2 Mar 2009 00:11:35 -0000	1.17
@@ -47,11 +47,11 @@
 	Fix found by Denys Vlasenko <dvlasenk at redhat.com>.
 	Fixes Red Hat Bug 459414.
 
-Index: gdb-6.8.50.20081128/gdb/Makefile.in
+Index: gdb-6.8.50.20090226/gdb/Makefile.in
 ===================================================================
---- gdb-6.8.50.20081128.orig/gdb/Makefile.in	2008-12-04 10:33:25.000000000 +0100
-+++ gdb-6.8.50.20081128/gdb/Makefile.in	2008-12-04 10:34:31.000000000 +0100
-@@ -363,7 +363,7 @@ CONFIG_UNINSTALL = @CONFIG_UNINSTALL@
+--- gdb-6.8.50.20090226.orig/gdb/Makefile.in	2009-02-28 07:31:50.000000000 +0100
++++ gdb-6.8.50.20090226/gdb/Makefile.in	2009-02-28 07:31:58.000000000 +0100
+@@ -392,7 +392,7 @@ CONFIG_UNINSTALL = @CONFIG_UNINSTALL@
  # your system doesn't have fcntl.h in /usr/include (which is where it
  # should be according to Posix).
  DEFS = @DEFS@
@@ -60,7 +60,7 @@
  
  # MH_CFLAGS, if defined, has host-dependent CFLAGS from the config directory.
  GLOBAL_CFLAGS = $(MH_CFLAGS)
-@@ -415,7 +415,7 @@ INSTALLED_LIBS=-lbfd -lreadline -lopcode
+@@ -445,7 +445,7 @@ INSTALLED_LIBS=-lbfd -lreadline -lopcode
  CLIBS = $(SIM) $(READLINE) $(OPCODES) $(BFD) $(INTL) $(LIBIBERTY) $(LIBDECNUMBER) \
  	$(XM_CLIBS) $(NAT_CLIBS) $(GDBTKLIBS) @LIBS@ \
  	$(LIBICONV) $(LIBEXPAT) \
@@ -69,10 +69,10 @@
  CDEPS = $(XM_CDEPS) $(NAT_CDEPS) $(SIM) $(BFD) $(READLINE_DEPS) \
  	$(OPCODES) $(INTL_DEPS) $(LIBIBERTY) $(CONFIG_DEPS) $(LIBGNU)
  
-Index: gdb-6.8.50.20081128/gdb/corelow.c
+Index: gdb-6.8.50.20090226/gdb/corelow.c
 ===================================================================
---- gdb-6.8.50.20081128.orig/gdb/corelow.c	2008-11-09 12:27:17.000000000 +0100
-+++ gdb-6.8.50.20081128/gdb/corelow.c	2008-12-04 10:34:31.000000000 +0100
+--- gdb-6.8.50.20090226.orig/gdb/corelow.c	2009-02-23 01:03:48.000000000 +0100
++++ gdb-6.8.50.20090226/gdb/corelow.c	2009-02-28 07:32:23.000000000 +0100
 @@ -45,6 +45,10 @@
  #include "exceptions.h"
  #include "solib.h"
@@ -84,7 +84,7 @@
  
  
  #ifndef O_LARGEFILE
-@@ -262,6 +266,56 @@ add_to_thread_list (bfd *abfd, asection 
+@@ -267,6 +271,56 @@ add_to_thread_list (bfd *abfd, asection 
      inferior_ptid = ptid;			 /* Yes, make it current */
  }
  
@@ -141,7 +141,7 @@
  /* This routine opens and sets up the core file bfd.  */
  
  static void
-@@ -358,6 +412,12 @@ core_open (char *filename, int from_tty)
+@@ -363,6 +417,12 @@ core_open (char *filename, int from_tty)
    push_target (&core_ops);
    discard_cleanups (old_chain);
  
@@ -154,10 +154,10 @@
    add_inferior_silent (corelow_pid);
  
    /* Do this before acknowledging the inferior, so if
-@@ -737,4 +797,11 @@ _initialize_corelow (void)
+@@ -751,4 +811,11 @@ _initialize_corelow (void)
+   init_core_ops ();
  
-   if (!coreops_suppress_target)
-     add_target (&core_ops);
+   add_target (&core_ops);
 +
 +  add_setshow_boolean_cmd ("build-id-core-loads", class_files,
 +			   &build_id_core_loads, _("\
@@ -166,11 +166,11 @@
 +			   NULL, NULL, NULL,
 +			   &setlist, &showlist);
  }
-Index: gdb-6.8.50.20081128/gdb/doc/gdb.texinfo
+Index: gdb-6.8.50.20090226/gdb/doc/gdb.texinfo
 ===================================================================
---- gdb-6.8.50.20081128.orig/gdb/doc/gdb.texinfo	2008-12-04 10:34:04.000000000 +0100
-+++ gdb-6.8.50.20081128/gdb/doc/gdb.texinfo	2008-12-04 10:34:31.000000000 +0100
-@@ -13138,6 +13138,27 @@ information files.
+--- gdb-6.8.50.20090226.orig/gdb/doc/gdb.texinfo	2009-02-28 07:31:50.000000000 +0100
++++ gdb-6.8.50.20090226/gdb/doc/gdb.texinfo	2009-02-28 07:31:58.000000000 +0100
+@@ -13294,6 +13294,27 @@ information files.
  
  @end table
  
@@ -198,10 +198,10 @@
  @cindex @code{.gnu_debuglink} sections
  @cindex debug link sections
  A debug link is a special section of the executable file named
-Index: gdb-6.8.50.20081128/gdb/event-top.c
+Index: gdb-6.8.50.20090226/gdb/event-top.c
 ===================================================================
---- gdb-6.8.50.20081128.orig/gdb/event-top.c	2008-09-08 23:46:21.000000000 +0200
-+++ gdb-6.8.50.20081128/gdb/event-top.c	2008-12-04 10:34:31.000000000 +0100
+--- gdb-6.8.50.20090226.orig/gdb/event-top.c	2009-01-09 12:00:00.000000000 +0100
++++ gdb-6.8.50.20090226/gdb/event-top.c	2009-02-28 07:31:58.000000000 +0100
 @@ -33,6 +33,7 @@
  #include "cli/cli-script.h"     /* for reset_command_nest_depth */
  #include "main.h"
@@ -228,11 +228,11 @@
    /* Each interpreter has its own rules on displaying the command
       prompt.  */
    if (!current_interp_display_prompt_p ())
-Index: gdb-6.8.50.20081128/gdb/solib-svr4.c
+Index: gdb-6.8.50.20090226/gdb/solib-svr4.c
 ===================================================================
---- gdb-6.8.50.20081128.orig/gdb/solib-svr4.c	2008-12-04 01:34:17.000000000 +0100
-+++ gdb-6.8.50.20081128/gdb/solib-svr4.c	2008-12-04 10:34:31.000000000 +0100
-@@ -999,9 +999,33 @@ svr4_current_sos (void)
+--- gdb-6.8.50.20090226.orig/gdb/solib-svr4.c	2009-02-27 00:04:34.000000000 +0100
++++ gdb-6.8.50.20090226/gdb/solib-svr4.c	2009-02-28 07:31:58.000000000 +0100
+@@ -1000,9 +1000,33 @@ svr4_current_sos (void)
  		     safe_strerror (errcode));
  	  else
  	    {
@@ -269,10 +269,10 @@
  	    }
  	  xfree (buffer);
  
-Index: gdb-6.8.50.20081128/gdb/symfile.c
+Index: gdb-6.8.50.20090226/gdb/symfile.c
 ===================================================================
---- gdb-6.8.50.20081128.orig/gdb/symfile.c	2008-12-04 10:26:12.000000000 +0100
-+++ gdb-6.8.50.20081128/gdb/symfile.c	2008-12-04 10:36:18.000000000 +0100
+--- gdb-6.8.50.20090226.orig/gdb/symfile.c	2009-02-28 07:22:43.000000000 +0100
++++ gdb-6.8.50.20090226/gdb/symfile.c	2009-02-28 07:31:58.000000000 +0100
 @@ -54,6 +54,8 @@
  #include "elf-bfd.h"
  #include "solib.h"
@@ -290,7 +290,7 @@
  
  
  int (*deprecated_ui_load_progress_hook) (const char *section, unsigned long num);
-@@ -1168,16 +1171,65 @@ symbol_file_clear (int from_tty)
+@@ -1185,16 +1188,65 @@ symbol_file_clear (int from_tty)
        printf_unfiltered (_("No symbol file now.\n"));
  }
  
@@ -358,7 +358,7 @@
  {
    struct build_id *retval;
  
-@@ -1193,6 +1245,348 @@ build_id_bfd_get (bfd *abfd)
+@@ -1210,6 +1262,348 @@ build_id_bfd_get (bfd *abfd)
    return retval;
  }
  
@@ -707,7 +707,7 @@
  /* Return if FILENAME has NT_GNU_BUILD_ID matching the CHECK value.  */
  
  static int
-@@ -1210,7 +1604,7 @@ build_id_verify (const char *filename, s
+@@ -1227,7 +1621,7 @@ build_id_verify (const char *filename, s
    if (abfd == NULL)
      return 0;
  
@@ -716,7 +716,7 @@
  
    if (found == NULL)
      warning (_("File \"%s\" has no build-id, file skipped"), filename);
-@@ -1229,8 +1623,9 @@ build_id_verify (const char *filename, s
+@@ -1246,8 +1640,9 @@ build_id_verify (const char *filename, s
    return retval;
  }
  
@@ -728,7 +728,7 @@
  {
    char *link, *s, *retval = NULL;
    gdb_byte *data = build_id->data;
-@@ -1238,7 +1633,9 @@ build_id_to_debug_filename (struct build
+@@ -1255,7 +1650,9 @@ build_id_to_debug_filename (struct build
  
    /* DEBUG_FILE_DIRECTORY/.build-id/ab/cdef */
    link = xmalloc (strlen (debug_file_directory) + (sizeof "/.build-id/" - 1) + 1
@@ -739,7 +739,7 @@
    s = link + sprintf (link, "%s/.build-id/", debug_file_directory);
    if (size > 0)
      {
-@@ -1249,12 +1646,14 @@ build_id_to_debug_filename (struct build
+@@ -1266,12 +1663,14 @@ build_id_to_debug_filename (struct build
      *s++ = '/';
    while (size-- > 0)
      s += sprintf (s, "%02x", (unsigned) *data++);
@@ -756,7 +756,7 @@
  
    if (retval != NULL && !build_id_verify (retval, build_id))
      {
-@@ -1262,9 +1661,424 @@ build_id_to_debug_filename (struct build
+@@ -1279,9 +1678,424 @@ build_id_to_debug_filename (struct build
        retval = NULL;
      }
  
@@ -1181,7 +1181,7 @@
  static char *
  get_debug_link_info (struct objfile *objfile, unsigned long *crc32_out)
  {
-@@ -1347,32 +2161,36 @@ static char *
+@@ -1364,32 +2178,36 @@ static char *
  find_separate_debug_file (struct objfile *objfile)
  {
    asection *sect;
@@ -1226,7 +1226,7 @@
      }
  
    basename = get_debug_link_info (objfile, &crc32);
-@@ -1380,7 +2198,7 @@ find_separate_debug_file (struct objfile
+@@ -1397,7 +2215,7 @@ find_separate_debug_file (struct objfile
    if (basename == NULL)
      /* There's no separate debug info, hence there's no way we could
         load it => no warning.  */
@@ -1235,7 +1235,7 @@
  
    dir = xstrdup (objfile->name);
  
-@@ -1396,23 +2214,19 @@ find_separate_debug_file (struct objfile
+@@ -1413,23 +2231,19 @@ find_separate_debug_file (struct objfile
    gdb_assert (i >= 0 && IS_DIR_SEPARATOR (dir[i]));
    dir[i+1] = '\0';
  
@@ -1266,7 +1266,7 @@
  
    /* Then try in the subdirectory named DEBUG_SUBDIRECTORY.  */
    strcpy (debugfile, dir);
-@@ -1421,11 +2235,7 @@ find_separate_debug_file (struct objfile
+@@ -1438,11 +2252,7 @@ find_separate_debug_file (struct objfile
    strcat (debugfile, basename);
  
    if (separate_debug_file_exists (debugfile, crc32, objfile->name))
@@ -1279,7 +1279,7 @@
  
    /* Then try in the global debugfile directory.  */
    strcpy (debugfile, debug_file_directory);
-@@ -1434,11 +2244,7 @@ find_separate_debug_file (struct objfile
+@@ -1451,11 +2261,7 @@ find_separate_debug_file (struct objfile
    strcat (debugfile, basename);
  
    if (separate_debug_file_exists (debugfile, crc32, objfile->name))
@@ -1292,7 +1292,7 @@
  
    /* If the file is in the sysroot, try using its base path in the
       global debugfile directory.  */
-@@ -1453,20 +2259,18 @@ find_separate_debug_file (struct objfile
+@@ -1470,20 +2276,18 @@ find_separate_debug_file (struct objfile
        strcat (debugfile, basename);
  
        if (separate_debug_file_exists (debugfile, crc32, objfile->name))
@@ -1321,7 +1321,7 @@
  }
  
  
-@@ -4196,4 +5000,16 @@ Show printing of symbol loading messages
+@@ -4215,4 +5019,16 @@ Show printing of symbol loading messages
                             NULL,
                             NULL,
                             &setprintlist, &showprintlist);
@@ -1338,11 +1338,11 @@
 +
 +  observer_attach_executable_changed (debug_print_executable_changed);
  }
-Index: gdb-6.8.50.20081128/gdb/symfile.h
+Index: gdb-6.8.50.20090226/gdb/symfile.h
 ===================================================================
---- gdb-6.8.50.20081128.orig/gdb/symfile.h	2008-09-05 13:37:17.000000000 +0200
-+++ gdb-6.8.50.20081128/gdb/symfile.h	2008-12-04 10:34:31.000000000 +0100
-@@ -365,6 +365,14 @@ extern int symfile_map_offsets_to_segmen
+--- gdb-6.8.50.20090226.orig/gdb/symfile.h	2009-02-27 00:04:32.000000000 +0100
++++ gdb-6.8.50.20090226/gdb/symfile.h	2009-02-28 07:31:58.000000000 +0100
+@@ -372,6 +372,14 @@ extern int symfile_map_offsets_to_segmen
  struct symfile_segment_data *get_symfile_segment_data (bfd *abfd);
  void free_symfile_segment_data (struct symfile_segment_data *data);
  
@@ -1357,11 +1357,11 @@
  /* From dwarf2read.c */
  
  extern int dwarf2_has_info (struct objfile *);
-Index: gdb-6.8.50.20081128/gdb/testsuite/lib/gdb.exp
+Index: gdb-6.8.50.20090226/gdb/testsuite/lib/gdb.exp
 ===================================================================
---- gdb-6.8.50.20081128.orig/gdb/testsuite/lib/gdb.exp	2008-12-04 01:33:56.000000000 +0100
-+++ gdb-6.8.50.20081128/gdb/testsuite/lib/gdb.exp	2008-12-04 10:34:31.000000000 +0100
-@@ -1227,6 +1227,16 @@ proc default_gdb_start { } {
+--- gdb-6.8.50.20090226.orig/gdb/testsuite/lib/gdb.exp	2009-02-27 00:04:34.000000000 +0100
++++ gdb-6.8.50.20090226/gdb/testsuite/lib/gdb.exp	2009-02-28 07:31:58.000000000 +0100
+@@ -1230,6 +1230,16 @@ proc default_gdb_start { } {
  	    warning "Couldn't set the width to 0."
  	}
      }
@@ -1378,10 +1378,10 @@
      return 0;
  }
  
-Index: gdb-6.8.50.20081128/gdb/tui/tui-interp.c
+Index: gdb-6.8.50.20090226/gdb/tui/tui-interp.c
 ===================================================================
---- gdb-6.8.50.20081128.orig/gdb/tui/tui-interp.c	2008-03-14 20:55:51.000000000 +0100
-+++ gdb-6.8.50.20081128/gdb/tui/tui-interp.c	2008-12-04 10:34:31.000000000 +0100
+--- gdb-6.8.50.20090226.orig/gdb/tui/tui-interp.c	2009-02-21 17:14:50.000000000 +0100
++++ gdb-6.8.50.20090226/gdb/tui/tui-interp.c	2009-02-28 07:31:58.000000000 +0100
 @@ -30,6 +30,7 @@
  #include "tui/tui.h"
  #include "tui/tui-io.h"

gdb-6.6-step-thread-exit.patch:

Index: gdb-6.6-step-thread-exit.patch
===================================================================
RCS file: /cvs/pkgs/rpms/gdb/devel/gdb-6.6-step-thread-exit.patch,v
retrieving revision 1.3
retrieving revision 1.4
diff -u -r1.3 -r1.4
--- gdb-6.6-step-thread-exit.patch	14 Dec 2008 14:05:16 -0000	1.3
+++ gdb-6.6-step-thread-exit.patch	2 Mar 2009 00:11:35 -0000	1.4
@@ -1,13 +1,13 @@
-Index: gdb-6.8.50.20081128/gdb/linux-nat.c
+Index: gdb-6.8.50.20090226/gdb/linux-nat.c
 ===================================================================
---- gdb-6.8.50.20081128.orig/gdb/linux-nat.c	2008-12-04 01:44:26.000000000 +0100
-+++ gdb-6.8.50.20081128/gdb/linux-nat.c	2008-12-04 10:21:32.000000000 +0100
-@@ -1661,15 +1661,17 @@ resume_set_callback (struct lwp_info *lp
- }
+--- gdb-6.8.50.20090226.orig/gdb/linux-nat.c	2009-02-27 00:04:35.000000000 +0100
++++ gdb-6.8.50.20090226/gdb/linux-nat.c	2009-02-27 07:51:44.000000000 +0100
+@@ -1790,15 +1790,17 @@ resume_set_callback (struct lwp_info *lp
  
  static void
--linux_nat_resume (ptid_t ptid, int step, enum target_signal signo)
-+linux_nat_resume (ptid_t ptid, int step_int, enum target_signal signo)
+ linux_nat_resume (struct target_ops *ops,
+-		  ptid_t ptid, int step, enum target_signal signo)
++		  ptid_t ptid, int step_int, enum target_signal signo)
  {
    struct lwp_info *lp;
    int resume_all;
@@ -22,7 +22,7 @@
  			target_pid_to_str (ptid),
  			signo ? strsignal (signo) : "0",
  			target_pid_to_str (inferior_ptid));
-@@ -2586,6 +2588,9 @@ linux_nat_filter_event (int lwpid, int s
+@@ -2740,6 +2742,9 @@ linux_nat_filter_event (int lwpid, int s
    /* Check if the thread has exited.  */
    if ((WIFEXITED (status) || WIFSIGNALED (status)) && num_lwps > 1)
      {
@@ -32,7 +32,7 @@
        /* If this is the main thread, we must stop all threads and
  	 verify if they are still alive.  This is because in the nptl
  	 thread model, there is no signal issued for exiting LWPs
-@@ -2609,6 +2614,26 @@ linux_nat_filter_event (int lwpid, int s
+@@ -2763,6 +2768,26 @@ linux_nat_filter_event (int lwpid, int s
  
        exit_lwp (lp);
  

gdb-6.8-inlining-addon.patch:

Index: gdb-6.8-inlining-addon.patch
===================================================================
RCS file: /cvs/pkgs/rpms/gdb/devel/gdb-6.8-inlining-addon.patch,v
retrieving revision 1.3
retrieving revision 1.4
diff -u -r1.3 -r1.4
--- gdb-6.8-inlining-addon.patch	11 Feb 2009 00:04:48 -0000	1.3
+++ gdb-6.8-inlining-addon.patch	2 Mar 2009 00:11:35 -0000	1.4
@@ -5,10 +5,10 @@
 resume() -> target_resume() move of clear_inline_frame_state() is for:
 gdb.mi/mi-nsmoribund.exp
 
-Index: gdb-6.8.50.20081214/gdb/testsuite/gdb.opt/inline-bt.c
+Index: gdb-6.8.50.20090226/gdb/testsuite/gdb.opt/inline-bt.c
 ===================================================================
---- gdb-6.8.50.20081214.orig/gdb/testsuite/gdb.opt/inline-bt.c	2009-02-09 13:28:48.000000000 +0100
-+++ gdb-6.8.50.20081214/gdb/testsuite/gdb.opt/inline-bt.c	2009-02-09 13:28:49.000000000 +0100
+--- gdb-6.8.50.20090226.orig/gdb/testsuite/gdb.opt/inline-bt.c	2009-02-28 07:34:09.000000000 +0100
++++ gdb-6.8.50.20090226/gdb/testsuite/gdb.opt/inline-bt.c	2009-02-28 07:37:54.000000000 +0100
 @@ -13,10 +13,16 @@
     You should have received a copy of the GNU General Public License
     along with this program.  If not, see <http://www.gnu.org/licenses/>.  */
@@ -28,10 +28,10 @@
  
  inline int func1(void)
  {
-Index: gdb-6.8.50.20081214/gdb/testsuite/gdb.opt/inline-bt.exp
+Index: gdb-6.8.50.20090226/gdb/testsuite/gdb.opt/inline-bt.exp
 ===================================================================
---- gdb-6.8.50.20081214.orig/gdb/testsuite/gdb.opt/inline-bt.exp	2009-02-09 13:28:48.000000000 +0100
-+++ gdb-6.8.50.20081214/gdb/testsuite/gdb.opt/inline-bt.exp	2009-02-09 13:28:49.000000000 +0100
+--- gdb-6.8.50.20090226.orig/gdb/testsuite/gdb.opt/inline-bt.exp	2009-02-28 07:34:09.000000000 +0100
++++ gdb-6.8.50.20090226/gdb/testsuite/gdb.opt/inline-bt.exp	2009-02-28 07:37:54.000000000 +0100
 @@ -41,18 +41,19 @@ if { [skip_inline_frame_tests] } {
      return
  }
@@ -60,10 +60,10 @@
  
  gdb_test "continue" ".*set breakpoint 1 here.*" "continue to bar (3)"
  gdb_test "backtrace" "#0  bar.*#1  .*func1.*#2  .*func2.*#3  .*main.*" \
-Index: gdb-6.8.50.20081214/gdb/testsuite/gdb.opt/inline-cmds.c
+Index: gdb-6.8.50.20090226/gdb/testsuite/gdb.opt/inline-cmds.c
 ===================================================================
---- gdb-6.8.50.20081214.orig/gdb/testsuite/gdb.opt/inline-cmds.c	2009-02-09 13:28:48.000000000 +0100
-+++ gdb-6.8.50.20081214/gdb/testsuite/gdb.opt/inline-cmds.c	2009-02-09 13:28:49.000000000 +0100
+--- gdb-6.8.50.20090226.orig/gdb/testsuite/gdb.opt/inline-cmds.c	2009-02-28 07:34:09.000000000 +0100
++++ gdb-6.8.50.20090226/gdb/testsuite/gdb.opt/inline-cmds.c	2009-02-28 07:37:54.000000000 +0100
 @@ -13,13 +13,19 @@
     You should have received a copy of the GNU General Public License
     along with this program.  If not, see <http://www.gnu.org/licenses/>.  */
@@ -86,10 +86,10 @@
  inline int func1(void)
  {
    bar ();
-Index: gdb-6.8.50.20081214/gdb/testsuite/gdb.opt/inline-cmds.exp
+Index: gdb-6.8.50.20090226/gdb/testsuite/gdb.opt/inline-cmds.exp
 ===================================================================
---- gdb-6.8.50.20081214.orig/gdb/testsuite/gdb.opt/inline-cmds.exp	2009-02-09 13:28:48.000000000 +0100
-+++ gdb-6.8.50.20081214/gdb/testsuite/gdb.opt/inline-cmds.exp	2009-02-09 13:30:16.000000000 +0100
+--- gdb-6.8.50.20090226.orig/gdb/testsuite/gdb.opt/inline-cmds.exp	2009-02-28 07:34:09.000000000 +0100
++++ gdb-6.8.50.20090226/gdb/testsuite/gdb.opt/inline-cmds.exp	2009-02-28 07:37:54.000000000 +0100
 @@ -45,28 +45,28 @@ if { [skip_inline_frame_tests] } {
  
  # First, check that the things we expected to be inlined really were,
@@ -180,10 +180,10 @@
 +gdb_test "info frame" "inlined into frame.*" "outer_inline2 inlined"
 +gdb_test "fini" "" "up from outer_inline2"
 +gdb_test "info frame" " in main \[^\n\]*\n source language.*" "main not inlined"
-Index: gdb-6.8.50.20081214/gdb/testsuite/gdb.opt/inline-locals.c
+Index: gdb-6.8.50.20090226/gdb/testsuite/gdb.opt/inline-locals.c
 ===================================================================
---- gdb-6.8.50.20081214.orig/gdb/testsuite/gdb.opt/inline-locals.c	2009-02-09 13:28:48.000000000 +0100
-+++ gdb-6.8.50.20081214/gdb/testsuite/gdb.opt/inline-locals.c	2009-02-09 13:28:49.000000000 +0100
+--- gdb-6.8.50.20090226.orig/gdb/testsuite/gdb.opt/inline-locals.c	2009-02-28 07:34:09.000000000 +0100
++++ gdb-6.8.50.20090226/gdb/testsuite/gdb.opt/inline-locals.c	2009-02-28 07:37:54.000000000 +0100
 @@ -13,11 +13,16 @@
     You should have received a copy of the GNU General Public License
     along with this program.  If not, see <http://www.gnu.org/licenses/>.  */
@@ -203,10 +203,10 @@
  
  inline int func1(int arg1)
  {
-Index: gdb-6.8.50.20081214/gdb/testsuite/gdb.opt/inline-locals.exp
+Index: gdb-6.8.50.20090226/gdb/testsuite/gdb.opt/inline-locals.exp
 ===================================================================
---- gdb-6.8.50.20081214.orig/gdb/testsuite/gdb.opt/inline-locals.exp	2009-02-09 13:28:48.000000000 +0100
-+++ gdb-6.8.50.20081214/gdb/testsuite/gdb.opt/inline-locals.exp	2009-02-09 13:28:49.000000000 +0100
+--- gdb-6.8.50.20090226.orig/gdb/testsuite/gdb.opt/inline-locals.exp	2009-02-28 07:34:09.000000000 +0100
++++ gdb-6.8.50.20090226/gdb/testsuite/gdb.opt/inline-locals.exp	2009-02-28 07:37:54.000000000 +0100
 @@ -43,8 +43,8 @@ if { [skip_inline_var_tests] } {
  
  set no_frames [skip_inline_frame_tests]
@@ -236,10 +236,10 @@
 +    setup_kfail *-*-* "gcc/debug.optimization"
 +}
  gdb_test "print array\[0\]" "\\\$$decimal = 184" "print local (3)"
-Index: gdb-6.8.50.20081214/gdb/frame.c
+Index: gdb-6.8.50.20090226/gdb/frame.c
 ===================================================================
---- gdb-6.8.50.20081214.orig/gdb/frame.c	2009-02-09 13:28:48.000000000 +0100
-+++ gdb-6.8.50.20081214/gdb/frame.c	2009-02-09 13:30:16.000000000 +0100
+--- gdb-6.8.50.20090226.orig/gdb/frame.c	2009-02-28 07:34:09.000000000 +0100
++++ gdb-6.8.50.20090226/gdb/frame.c	2009-02-28 07:37:54.000000000 +0100
 @@ -269,7 +269,7 @@ fprint_frame (struct ui_file *file, stru
  static struct frame_info *
  skip_inlined_frames (struct frame_info *frame)
@@ -249,7 +249,7 @@
      frame = get_prev_frame (frame);
  
    return frame;
-@@ -1697,6 +1697,7 @@ get_frame_address_in_block (struct frame
+@@ -1670,6 +1670,7 @@ get_frame_address_in_block (struct frame
  {
    /* A draft address.  */
    CORE_ADDR pc = get_frame_pc (this_frame);
@@ -257,7 +257,7 @@
  
    struct frame_info *next_frame = this_frame->next;
  
-@@ -1739,6 +1740,9 @@ get_frame_address_in_block (struct frame
+@@ -1712,6 +1713,9 @@ get_frame_address_in_block (struct frame
       while in an inlined function, then the code address of the
       "calling" normal function should not be adjusted either.  */
  
@@ -267,7 +267,7 @@
    while (get_frame_type (next_frame) == INLINE_FRAME)
      next_frame = next_frame->next;
  
-@@ -1770,7 +1774,7 @@ find_frame_sal (struct frame_info *frame
+@@ -1743,7 +1747,7 @@ find_frame_sal (struct frame_info *frame
  	sym = inline_skipped_symbol (inferior_ptid);
  
        init_sal (sal);
@@ -276,10 +276,10 @@
  	{
  	  sal->symtab = SYMBOL_SYMTAB (sym);
  	  sal->line = SYMBOL_LINE (sym);
-Index: gdb-6.8.50.20081214/gdb/breakpoint.c
+Index: gdb-6.8.50.20090226/gdb/breakpoint.c
 ===================================================================
---- gdb-6.8.50.20081214.orig/gdb/breakpoint.c	2009-02-09 13:28:48.000000000 +0100
-+++ gdb-6.8.50.20081214/gdb/breakpoint.c	2009-02-09 13:30:16.000000000 +0100
+--- gdb-6.8.50.20090226.orig/gdb/breakpoint.c	2009-02-28 07:34:09.000000000 +0100
++++ gdb-6.8.50.20090226/gdb/breakpoint.c	2009-02-28 07:37:54.000000000 +0100
 @@ -57,6 +57,7 @@
  #include "top.h"
  #include "wrapper.h"
@@ -288,7 +288,7 @@
  
  #include "mi/mi-common.h"
  
-@@ -2833,10 +2834,24 @@ bpstat_check_breakpoint_conditions (bpst
+@@ -2902,10 +2903,24 @@ bpstat_check_breakpoint_conditions (bpst
    const struct bp_location *bl = bs->breakpoint_at;
    struct breakpoint *b = bl->owner;
  
@@ -317,7 +317,7 @@
      {
        int value_is_zero = 0;
        
-@@ -2975,6 +2990,12 @@ bpstat_stop_status (CORE_ADDR bp_addr, p
+@@ -3044,6 +3059,12 @@ bpstat_stop_status (CORE_ADDR bp_addr, p
  	    bs->print = 0;
  	  }
  	bs->commands = copy_command_lines (bs->commands);
@@ -330,7 +330,7 @@
        }
  
      /* Print nothing for this entry if we dont stop or if we dont print.  */
-@@ -4826,9 +4847,9 @@ set_momentary_breakpoint (struct symtab_
+@@ -5168,9 +5189,9 @@ set_momentary_breakpoint (struct symtab_
  {
    struct breakpoint *b;
  
@@ -343,10 +343,10 @@
  
    b = set_raw_breakpoint (sal, type);
    b->enable_state = bp_enabled;
-Index: gdb-6.8.50.20081214/gdb/inline-frame.c
+Index: gdb-6.8.50.20090226/gdb/inline-frame.c
 ===================================================================
---- gdb-6.8.50.20081214.orig/gdb/inline-frame.c	2009-02-09 13:28:48.000000000 +0100
-+++ gdb-6.8.50.20081214/gdb/inline-frame.c	2009-02-09 13:30:16.000000000 +0100
+--- gdb-6.8.50.20090226.orig/gdb/inline-frame.c	2009-02-28 07:34:09.000000000 +0100
++++ gdb-6.8.50.20090226/gdb/inline-frame.c	2009-02-28 07:37:54.000000000 +0100
 @@ -183,6 +183,12 @@ inline_frame_sniffer (const struct frame
    if (frame_block == NULL)
      return 0;
@@ -423,10 +423,10 @@
  /* Return the number of hidden functions inlined into the current
     frame.  */
  
-Index: gdb-6.8.50.20081214/gdb/testsuite/gdb.opt/inline-markers.c
+Index: gdb-6.8.50.20090226/gdb/testsuite/gdb.opt/inline-markers.c
 ===================================================================
---- gdb-6.8.50.20081214.orig/gdb/testsuite/gdb.opt/inline-markers.c	2009-02-09 13:28:48.000000000 +0100
-+++ gdb-6.8.50.20081214/gdb/testsuite/gdb.opt/inline-markers.c	2009-02-09 13:28:49.000000000 +0100
+--- gdb-6.8.50.20090226.orig/gdb/testsuite/gdb.opt/inline-markers.c	2009-02-28 07:34:09.000000000 +0100
++++ gdb-6.8.50.20090226/gdb/testsuite/gdb.opt/inline-markers.c	2009-02-28 07:37:54.000000000 +0100
 @@ -15,11 +15,6 @@
  
  extern int x, y;
@@ -439,10 +439,10 @@
  void marker(void)
  {
    x += y; /* set breakpoint 2 here */
-Index: gdb-6.8.50.20081214/gdb/gdbthread.h
+Index: gdb-6.8.50.20090226/gdb/gdbthread.h
 ===================================================================
---- gdb-6.8.50.20081214.orig/gdb/gdbthread.h	2009-02-09 13:28:48.000000000 +0100
-+++ gdb-6.8.50.20081214/gdb/gdbthread.h	2009-02-09 13:30:16.000000000 +0100
+--- gdb-6.8.50.20090226.orig/gdb/gdbthread.h	2009-02-28 07:34:09.000000000 +0100
++++ gdb-6.8.50.20090226/gdb/gdbthread.h	2009-02-28 07:37:54.000000000 +0100
 @@ -180,6 +180,12 @@ struct thread_info
  
    /* Private data used by the target vector implementation.  */
@@ -456,11 +456,11 @@
  };
  
  /* Create an empty thread list, or empty the existing one.  */
-Index: gdb-6.8.50.20081214/gdb/infcmd.c
+Index: gdb-6.8.50.20090226/gdb/infcmd.c
 ===================================================================
---- gdb-6.8.50.20081214.orig/gdb/infcmd.c	2009-02-09 13:28:48.000000000 +0100
-+++ gdb-6.8.50.20081214/gdb/infcmd.c	2009-02-09 13:30:16.000000000 +0100
-@@ -1373,11 +1373,11 @@ finish_command_continuation (void *arg)
+--- gdb-6.8.50.20090226.orig/gdb/infcmd.c	2009-02-28 07:34:09.000000000 +0100
++++ gdb-6.8.50.20090226/gdb/infcmd.c	2009-02-28 07:37:54.000000000 +0100
+@@ -1391,11 +1391,11 @@ finish_command_continuation (void *arg)
        struct type *value_type;
  
        value_type = TYPE_TARGET_TYPE (SYMBOL_TYPE (a->function));
@@ -474,7 +474,7 @@
  	print_return_value (SYMBOL_TYPE (a->function), value_type);
      }
  
-@@ -1481,6 +1481,16 @@ finish_forward (struct symbol *function,
+@@ -1499,6 +1499,16 @@ finish_forward (struct symbol *function,
  
    old_chain = make_cleanup_delete_breakpoint (breakpoint);
  
@@ -491,7 +491,7 @@
    tp->proceed_to_finish = 1;    /* We want stop_registers, please...  */
    make_cleanup_restore_integer (&suppress_stop_observer);
    suppress_stop_observer = 1;
-@@ -1504,7 +1514,9 @@ finish_forward (struct symbol *function,
+@@ -1522,7 +1532,9 @@ finish_forward (struct symbol *function,
  static void
  finish_command (char *arg, int from_tty)
  {
@@ -502,7 +502,7 @@
    struct symbol *function;
  
    int async_exec = 0;
-@@ -1535,46 +1547,63 @@ finish_command (char *arg, int from_tty)
+@@ -1553,46 +1565,63 @@ finish_command (char *arg, int from_tty)
    if (!target_has_execution)
      error (_("The program is not running."));
  
@@ -584,7 +584,7 @@
  
    /* Print info on the selected frame, including level number but not
       source.  */
-@@ -1588,10 +1617,14 @@ finish_command (char *arg, int from_tty)
+@@ -1606,10 +1635,14 @@ finish_command (char *arg, int from_tty)
        print_stack_frame (get_selected_frame (NULL), 1, LOCATION);
      }
  
@@ -600,11 +600,11 @@
  }
  
  
-Index: gdb-6.8.50.20081214/gdb/infrun.c
+Index: gdb-6.8.50.20090226/gdb/infrun.c
 ===================================================================
---- gdb-6.8.50.20081214.orig/gdb/infrun.c	2009-02-09 13:29:51.000000000 +0100
-+++ gdb-6.8.50.20081214/gdb/infrun.c	2009-02-09 13:30:16.000000000 +0100
-@@ -1147,8 +1150,6 @@ a command like `return' or `jump' to con
+--- gdb-6.8.50.20090226.orig/gdb/infrun.c	2009-02-28 07:37:36.000000000 +0100
++++ gdb-6.8.50.20090226/gdb/infrun.c	2009-02-28 07:37:54.000000000 +0100
+@@ -1152,8 +1152,6 @@ a command like `return' or `jump' to con
  	    step = 0;
  	}
  
@@ -613,7 +613,7 @@
        if (debug_displaced
            && use_displaced_stepping (gdbarch)
            && tp->trap_expected)
-@@ -1201,6 +1201,8 @@ clear_proceed_status_thread (struct thre
+@@ -1205,6 +1203,8 @@ clear_proceed_status_thread (struct thre
  
    /* Discard any remaining commands or status from previous stop.  */
    bpstat_clear (&tp->stop_bpstat);
@@ -622,8 +622,10 @@
  }
  
  static int
---- ./gdb/target.c	2009-02-10 23:45:59.000000000 +0100
-+++ ./gdb/target.c	2009-02-10 23:43:29.000000000 +0100
+Index: gdb-6.8.50.20090226/gdb/target.c
+===================================================================
+--- gdb-6.8.50.20090226.orig/gdb/target.c	2009-02-28 07:31:48.000000000 +0100
++++ gdb-6.8.50.20090226/gdb/target.c	2009-02-28 07:38:36.000000000 +0100
 @@ -41,6 +41,7 @@
  #include "target-descriptions.h"
  #include "gdbthread.h"
@@ -632,18 +634,18 @@
  
  static void target_info (char *, int);
  
-@@ -1938,6 +1939,7 @@ target_pid_to_str (ptid_t ptid)
- void
- target_resume (ptid_t ptid, int step, enum target_signal signal)
+@@ -1925,6 +1926,7 @@ target_resume (ptid_t ptid, int step, en
  {
+   struct target_ops *t;
+ 
 +  clear_inline_frame_state (ptid);
    dcache_invalidate (target_dcache);
-   (*current_target.to_resume) (ptid, step, signal);
-   set_executing (ptid, 1);
-Index: gdb-6.8.50.20081214/gdb/inline-frame.h
+ 
+   for (t = current_target.beneath; t != NULL; t = t->beneath)
+Index: gdb-6.8.50.20090226/gdb/inline-frame.h
 ===================================================================
---- gdb-6.8.50.20081214.orig/gdb/inline-frame.h	2009-02-09 13:28:48.000000000 +0100
-+++ gdb-6.8.50.20081214/gdb/inline-frame.h	2009-02-09 13:30:16.000000000 +0100
+--- gdb-6.8.50.20090226.orig/gdb/inline-frame.h	2009-02-28 07:34:09.000000000 +0100
++++ gdb-6.8.50.20090226/gdb/inline-frame.h	2009-02-28 07:37:54.000000000 +0100
 @@ -43,6 +43,10 @@ void clear_inline_frame_state (ptid_t pt
  
  void step_into_inline_frame (ptid_t ptid);
@@ -655,9 +657,11 @@
  /* Return the number of hidden functions inlined into the current
     frame.  */
  
---- gdb-6.8.50.20090209/gdb/infcall.c	2009-02-10 00:16:10.000000000 +0100
-+++ gdb-6.8.50.20090209/gdb/infcall.c-removed	2009-02-10 00:15:58.000000000 +0100
-@@ -841,8 +841,15 @@ When the function is done executing, GDB
+Index: gdb-6.8.50.20090226/gdb/infcall.c
+===================================================================
+--- gdb-6.8.50.20090226.orig/gdb/infcall.c	2009-02-28 07:34:09.000000000 +0100
++++ gdb-6.8.50.20090226/gdb/infcall.c	2009-02-28 07:37:54.000000000 +0100
+@@ -898,8 +898,15 @@ The program being debugged exited while 
  
  	  if (unwind_on_signal_p)
  	    {

gdb-6.8-inlining.patch:

Index: gdb-6.8-inlining.patch
===================================================================
RCS file: /cvs/pkgs/rpms/gdb/devel/gdb-6.8-inlining.patch,v
retrieving revision 1.7
retrieving revision 1.8
diff -u -r1.7 -r1.8
--- gdb-6.8-inlining.patch	11 Feb 2009 00:04:48 -0000	1.7
+++ gdb-6.8-inlining.patch	2 Mar 2009 00:11:35 -0000	1.8
@@ -5,10 +5,10 @@
 
 Removed dwarf_expr_frame_base NULL check duplicity with *-vla.patch.
 
-Index: gdb-6.8.50.20090209/gdb/NEWS
+Index: gdb-6.8.50.20090226/gdb/NEWS
 ===================================================================
---- gdb-6.8.50.20090209.orig/gdb/NEWS	2009-02-07 16:00:57.000000000 +0100
-+++ gdb-6.8.50.20090209/gdb/NEWS	2009-02-09 16:06:54.000000000 +0100
+--- gdb-6.8.50.20090226.orig/gdb/NEWS	2009-02-27 00:04:32.000000000 +0100
++++ gdb-6.8.50.20090226/gdb/NEWS	2009-02-28 07:34:29.000000000 +0100
 @@ -1,6 +1,11 @@
  		What has changed in GDB?
  	     (Organized release by release)
@@ -20,11 +20,11 @@
 +
  *** Changes since GDB 6.8
  
- * GDB now supports automatic retrieval of shared library files from
-Index: gdb-6.8.50.20090209/gdb/block.c
+ * GDB now has support for multi-byte and wide character sets on the
+Index: gdb-6.8.50.20090226/gdb/block.c
 ===================================================================
---- gdb-6.8.50.20090209.orig/gdb/block.c	2009-01-03 06:57:50.000000000 +0100
-+++ gdb-6.8.50.20090209/gdb/block.c	2009-02-09 16:06:00.000000000 +0100
+--- gdb-6.8.50.20090226.orig/gdb/block.c	2009-01-03 06:57:50.000000000 +0100
++++ gdb-6.8.50.20090226/gdb/block.c	2009-02-28 07:34:09.000000000 +0100
 @@ -47,8 +47,16 @@ contained_in (const struct block *a, con
  {
    if (!a || !b)
@@ -67,10 +67,10 @@
  /* Return the blockvector immediately containing the innermost lexical
     block containing the specified pc value and section, or 0 if there
     is none.  PBLOCK is a pointer to the block.  If PBLOCK is NULL, we
-Index: gdb-6.8.50.20090209/gdb/block.h
+Index: gdb-6.8.50.20090226/gdb/block.h
 ===================================================================
---- gdb-6.8.50.20090209.orig/gdb/block.h	2009-01-03 06:57:50.000000000 +0100
-+++ gdb-6.8.50.20090209/gdb/block.h	2009-02-09 16:06:00.000000000 +0100
+--- gdb-6.8.50.20090226.orig/gdb/block.h	2009-01-03 06:57:50.000000000 +0100
++++ gdb-6.8.50.20090226/gdb/block.h	2009-02-28 07:34:09.000000000 +0100
 @@ -65,7 +65,7 @@ struct block
    CORE_ADDR endaddr;
  
@@ -89,10 +89,10 @@
  extern int contained_in (const struct block *, const struct block *);
  
  extern struct blockvector *blockvector_for_pc (CORE_ADDR, struct block **);
-Index: gdb-6.8.50.20090209/gdb/blockframe.c
+Index: gdb-6.8.50.20090226/gdb/blockframe.c
 ===================================================================
---- gdb-6.8.50.20090209.orig/gdb/blockframe.c	2009-01-03 06:57:50.000000000 +0100
-+++ gdb-6.8.50.20090209/gdb/blockframe.c	2009-02-09 16:06:00.000000000 +0100
+--- gdb-6.8.50.20090226.orig/gdb/blockframe.c	2009-01-03 06:57:50.000000000 +0100
++++ gdb-6.8.50.20090226/gdb/blockframe.c	2009-02-28 07:34:09.000000000 +0100
 @@ -36,6 +36,7 @@
  #include "command.h"
  #include "gdbcmd.h"
@@ -161,11 +161,11 @@
  	return frame;
  
        frame = get_prev_frame (frame);
-Index: gdb-6.8.50.20090209/gdb/breakpoint.c
+Index: gdb-6.8.50.20090226/gdb/breakpoint.c
 ===================================================================
---- gdb-6.8.50.20090209.orig/gdb/breakpoint.c	2009-02-09 16:04:10.000000000 +0100
-+++ gdb-6.8.50.20090209/gdb/breakpoint.c	2009-02-09 16:06:00.000000000 +0100
-@@ -2615,19 +2615,21 @@ watchpoint_check (void *p)
+--- gdb-6.8.50.20090226.orig/gdb/breakpoint.c	2009-02-28 07:33:47.000000000 +0100
++++ gdb-6.8.50.20090226/gdb/breakpoint.c	2009-02-28 07:34:09.000000000 +0100
+@@ -2641,19 +2641,21 @@ watchpoint_check (void *p)
      within_current_scope = 1;
    else
      {
@@ -195,7 +195,7 @@
  
        /* in_function_epilogue_p() returns a non-zero value if we're still
  	 in the function but the stack frame has already been invalidated.
-@@ -2639,10 +2641,9 @@ watchpoint_check (void *p)
+@@ -2665,10 +2667,9 @@ watchpoint_check (void *p)
  	 that the watchpoint frame couldn't be found by frame_find_by_id()
  	 because the current PC is currently in an epilogue.  Calling
  	 gdbarch_in_function_epilogue_p() also when fr == NULL fixes that. */
@@ -208,7 +208,7 @@
  	/* If we end up stopping, the current frame will get selected
  	   in normal_stop.  So this call to select_frame won't affect
  	   the user.  */
-@@ -2876,7 +2877,7 @@ bpstat_check_breakpoint_conditions (bpst
+@@ -2902,7 +2903,7 @@ bpstat_check_breakpoint_conditions (bpst
    struct breakpoint *b = bl->owner;
  
    if (frame_id_p (b->frame_id)
@@ -217,7 +217,7 @@
      bs->stop = 0;
    else if (bs->stop)
      {
-@@ -2891,8 +2892,12 @@ bpstat_check_breakpoint_conditions (bpst
+@@ -2917,8 +2918,12 @@ bpstat_check_breakpoint_conditions (bpst
        
        if (bl->cond && bl->owner->disposition != disp_del_at_next_stop)
  	{
@@ -232,7 +232,7 @@
  	  select_frame (get_current_frame ());
  	  value_is_zero
  	    = catch_errors (breakpoint_cond_eval, (bl->cond),
-@@ -4862,6 +4867,11 @@ set_momentary_breakpoint (struct symtab_
+@@ -5162,6 +5167,11 @@ set_momentary_breakpoint (struct symtab_
  			  enum bptype type)
  {
    struct breakpoint *b;
@@ -244,7 +244,7 @@
    b = set_raw_breakpoint (sal, type);
    b->enable_state = bp_enabled;
    b->disposition = disp_donttouch;
-@@ -5872,7 +5882,6 @@ watch_command_1 (char *arg, int accessfl
+@@ -6175,7 +6185,6 @@ watch_command_1 (char *arg, int accessfl
    struct block *exp_valid_block;
    struct value *val, *mark, *val_chain;
    struct frame_info *frame;
@@ -252,7 +252,7 @@
    char *exp_start = NULL;
    char *exp_end = NULL;
    char *tok, *id_tok_start, *end_tok;
-@@ -6033,34 +6042,34 @@ watch_command_1 (char *arg, int accessfl
+@@ -6336,34 +6345,34 @@ watch_command_1 (char *arg, int accessfl
      bp_type = bp_watchpoint;
  
    frame = block_innermost_frame (exp_valid_block);
@@ -305,7 +305,7 @@
      }
  
    /* Now set up the breakpoint.  */
-@@ -6241,7 +6250,6 @@ until_break_command (char *arg, int from
+@@ -6544,7 +6553,6 @@ until_break_command (char *arg, int from
    struct symtabs_and_lines sals;
    struct symtab_and_line sal;
    struct frame_info *frame = get_selected_frame (NULL);
@@ -313,7 +313,7 @@
    struct breakpoint *breakpoint;
    struct breakpoint *breakpoint2 = NULL;
    struct cleanup *old_chain;
-@@ -6274,20 +6282,22 @@ until_break_command (char *arg, int from
+@@ -6577,20 +6585,22 @@ until_break_command (char *arg, int from
         we don't specify a frame at which we need to stop.  */
      breakpoint = set_momentary_breakpoint (sal, null_frame_id, bp_until);
    else
@@ -342,10 +342,10 @@
  					      bp_until);
        make_cleanup_delete_breakpoint (breakpoint2);
      }
-Index: gdb-6.8.50.20090209/gdb/buildsym.c
+Index: gdb-6.8.50.20090226/gdb/buildsym.c
 ===================================================================
---- gdb-6.8.50.20090209.orig/gdb/buildsym.c	2009-01-03 06:57:50.000000000 +0100
-+++ gdb-6.8.50.20090209/gdb/buildsym.c	2009-02-09 16:06:00.000000000 +0100
+--- gdb-6.8.50.20090226.orig/gdb/buildsym.c	2009-01-03 06:57:50.000000000 +0100
++++ gdb-6.8.50.20090226/gdb/buildsym.c	2009-02-28 07:34:09.000000000 +0100
 @@ -1159,6 +1159,12 @@ end_symtab (CORE_ADDR end_addr, struct o
  	  struct symbol *sym;
  	  struct dict_iterator iter;
@@ -359,10 +359,10 @@
  	  for (sym = dict_iterator_first (BLOCK_DICT (block), &iter);
  	       sym != NULL;
  	       sym = dict_iterator_next (&iter))
-Index: gdb-6.8.50.20090209/gdb/doc/gdb.texinfo
+Index: gdb-6.8.50.20090226/gdb/doc/gdb.texinfo
 ===================================================================
---- gdb-6.8.50.20090209.orig/gdb/doc/gdb.texinfo	2009-02-09 16:04:10.000000000 +0100
-+++ gdb-6.8.50.20090209/gdb/doc/gdb.texinfo	2009-02-09 16:06:00.000000000 +0100
+--- gdb-6.8.50.20090226.orig/gdb/doc/gdb.texinfo	2009-02-28 07:33:47.000000000 +0100
++++ gdb-6.8.50.20090226/gdb/doc/gdb.texinfo	2009-02-28 07:34:09.000000000 +0100
 @@ -137,6 +137,7 @@ software in general.  We will miss him.
  * Stack::                       Examining the stack
  * Source::                      Examining source files
@@ -371,7 +371,7 @@
  * Macros::                      Preprocessor Macros
  * Tracepoints::                 Debugging remote targets non-intrusively
  * Overlays::                    Debugging programs that use overlays
-@@ -1812,7 +1813,7 @@ To request debugging information, specif
+@@ -1824,7 +1825,7 @@ To request debugging information, specif
  the compiler.
  
  Programs that are to be shipped to your customers are compiled with
@@ -380,7 +380,7 @@
  compilers are unable to handle the @samp{-g} and @samp{-O} options
  together.  Using those compilers, you cannot generate optimized
  executables containing debugging information.
-@@ -1821,22 +1822,7 @@ executables containing debugging informa
+@@ -1833,22 +1834,7 @@ executables containing debugging informa
  without @samp{-O}, making it possible to debug optimized code.  We
  recommend that you @emph{always} use @samp{-g} whenever you compile a
  program.  You may think your program is correct, but there is no sense
@@ -404,7 +404,7 @@
  
  Older versions of the @sc{gnu} C compiler permitted a variant option
  @w{@samp{-gg}} for debugging information.  @value{GDBN} no longer supports this
-@@ -8297,6 +8283,107 @@ $1 = 1
+@@ -8393,6 +8379,107 @@ $1 = 1
  $2 = (void *) 0x8049560
  @end smallexample
  
@@ -512,10 +512,10 @@
  @node Macros
  @chapter C Preprocessor Macros
  
-Index: gdb-6.8.50.20090209/gdb/dwarf2loc.c
+Index: gdb-6.8.50.20090226/gdb/dwarf2loc.c
 ===================================================================
---- gdb-6.8.50.20090209.orig/gdb/dwarf2loc.c	2009-02-09 15:38:54.000000000 +0100
-+++ gdb-6.8.50.20090209/gdb/dwarf2loc.c	2009-02-09 16:06:00.000000000 +0100
+--- gdb-6.8.50.20090226.orig/gdb/dwarf2loc.c	2009-02-27 00:04:32.000000000 +0100
++++ gdb-6.8.50.20090226/gdb/dwarf2loc.c	2009-02-28 07:34:09.000000000 +0100
 @@ -31,6 +31,7 @@
  #include "regcache.h"
  #include "objfiles.h"
@@ -536,19 +536,19 @@
  
    /* If we found a frame-relative symbol then it was certainly within
       some function associated with a frame. If we can't find the frame,
-Index: gdb-6.8.50.20090209/gdb/dwarf2read.c
+Index: gdb-6.8.50.20090226/gdb/dwarf2read.c
 ===================================================================
---- gdb-6.8.50.20090209.orig/gdb/dwarf2read.c	2009-02-09 16:03:46.000000000 +0100
-+++ gdb-6.8.50.20090209/gdb/dwarf2read.c	2009-02-09 16:06:00.000000000 +0100
-@@ -46,6 +46,7 @@
- #include "hashtab.h"
- #include "command.h"
- #include "gdbcmd.h"
-+#include "block.h"
+--- gdb-6.8.50.20090226.orig/gdb/dwarf2read.c	2009-02-28 07:33:47.000000000 +0100
++++ gdb-6.8.50.20090226/gdb/dwarf2read.c	2009-02-28 07:36:45.000000000 +0100
+@@ -49,6 +49,7 @@
  #include "addrmap.h"
+ #include "f-lang.h"
  #include "top.h"
++#include "block.h"
  
-@@ -2788,12 +2789,8 @@ process_die (struct die_info *die, struc
+ #include <fcntl.h>
+ #include "gdb_string.h"
+@@ -2947,12 +2948,8 @@ process_die (struct die_info *die, struc
        read_file_scope (die, cu);
        break;
      case DW_TAG_subprogram:
@@ -562,15 +562,11 @@
        break;
      case DW_TAG_lexical_block:
      case DW_TAG_try_block:
-@@ -3056,10 +3053,25 @@ read_func_scope (struct die_info *die, s
-   CORE_ADDR lowpc;
-   CORE_ADDR highpc;
-   struct die_info *child_die;
--  struct attribute *attr;
-+  struct attribute *attr, *call_line, *call_file;
-   char *name;
+@@ -3233,6 +3230,22 @@ read_func_scope (struct die_info *die, s
    CORE_ADDR baseaddr;
    struct block *block;
+   unsigned die_children;
++  struct attribute *call_line, *call_file;
 +  int inlined_func = (die->tag == DW_TAG_inlined_subroutine);
 +
 +  if (inlined_func)
@@ -589,7 +585,7 @@
  
    baseaddr = ANOFFSET (objfile->section_offsets, SECT_OFF_TEXT (objfile));
  
-@@ -6949,6 +6961,9 @@ die_specification (struct die_info *die,
+@@ -7310,6 +7323,9 @@ die_specification (struct die_info *die,
  					     *spec_cu);
  
    if (spec_attr == NULL)
@@ -599,7 +595,7 @@
      return NULL;
    else
      return follow_die_ref (die, spec_attr, spec_cu);
-@@ -7632,6 +7647,7 @@ new_symbol (struct die_info *die, struct
+@@ -7993,6 +8009,7 @@ new_symbol (struct die_info *die, struct
    struct attribute *attr = NULL;
    struct attribute *attr2 = NULL;
    CORE_ADDR baseaddr;
@@ -607,7 +603,7 @@
  
    baseaddr = ANOFFSET (objfile->section_offsets, SECT_OFF_TEXT (objfile));
  
-@@ -7661,13 +7677,17 @@ new_symbol (struct die_info *die, struct
+@@ -8022,13 +8039,17 @@ new_symbol (struct die_info *die, struct
  	SYMBOL_TYPE (sym) = type;
        else
  	SYMBOL_TYPE (sym) = die_type (die, cu);
@@ -627,7 +623,7 @@
        if (attr)
  	{
  	  int file_index = DW_UNSND (attr);
-@@ -7714,6 +7734,14 @@ new_symbol (struct die_info *die, struct
+@@ -8075,6 +8096,14 @@ new_symbol (struct die_info *die, struct
  	      add_symbol_to_list (sym, cu->list_in_scope);
  	    }
  	  break;
@@ -642,7 +638,7 @@
  	case DW_TAG_variable:
  	  /* Compilation with minimal debug info may result in variables
  	     with missing type entries. Change the misleading `void' type
-@@ -7761,7 +7789,14 @@ new_symbol (struct die_info *die, struct
+@@ -8130,7 +8159,14 @@ new_symbol (struct die_info *die, struct
  	    }
  	  break;
  	case DW_TAG_formal_parameter:
@@ -658,10 +654,10 @@
  	  attr = dwarf2_attr (die, DW_AT_location, cu);
  	  if (attr)
  	    {
-Index: gdb-6.8.50.20090209/gdb/frame-unwind.c
+Index: gdb-6.8.50.20090226/gdb/frame-unwind.c
 ===================================================================
---- gdb-6.8.50.20090209.orig/gdb/frame-unwind.c	2009-01-03 06:57:51.000000000 +0100
-+++ gdb-6.8.50.20090209/gdb/frame-unwind.c	2009-02-09 16:06:00.000000000 +0100
+--- gdb-6.8.50.20090226.orig/gdb/frame-unwind.c	2009-01-03 06:57:51.000000000 +0100
++++ gdb-6.8.50.20090226/gdb/frame-unwind.c	2009-02-28 07:34:09.000000000 +0100
 @@ -21,6 +21,7 @@
  #include "frame.h"
  #include "frame-unwind.h"
@@ -682,10 +678,10 @@
    return table;
  }
  
-Index: gdb-6.8.50.20090209/gdb/frame.c
+Index: gdb-6.8.50.20090226/gdb/frame.c
 ===================================================================
---- gdb-6.8.50.20090209.orig/gdb/frame.c	2009-02-09 15:48:46.000000000 +0100
-+++ gdb-6.8.50.20090209/gdb/frame.c	2009-02-09 16:06:00.000000000 +0100
+--- gdb-6.8.50.20090226.orig/gdb/frame.c	2009-02-28 07:22:02.000000000 +0100
++++ gdb-6.8.50.20090226/gdb/frame.c	2009-02-28 07:34:09.000000000 +0100
 @@ -41,8 +41,14 @@
  #include "objfiles.h"
  #include "exceptions.h"
@@ -1042,10 +1038,10 @@
  }
  
  /* Per "frame.h", return the ``address'' of the frame.  Code should
-Index: gdb-6.8.50.20090209/gdb/frame.h
+Index: gdb-6.8.50.20090226/gdb/frame.h
 ===================================================================
---- gdb-6.8.50.20090209.orig/gdb/frame.h	2009-02-05 18:28:20.000000000 +0100
-+++ gdb-6.8.50.20090209/gdb/frame.h	2009-02-09 16:06:00.000000000 +0100
+--- gdb-6.8.50.20090226.orig/gdb/frame.h	2009-02-05 18:28:20.000000000 +0100
++++ gdb-6.8.50.20090226/gdb/frame.h	2009-02-28 07:34:09.000000000 +0100
 @@ -34,6 +34,9 @@
     frame_unwind_WHAT...(): Unwind THIS frame's WHAT from the NEXT
     frame.
@@ -1107,10 +1103,10 @@
  extern struct frame_id frame_unwind_id (struct frame_info *next_frame);
  
  /* Assuming that a frame is `normal', return its base-address, or 0 if
-Index: gdb-6.8.50.20090209/gdb/gdbthread.h
+Index: gdb-6.8.50.20090226/gdb/gdbthread.h
 ===================================================================
---- gdb-6.8.50.20090209.orig/gdb/gdbthread.h	2009-01-18 18:42:16.000000000 +0100
-+++ gdb-6.8.50.20090209/gdb/gdbthread.h	2009-02-09 16:06:00.000000000 +0100
+--- gdb-6.8.50.20090226.orig/gdb/gdbthread.h	2009-02-27 00:04:32.000000000 +0100
++++ gdb-6.8.50.20090226/gdb/gdbthread.h	2009-02-28 07:34:09.000000000 +0100
 @@ -83,6 +83,13 @@ struct thread_info
       This is how we know when we step into a subroutine call, and how
       to set the frame for the breakpoint used to step out.  */
@@ -1125,11 +1121,11 @@
    int current_line;
    struct symtab *current_symtab;
  
-Index: gdb-6.8.50.20090209/gdb/infcall.c
+Index: gdb-6.8.50.20090226/gdb/infcall.c
 ===================================================================
---- gdb-6.8.50.20090209.orig/gdb/infcall.c	2009-01-19 20:05:00.000000000 +0100
-+++ gdb-6.8.50.20090209/gdb/infcall.c	2009-02-09 16:08:45.000000000 +0100
-@@ -841,15 +841,8 @@ When the function is done executing, GDB
+--- gdb-6.8.50.20090226.orig/gdb/infcall.c	2009-02-27 00:04:32.000000000 +0100
++++ gdb-6.8.50.20090226/gdb/infcall.c	2009-02-28 07:34:09.000000000 +0100
+@@ -898,15 +898,8 @@ The program being debugged exited while 
  
  	  if (unwind_on_signal_p)
  	    {
@@ -1147,10 +1143,10 @@
  
  	      /* FIXME: Insert a bunch of wrap_here; name can be very
  		 long if it's a C++ name with arguments and stuff.  */
-Index: gdb-6.8.50.20090209/gdb/infcmd.c
+Index: gdb-6.8.50.20090226/gdb/infcmd.c
 ===================================================================
---- gdb-6.8.50.20090209.orig/gdb/infcmd.c	2009-01-26 00:35:51.000000000 +0100
-+++ gdb-6.8.50.20090209/gdb/infcmd.c	2009-02-09 16:06:00.000000000 +0100
+--- gdb-6.8.50.20090226.orig/gdb/infcmd.c	2009-02-27 00:04:32.000000000 +0100
++++ gdb-6.8.50.20090226/gdb/infcmd.c	2009-02-28 07:34:09.000000000 +0100
 @@ -52,6 +52,7 @@
  #include "cli/cli-decode.h"
  #include "gdbthread.h"
@@ -1159,7 +1155,7 @@
  
  /* Functions exported for general use, in inferior.h: */
  
-@@ -739,6 +740,17 @@ Can't resume all threads and specify pro
+@@ -744,6 +745,17 @@ Can't resume all threads and specify pro
    continue_1 (all_threads);
  }
  
@@ -1177,7 +1173,7 @@
  /* Step until outside of current statement.  */
  
  static void
-@@ -916,6 +928,20 @@ step_once (int skip_subroutines, int sin
+@@ -921,6 +933,20 @@ step_once (int skip_subroutines, int sin
  	 THREAD is set.  */
        struct thread_info *tp = inferior_thread ();
        clear_proceed_status ();
@@ -1198,7 +1194,7 @@
  
        frame = get_current_frame ();
        tp->step_frame_id = get_frame_id (frame);
-@@ -1168,6 +1194,7 @@ until_next_command (int from_tty)
+@@ -1173,6 +1199,7 @@ until_next_command (int from_tty)
    clear_proceed_status ();
  
    frame = get_current_frame ();
@@ -1206,7 +1202,7 @@
  
    /* Step until either exited from this function or greater
       than the current line (if in symbolic section) or pc (if
-@@ -1195,7 +1222,6 @@ until_next_command (int from_tty)
+@@ -1200,7 +1227,6 @@ until_next_command (int from_tty)
      }
  
    tp->step_over_calls = STEP_OVER_ALL;
@@ -1214,7 +1210,7 @@
  
    tp->step_multi = 0;		/* Only one call to proceed */
  
-@@ -1528,6 +1554,37 @@ finish_command (char *arg, int from_tty)
+@@ -1533,6 +1559,37 @@ finish_command (char *arg, int from_tty)
  
    clear_proceed_status ();
  
@@ -1252,10 +1248,10 @@
    /* Find the function we will return from.  */
  
    function = find_pc_function (get_frame_pc (get_selected_frame (NULL)));
-Index: gdb-6.8.50.20090209/gdb/inferior.h
+Index: gdb-6.8.50.20090226/gdb/inferior.h
 ===================================================================
---- gdb-6.8.50.20090209.orig/gdb/inferior.h	2009-02-09 15:39:01.000000000 +0100
-+++ gdb-6.8.50.20090209/gdb/inferior.h	2009-02-09 16:06:00.000000000 +0100
+--- gdb-6.8.50.20090226.orig/gdb/inferior.h	2009-02-27 00:04:34.000000000 +0100
++++ gdb-6.8.50.20090226/gdb/inferior.h	2009-02-28 07:34:09.000000000 +0100
 @@ -259,6 +259,9 @@ extern void error_is_running (void);
  /* Calls error_is_running if the current thread is running.  */
  extern void ensure_not_running (void);
@@ -1266,10 +1262,10 @@
  /* From infcmd.c */
  
  extern void tty_command (char *, int);
-Index: gdb-6.8.50.20090209/gdb/infrun.c
+Index: gdb-6.8.50.20090226/gdb/infrun.c
 ===================================================================
---- gdb-6.8.50.20090209.orig/gdb/infrun.c	2009-02-09 16:02:31.000000000 +0100
-+++ gdb-6.8.50.20090209/gdb/infrun.c	2009-02-09 16:09:19.000000000 +0100
+--- gdb-6.8.50.20090226.orig/gdb/infrun.c	2009-02-28 07:31:50.000000000 +0100
++++ gdb-6.8.50.20090226/gdb/infrun.c	2009-02-28 07:37:36.000000000 +0100
 @@ -48,6 +48,7 @@
  #include "gdb_assert.h"
  #include "mi/mi-common.h"
@@ -1287,7 +1283,7 @@
  
  /* Command list pointer for the "stop" placeholder.  */
  
-@@ -1146,6 +1147,8 @@ a command like `return' or `jump' to con
+@@ -1151,6 +1152,8 @@ a command like `return' or `jump' to con
  	    step = 0;
  	}
  
@@ -1296,7 +1292,7 @@
        if (debug_displaced
            && use_displaced_stepping (gdbarch)
            && tp->trap_expected)
-@@ -1187,6 +1190,7 @@ clear_proceed_status_thread (struct thre
+@@ -1192,6 +1195,7 @@ clear_proceed_status_thread (struct thre
    tp->step_range_start = 0;
    tp->step_range_end = 0;
    tp->step_frame_id = null_frame_id;
@@ -1304,7 +1300,7 @@
    tp->step_over_calls = STEP_OVER_UNDEBUGGABLE;
    tp->stop_requested = 0;
  
-@@ -1531,6 +1535,9 @@ init_wait_for_inferior (void)
+@@ -1536,6 +1540,9 @@ init_wait_for_inferior (void)
    init_infwait_state ();
  
    displaced_step_clear ();
@@ -1314,7 +1310,7 @@
  }
  
  
-@@ -1586,7 +1593,7 @@ struct execution_control_state
+@@ -1591,7 +1598,7 @@ struct execution_control_state
    int wait_some_more;
  };
  
@@ -1323,7 +1319,7 @@
  
  void handle_inferior_event (struct execution_control_state *ecs);
  
-@@ -1944,10 +1951,21 @@ fetch_inferior_event (void *client_data)
+@@ -1949,10 +1956,21 @@ fetch_inferior_event (void *client_data)
      display_gdb_prompt (0);
  }
  
@@ -1346,7 +1342,7 @@
  init_execution_control_state (struct execution_control_state *ecs)
  {
    ecs->random_signal = 0;
-@@ -1958,16 +1976,10 @@ init_execution_control_state (struct exe
+@@ -1963,16 +1981,10 @@ init_execution_control_state (struct exe
  void
  init_thread_stepping_state (struct thread_info *tss)
  {
@@ -1363,8 +1359,8 @@
  }
  
  /* Return the cached copy of the last pid/waitstatus returned by
-@@ -2137,6 +2149,22 @@ ensure_not_running (void)
-     error_is_running ();
+@@ -2186,6 +2198,22 @@ deal_with_syscall_event (struct executio
+     }
  }
  
 +static int
@@ -1386,7 +1382,7 @@
  /* Given an execution control state that has been freshly filled in
     by an event from the inferior, figure out what it means and take
     appropriate action.  */
-@@ -2828,6 +2856,12 @@ targets should add new threads to the th
+@@ -2880,6 +2908,12 @@ targets should add new threads to the th
    ecs->random_signal = 0;
    stopped_by_random_signal = 0;
  
@@ -1399,7 +1395,7 @@
    if (ecs->event_thread->stop_signal == TARGET_SIGNAL_TRAP
        && ecs->event_thread->trap_expected
        && gdbarch_single_step_through_delay_p (current_gdbarch)
-@@ -3060,8 +3094,8 @@ process_event_stop_test:
+@@ -3112,8 +3146,8 @@ process_event_stop_test:
  	  && ecs->event_thread->stop_signal != TARGET_SIGNAL_0
  	  && (ecs->event_thread->step_range_start <= stop_pc
  	      && stop_pc < ecs->event_thread->step_range_end)
@@ -1410,7 +1406,7 @@
  	  && ecs->event_thread->step_resume_breakpoint == NULL)
  	{
  	  /* The inferior is about to take a signal that will take it
-@@ -3447,10 +3481,10 @@ infrun: BPSTAT_WHAT_SET_LONGJMP_RESUME (
+@@ -3499,10 +3533,10 @@ infrun: BPSTAT_WHAT_SET_LONGJMP_RESUME (
       NOTE: frame_id_eq will never report two invalid frame IDs as
       being equal, so to get into this block, both the current and
       previous frame must have valid frame IDs.  */
@@ -1424,7 +1420,7 @@
  	  || execution_direction == EXEC_REVERSE))
      {
        CORE_ADDR real_stop_pc;
-@@ -3693,6 +3727,82 @@ infrun: BPSTAT_WHAT_SET_LONGJMP_RESUME (
+@@ -3745,6 +3779,82 @@ infrun: BPSTAT_WHAT_SET_LONGJMP_RESUME (
        return;
      }
  
@@ -1507,7 +1503,7 @@
    if ((stop_pc == stop_pc_sal.pc)
        && (ecs->event_thread->current_line != stop_pc_sal.line
   	  || ecs->event_thread->current_symtab != stop_pc_sal.symtab))
-@@ -3718,9 +3828,7 @@ infrun: BPSTAT_WHAT_SET_LONGJMP_RESUME (
+@@ -3770,9 +3880,7 @@ infrun: BPSTAT_WHAT_SET_LONGJMP_RESUME (
  
    ecs->event_thread->step_range_start = stop_pc_sal.pc;
    ecs->event_thread->step_range_end = stop_pc_sal.end;
@@ -1518,7 +1514,7 @@
  
    if (debug_infrun)
       fprintf_unfiltered (gdb_stdlog, "infrun: keep going\n");
-@@ -4987,6 +5095,7 @@ struct inferior_status
+@@ -5024,6 +5132,7 @@ struct inferior_status
    CORE_ADDR step_range_start;
    CORE_ADDR step_range_end;
    struct frame_id step_frame_id;
@@ -1526,7 +1522,7 @@
    enum step_over_calls_kind step_over_calls;
    CORE_ADDR step_resume_break_address;
    int stop_after_trap;
-@@ -5016,6 +5125,7 @@ save_inferior_status (void)
+@@ -5053,6 +5162,7 @@ save_inferior_status (void)
    inf_status->step_range_start = tp->step_range_start;
    inf_status->step_range_end = tp->step_range_end;
    inf_status->step_frame_id = tp->step_frame_id;
@@ -1534,7 +1530,7 @@
    inf_status->step_over_calls = tp->step_over_calls;
    inf_status->stop_after_trap = stop_after_trap;
    inf_status->stop_soon = inf->stop_soon;
-@@ -5069,6 +5179,7 @@ restore_inferior_status (struct inferior
+@@ -5106,6 +5216,7 @@ restore_inferior_status (struct inferior
    tp->step_range_start = inf_status->step_range_start;
    tp->step_range_end = inf_status->step_range_end;
    tp->step_frame_id = inf_status->step_frame_id;
@@ -1542,10 +1538,10 @@
    tp->step_over_calls = inf_status->step_over_calls;
    stop_after_trap = inf_status->stop_after_trap;
    inf->stop_soon = inf_status->stop_soon;
-Index: gdb-6.8.50.20090209/gdb/inline-frame.c
+Index: gdb-6.8.50.20090226/gdb/inline-frame.c
 ===================================================================
 --- /dev/null	1970-01-01 00:00:00.000000000 +0000
-+++ gdb-6.8.50.20090209/gdb/inline-frame.c	2009-02-09 16:06:00.000000000 +0100
++++ gdb-6.8.50.20090226/gdb/inline-frame.c	2009-02-28 07:34:09.000000000 +0100
 @@ -0,0 +1,382 @@
 +/* Inline frame unwinder for GDB.
 +
@@ -1929,10 +1925,10 @@
 +
 +  return inline_count;
 +}
-Index: gdb-6.8.50.20090209/gdb/inline-frame.h
+Index: gdb-6.8.50.20090226/gdb/inline-frame.h
 ===================================================================
 --- /dev/null	1970-01-01 00:00:00.000000000 +0000
-+++ gdb-6.8.50.20090209/gdb/inline-frame.h	2009-02-09 16:06:00.000000000 +0100
++++ gdb-6.8.50.20090226/gdb/inline-frame.h	2009-02-28 07:34:09.000000000 +0100
 @@ -0,0 +1,62 @@
 +/* Definitions for inline frame support.
 +
@@ -1996,10 +1992,10 @@
 +int frame_inlined_callees (struct frame_info *this_frame);
 +
 +#endif /* !defined (INLINE_FRAME_H) */
-Index: gdb-6.8.50.20090209/gdb/minsyms.c
+Index: gdb-6.8.50.20090226/gdb/minsyms.c
 ===================================================================
---- gdb-6.8.50.20090209.orig/gdb/minsyms.c	2009-02-09 16:02:28.000000000 +0100
-+++ gdb-6.8.50.20090209/gdb/minsyms.c	2009-02-09 16:06:00.000000000 +0100
+--- gdb-6.8.50.20090226.orig/gdb/minsyms.c	2009-02-28 07:31:49.000000000 +0100
++++ gdb-6.8.50.20090226/gdb/minsyms.c	2009-02-28 07:34:09.000000000 +0100
 @@ -767,7 +767,7 @@ prim_record_minimal_symbol_and_info (con
  
    if (msym_bunch_index == BUNCH_SIZE)
@@ -2009,10 +2005,10 @@
        msym_bunch_index = 0;
        new->next = msym_bunch;
        msym_bunch = new;
-Index: gdb-6.8.50.20090209/gdb/s390-tdep.c
+Index: gdb-6.8.50.20090226/gdb/s390-tdep.c
 ===================================================================
---- gdb-6.8.50.20090209.orig/gdb/s390-tdep.c	2009-01-03 06:57:53.000000000 +0100
-+++ gdb-6.8.50.20090209/gdb/s390-tdep.c	2009-02-09 16:06:00.000000000 +0100
+--- gdb-6.8.50.20090226.orig/gdb/s390-tdep.c	2009-02-22 02:02:19.000000000 +0100
++++ gdb-6.8.50.20090226/gdb/s390-tdep.c	2009-02-28 07:34:09.000000000 +0100
 @@ -1182,6 +1182,7 @@ s390_prologue_frame_unwind_cache (struct
    CORE_ADDR prev_sp;
    int frame_pointer;
@@ -2046,10 +2042,10 @@
  	  || get_frame_type (get_next_frame (this_frame)) != NORMAL_FRAME))
      {
        /* See the comment in s390_in_function_epilogue_p on why this is
-Index: gdb-6.8.50.20090209/gdb/stack.c
+Index: gdb-6.8.50.20090226/gdb/stack.c
 ===================================================================
---- gdb-6.8.50.20090209.orig/gdb/stack.c	2009-01-26 20:09:58.000000000 +0100
-+++ gdb-6.8.50.20090209/gdb/stack.c	2009-02-09 16:06:00.000000000 +0100
+--- gdb-6.8.50.20090226.orig/gdb/stack.c	2009-02-27 00:04:32.000000000 +0100
++++ gdb-6.8.50.20090226/gdb/stack.c	2009-02-28 07:35:20.000000000 +0100
 @@ -45,6 +45,7 @@
  #include "valprint.h"
  #include "gdbthread.h"
@@ -2089,7 +2085,7 @@
  /* Show or print a stack frame FRAME briefly.  The output is format
     according to PRINT_LEVEL and PRINT_WHAT printing the frame's
     relative level, function name, argument list, and file name and
-@@ -537,7 +562,7 @@ print_frame_info (struct frame_info *fra
+@@ -538,7 +563,7 @@ print_frame_info (struct frame_info *fra
      {
        int done = 0;
        int mid_statement = ((print_what == SRC_LINE)
@@ -2098,16 +2094,16 @@
  
        if (annotation_level)
  	done = identify_source_line (sal.symtab, sal.line, mid_statement,
-@@ -594,7 +619,7 @@ print_frame (struct frame_info *frame, i
-   stb = ui_out_stream_new (uiout);
-   old_chain = make_cleanup_ui_out_stream_delete (stb);
+@@ -591,7 +616,7 @@ find_frame_funname (struct frame_info *f
+   *funname = NULL;
+   *funlang = language_unknown;
  
 -  func = find_pc_function (get_frame_address_in_block (frame));
 +  func = get_frame_function (frame);
    if (func)
      {
        /* In certain pathological cases, the symtabs give the wrong
-@@ -615,8 +640,13 @@ print_frame (struct frame_info *frame, i
+@@ -612,8 +637,13 @@ find_frame_funname (struct frame_info *f
           changed (and we'll create a find_pc_minimal_function or some
           such).  */
  
@@ -2123,7 +2119,7 @@
  
        if (msymbol != NULL
  	  && (SYMBOL_VALUE_ADDRESS (msymbol)
-@@ -673,7 +703,7 @@ print_frame (struct frame_info *frame, i
+@@ -687,7 +717,7 @@ print_frame (struct frame_info *frame, i
      }
    get_user_print_options (&opts);
    if (opts.addressprint)
@@ -2132,7 +2128,7 @@
  	|| print_what == LOC_AND_ADDRESS)
        {
  	annotate_frame_address ();
-@@ -853,8 +883,16 @@ parse_frame_specification_1 (const char 
+@@ -867,8 +897,16 @@ parse_frame_specification_1 (const char 
  	{
  	  if (frame_id_eq (id, get_frame_id (fid)))
  	    {
@@ -2151,7 +2147,7 @@
  	      return fid;
  	    }
  	}
-@@ -988,8 +1026,10 @@ frame_info (char *addr_exp, int from_tty
+@@ -1002,8 +1040,10 @@ frame_info (char *addr_exp, int from_tty
  	printf_filtered (_(" Outermost frame: %s\n"),
  			 frame_stop_reason_string (reason));
      }
@@ -2164,7 +2160,7 @@
      {
        printf_filtered (" called by frame at ");
        fputs_filtered (paddress (get_frame_base (calling_frame_info)),
-@@ -1449,7 +1489,9 @@ print_frame_local_vars (struct frame_inf
+@@ -1465,7 +1505,9 @@ print_frame_local_vars (struct frame_inf
        if (print_block_frame_locals (block, frame, num_tabs, stream))
  	values_printed = 1;
        /* After handling the function's top-level block, stop.  Don't
@@ -2175,7 +2171,7 @@
        if (BLOCK_FUNCTION (block))
  	break;
        block = BLOCK_SUPERBLOCK (block);
-@@ -1520,7 +1562,9 @@ print_frame_label_vars (struct frame_inf
+@@ -1536,7 +1578,9 @@ print_frame_label_vars (struct frame_inf
  	return;
  
        /* After handling the function's top-level block, stop.  Don't
@@ -2186,7 +2182,7 @@
        if (BLOCK_FUNCTION (block))
  	break;
        block = BLOCK_SUPERBLOCK (block);
-@@ -1790,6 +1834,9 @@ return_command (char *retval_exp, int fr
+@@ -1874,6 +1918,9 @@ return_command (char *retval_exp, int fr
    thisframe = get_selected_frame ("No selected frame.");
    thisfun = get_frame_function (thisframe);
  
@@ -2196,11 +2192,11 @@
    /* Compute the return value.  If the computation triggers an error,
       let it bail.  If the return type can't be handled, set
       RETURN_VALUE to NULL, and QUERY_PREFIX to an informational
-Index: gdb-6.8.50.20090209/gdb/symtab.c
+Index: gdb-6.8.50.20090226/gdb/symtab.c
 ===================================================================
---- gdb-6.8.50.20090209.orig/gdb/symtab.c	2009-02-09 16:02:29.000000000 +0100
-+++ gdb-6.8.50.20090209/gdb/symtab.c	2009-02-09 16:06:00.000000000 +0100
-@@ -1373,10 +1373,13 @@ lookup_symbol_aux_local (const char *nam
+--- gdb-6.8.50.20090226.orig/gdb/symtab.c	2009-02-28 07:31:49.000000000 +0100
++++ gdb-6.8.50.20090226/gdb/symtab.c	2009-02-28 07:34:09.000000000 +0100
+@@ -1408,10 +1408,13 @@ lookup_symbol_aux_local (const char *nam
        sym = lookup_symbol_aux_block (name, linkage_name, block, domain);
        if (sym != NULL)
  	return sym;
@@ -2215,7 +2211,7 @@
  
    return NULL;
  }
-@@ -2609,6 +2612,7 @@ find_function_start_sal (struct symbol *
+@@ -2668,6 +2671,7 @@ find_function_start_sal (struct symbol *
  
    CORE_ADDR pc;
    struct symtab_and_line sal;
@@ -2223,7 +2219,7 @@
  
    pc = BLOCK_START (block);
    fixup_symbol_section (sym, objfile);
-@@ -2647,6 +2651,25 @@ find_function_start_sal (struct symbol *
+@@ -2706,6 +2710,25 @@ find_function_start_sal (struct symbol *
  
    sal.pc = pc;
  
@@ -2249,7 +2245,7 @@
    return sal;
  }
  
-@@ -3669,6 +3692,24 @@ add_macro_name (const char *name, const 
+@@ -3728,6 +3751,24 @@ add_macro_name (const char *name, const 
  			    datum->text, datum->word);
  }
  
@@ -2274,7 +2270,7 @@
  char **
  default_make_symbol_completion_list (char *text, char *word)
  {
-@@ -3681,9 +3722,9 @@ default_make_symbol_completion_list (cha
+@@ -3740,9 +3781,9 @@ default_make_symbol_completion_list (cha
    struct partial_symtab *ps;
    struct minimal_symbol *msymbol;
    struct objfile *objfile;
@@ -2286,7 +2282,7 @@
    struct partial_symbol **psym;
    /* The symbol we are completing on.  Points in same buffer as text.  */
    char *sym_text;
-@@ -3793,41 +3834,43 @@ default_make_symbol_completion_list (cha
+@@ -3852,41 +3893,43 @@ default_make_symbol_completion_list (cha
    }
  
    /* Search upwards from currently selected frame (so that we can
@@ -2361,7 +2357,7 @@
  
    /* Go through the symtabs and check the externs and statics for
       symbols which match.  */
-@@ -3846,9 +3889,6 @@ default_make_symbol_completion_list (cha
+@@ -3905,9 +3948,6 @@ default_make_symbol_completion_list (cha
    {
      QUIT;
      b = BLOCKVECTOR_BLOCK (BLOCKVECTOR (s), STATIC_BLOCK);
@@ -2371,7 +2367,7 @@
      ALL_BLOCK_SYMBOLS (b, iter, sym)
        {
  	COMPLETION_LIST_ADD_SYMBOL (sym, sym_text, sym_text_len, text, word);
-@@ -4315,6 +4355,25 @@ skip_prologue_using_sal (CORE_ADDR func_
+@@ -4374,6 +4414,25 @@ skip_prologue_using_sal (CORE_ADDR func_
  	     line mark the prologue -> body transition.  */
  	  if (sal.line >= prologue_sal.line)
  	    break;
@@ -2397,11 +2393,11 @@
  	  /* The case in which compiler's optimizer/scheduler has
  	     moved instructions into the prologue.  We look ahead in
  	     the function looking for address ranges whose
-Index: gdb-6.8.50.20090209/gdb/symtab.h
+Index: gdb-6.8.50.20090226/gdb/symtab.h
 ===================================================================
---- gdb-6.8.50.20090209.orig/gdb/symtab.h	2009-02-06 22:33:58.000000000 +0100
-+++ gdb-6.8.50.20090209/gdb/symtab.h	2009-02-09 16:06:00.000000000 +0100
-@@ -556,9 +556,18 @@ struct symbol
+--- gdb-6.8.50.20090226.orig/gdb/symtab.h	2009-02-27 00:04:32.000000000 +0100
++++ gdb-6.8.50.20090226/gdb/symtab.h	2009-02-28 07:34:09.000000000 +0100
+@@ -559,9 +559,18 @@ struct symbol
  
    unsigned is_argument : 1;
  
@@ -2423,7 +2419,7 @@
  
    unsigned short line;
  
-@@ -589,6 +598,7 @@ struct symbol
+@@ -592,6 +601,7 @@ struct symbol
  #define SYMBOL_DOMAIN(symbol)	(symbol)->domain
  #define SYMBOL_CLASS(symbol)		(symbol)->aclass
  #define SYMBOL_IS_ARGUMENT(symbol)	(symbol)->is_argument
@@ -2431,10 +2427,10 @@
  #define SYMBOL_TYPE(symbol)		(symbol)->type
  #define SYMBOL_LINE(symbol)		(symbol)->line
  #define SYMBOL_SYMTAB(symbol)		(symbol)->symtab
-Index: gdb-6.8.50.20090209/gdb/testsuite/gdb.base/break.exp
+Index: gdb-6.8.50.20090226/gdb/testsuite/gdb.base/break.exp
 ===================================================================
---- gdb-6.8.50.20090209.orig/gdb/testsuite/gdb.base/break.exp	2009-01-19 20:05:01.000000000 +0100
-+++ gdb-6.8.50.20090209/gdb/testsuite/gdb.base/break.exp	2009-02-09 16:06:00.000000000 +0100
+--- gdb-6.8.50.20090226.orig/gdb/testsuite/gdb.base/break.exp	2009-01-19 20:05:01.000000000 +0100
++++ gdb-6.8.50.20090226/gdb/testsuite/gdb.base/break.exp	2009-02-28 07:34:09.000000000 +0100
 @@ -880,6 +880,13 @@ gdb_expect {
          # marker4() is defined at line 46 when compiled with -DPROTOTYPES
  	pass "run until breakpoint set at small function, optimized file (line bp_location14)"
@@ -2449,10 +2445,10 @@
      -re ".*$gdb_prompt " {
  	fail "run until breakpoint set at small function, optimized file"
      }
-Index: gdb-6.8.50.20090209/gdb/testsuite/gdb.cp/annota2.exp
+Index: gdb-6.8.50.20090226/gdb/testsuite/gdb.cp/annota2.exp
 ===================================================================
---- gdb-6.8.50.20090209.orig/gdb/testsuite/gdb.cp/annota2.exp	2009-01-03 06:58:04.000000000 +0100
-+++ gdb-6.8.50.20090209/gdb/testsuite/gdb.cp/annota2.exp	2009-02-09 16:06:00.000000000 +0100
+--- gdb-6.8.50.20090226.orig/gdb/testsuite/gdb.cp/annota2.exp	2009-01-03 06:58:04.000000000 +0100
++++ gdb-6.8.50.20090226/gdb/testsuite/gdb.cp/annota2.exp	2009-02-28 07:34:09.000000000 +0100
 @@ -119,10 +119,11 @@ gdb_expect {
  # continue until exit
  # this will test:
@@ -2466,10 +2462,10 @@
  	  { pass "continue until exit" }
    -re ".*$gdb_prompt$"     { fail "continue to exit" }
    timeout	            { fail "continue to exit (timeout)" }
-Index: gdb-6.8.50.20090209/gdb/testsuite/gdb.opt/inline-bt.c
+Index: gdb-6.8.50.20090226/gdb/testsuite/gdb.opt/inline-bt.c
 ===================================================================
 --- /dev/null	1970-01-01 00:00:00.000000000 +0000
-+++ gdb-6.8.50.20090209/gdb/testsuite/gdb.opt/inline-bt.c	2009-02-09 16:06:00.000000000 +0100
++++ gdb-6.8.50.20090226/gdb/testsuite/gdb.opt/inline-bt.c	2009-02-28 07:34:09.000000000 +0100
 @@ -0,0 +1,47 @@
 +/* Copyright (C) 2008 Free Software Foundation, Inc.
 +
@@ -2518,10 +2514,10 @@
 +
 +  return 0;
 +}
-Index: gdb-6.8.50.20090209/gdb/testsuite/gdb.opt/inline-bt.exp
+Index: gdb-6.8.50.20090226/gdb/testsuite/gdb.opt/inline-bt.exp
 ===================================================================
 --- /dev/null	1970-01-01 00:00:00.000000000 +0000
-+++ gdb-6.8.50.20090209/gdb/testsuite/gdb.opt/inline-bt.exp	2009-02-09 16:06:00.000000000 +0100
++++ gdb-6.8.50.20090226/gdb/testsuite/gdb.opt/inline-bt.exp	2009-02-28 07:34:09.000000000 +0100
 @@ -0,0 +1,63 @@
 +# Copyright 2008 Free Software Foundation, Inc.
 +
@@ -2586,10 +2582,10 @@
 +gdb_test "info frame" ".*inlined into frame.*" "func1 inlined (3)"
 +gdb_test "up" "#2  .*func2.*" "up from func1 (3)"
 +gdb_test "info frame" ".*inlined into frame.*" "func2 inlined (3)"
-Index: gdb-6.8.50.20090209/gdb/testsuite/gdb.opt/inline-cmds.c
+Index: gdb-6.8.50.20090226/gdb/testsuite/gdb.opt/inline-cmds.c
 ===================================================================
 --- /dev/null	1970-01-01 00:00:00.000000000 +0000
-+++ gdb-6.8.50.20090209/gdb/testsuite/gdb.opt/inline-cmds.c	2009-02-09 16:06:00.000000000 +0100
++++ gdb-6.8.50.20090226/gdb/testsuite/gdb.opt/inline-cmds.c	2009-02-28 07:34:09.000000000 +0100
 @@ -0,0 +1,85 @@
 +/* Copyright (C) 2008 Free Software Foundation, Inc.
 +
@@ -2676,10 +2672,10 @@
 +
 +  return 0;
 +}
-Index: gdb-6.8.50.20090209/gdb/testsuite/gdb.opt/inline-cmds.exp
+Index: gdb-6.8.50.20090226/gdb/testsuite/gdb.opt/inline-cmds.exp
 ===================================================================
 --- /dev/null	1970-01-01 00:00:00.000000000 +0000
-+++ gdb-6.8.50.20090209/gdb/testsuite/gdb.opt/inline-cmds.exp	2009-02-09 16:06:00.000000000 +0100
++++ gdb-6.8.50.20090226/gdb/testsuite/gdb.opt/inline-cmds.exp	2009-02-28 07:34:09.000000000 +0100
 @@ -0,0 +1,279 @@
 +# Copyright 2008 Free Software Foundation, Inc.
 +
@@ -2960,10 +2956,10 @@
 +gdb_test "info frame" ".*inlined into frame.*" "outer_inline2 inlined"
 +gdb_test "up" "#4  main.*" "up from outer_inline2"
 +gdb_test "info frame" ".*\n caller of frame.*" "main not inlined"
-Index: gdb-6.8.50.20090209/gdb/testsuite/gdb.opt/inline-locals.c
+Index: gdb-6.8.50.20090226/gdb/testsuite/gdb.opt/inline-locals.c
 ===================================================================
 --- /dev/null	1970-01-01 00:00:00.000000000 +0000
-+++ gdb-6.8.50.20090209/gdb/testsuite/gdb.opt/inline-locals.c	2009-02-09 16:06:00.000000000 +0100
++++ gdb-6.8.50.20090226/gdb/testsuite/gdb.opt/inline-locals.c	2009-02-28 07:34:09.000000000 +0100
 @@ -0,0 +1,52 @@
 +/* Copyright (C) 2008 Free Software Foundation, Inc.
 +
@@ -3017,10 +3013,10 @@
 +
 +  return 0;
 +}
-Index: gdb-6.8.50.20090209/gdb/testsuite/gdb.opt/inline-locals.exp
+Index: gdb-6.8.50.20090226/gdb/testsuite/gdb.opt/inline-locals.exp
 ===================================================================
 --- /dev/null	1970-01-01 00:00:00.000000000 +0000
-+++ gdb-6.8.50.20090209/gdb/testsuite/gdb.opt/inline-locals.exp	2009-02-09 16:06:00.000000000 +0100
++++ gdb-6.8.50.20090226/gdb/testsuite/gdb.opt/inline-locals.exp	2009-02-28 07:34:09.000000000 +0100
 @@ -0,0 +1,118 @@
 +# Copyright 2008 Free Software Foundation, Inc.
 +
@@ -3140,10 +3136,10 @@
 +}
 +
 +gdb_test "print array\[0\]" "\\\$$decimal = 184" "print local (3)"
-Index: gdb-6.8.50.20090209/gdb/testsuite/gdb.opt/inline-markers.c
+Index: gdb-6.8.50.20090226/gdb/testsuite/gdb.opt/inline-markers.c
 ===================================================================
 --- /dev/null	1970-01-01 00:00:00.000000000 +0000
-+++ gdb-6.8.50.20090209/gdb/testsuite/gdb.opt/inline-markers.c	2009-02-09 16:06:00.000000000 +0100
++++ gdb-6.8.50.20090226/gdb/testsuite/gdb.opt/inline-markers.c	2009-02-28 07:34:09.000000000 +0100
 @@ -0,0 +1,36 @@
 +/* Copyright (C) 2008 Free Software Foundation, Inc.
 +
@@ -3181,11 +3177,11 @@
 +{
 +  inlined_fn (); /* inlined */
 +}
-Index: gdb-6.8.50.20090209/gdb/testsuite/lib/gdb.exp
+Index: gdb-6.8.50.20090226/gdb/testsuite/lib/gdb.exp
 ===================================================================
---- gdb-6.8.50.20090209.orig/gdb/testsuite/lib/gdb.exp	2009-02-09 16:02:35.000000000 +0100
-+++ gdb-6.8.50.20090209/gdb/testsuite/lib/gdb.exp	2009-02-09 16:06:00.000000000 +0100
-@@ -1471,6 +1471,37 @@ proc skip_hp_tests {} {
+--- gdb-6.8.50.20090226.orig/gdb/testsuite/lib/gdb.exp	2009-02-28 07:31:58.000000000 +0100
++++ gdb-6.8.50.20090226/gdb/testsuite/lib/gdb.exp	2009-02-28 07:34:09.000000000 +0100
+@@ -1474,6 +1474,37 @@ proc skip_hp_tests {} {
      return $skip_hp
  }
  
@@ -3223,11 +3219,11 @@
  set compiler_info		"unknown"
  set gcc_compiled		0
  set hp_cc_compiler		0
-Index: gdb-6.8.50.20090209/gdb/valops.c
+Index: gdb-6.8.50.20090226/gdb/valops.c
 ===================================================================
---- gdb-6.8.50.20090209.orig/gdb/valops.c	2009-02-09 15:40:36.000000000 +0100
-+++ gdb-6.8.50.20090209/gdb/valops.c	2009-02-09 16:06:00.000000000 +0100
-@@ -1074,7 +1074,7 @@ value_of_variable (struct symbol *var, s
+--- gdb-6.8.50.20090226.orig/gdb/valops.c	2009-02-27 07:51:56.000000000 +0100
++++ gdb-6.8.50.20090226/gdb/valops.c	2009-02-28 07:34:09.000000000 +0100
+@@ -1072,7 +1072,7 @@ value_of_variable (struct symbol *var, s
        frame = block_innermost_frame (b);
        if (!frame)
  	{
@@ -3236,11 +3232,11 @@
  	      && SYMBOL_PRINT_NAME (BLOCK_FUNCTION (b)))
  	    error (_("No frame is currently executing in block %s."),
  		   SYMBOL_PRINT_NAME (BLOCK_FUNCTION (b)));
-Index: gdb-6.8.50.20090209/gdb/Makefile.in
+Index: gdb-6.8.50.20090226/gdb/Makefile.in
 ===================================================================
---- gdb-6.8.50.20090209.orig/gdb/Makefile.in	2009-02-09 16:02:35.000000000 +0100
-+++ gdb-6.8.50.20090209/gdb/Makefile.in	2009-02-09 16:06:00.000000000 +0100
-@@ -634,6 +634,7 @@ SFILES = ada-exp.y ada-lang.c ada-typepr
+--- gdb-6.8.50.20090226.orig/gdb/Makefile.in	2009-02-28 07:31:58.000000000 +0100
++++ gdb-6.8.50.20090226/gdb/Makefile.in	2009-02-28 07:34:09.000000000 +0100
+@@ -663,6 +663,7 @@ SFILES = ada-exp.y ada-lang.c ada-typepr
  	inf-loop.c \
  	infcall.c \
  	infcmd.c inflow.c infrun.c \
@@ -3248,7 +3244,7 @@
  	interps.c \
  	jv-exp.y jv-lang.c jv-valprint.c jv-typeprint.c \
  	language.c linespec.c \
-@@ -804,6 +805,7 @@ COMMON_OBS = $(DEPFILES) $(CONFIG_OBS) $
+@@ -835,6 +836,7 @@ COMMON_OBS = $(DEPFILES) $(CONFIG_OBS) $
  	user-regs.o \
  	frame.o frame-unwind.o doublest.o \
  	frame-base.o \
@@ -3256,10 +3252,10 @@
  	gnu-v2-abi.o gnu-v3-abi.o cp-abi.o cp-support.o \
  	cp-namespace.o \
  	reggroups.o regset.o \
-Index: gdb-6.8.50.20090209/gdb/testsuite/gdb.opt/Makefile.in
+Index: gdb-6.8.50.20090226/gdb/testsuite/gdb.opt/Makefile.in
 ===================================================================
---- gdb-6.8.50.20090209.orig/gdb/testsuite/gdb.opt/Makefile.in	2008-04-18 01:06:54.000000000 +0200
-+++ gdb-6.8.50.20090209/gdb/testsuite/gdb.opt/Makefile.in	2009-02-09 16:06:00.000000000 +0100
+--- gdb-6.8.50.20090226.orig/gdb/testsuite/gdb.opt/Makefile.in	2008-04-18 01:06:54.000000000 +0200
++++ gdb-6.8.50.20090226/gdb/testsuite/gdb.opt/Makefile.in	2009-02-28 07:34:09.000000000 +0100
 @@ -1,7 +1,7 @@
  VPATH = @srcdir@
  srcdir = @srcdir@


Index: gdb.spec
===================================================================
RCS file: /cvs/pkgs/rpms/gdb/devel/gdb.spec,v
retrieving revision 1.323
retrieving revision 1.324
diff -u -r1.323 -r1.324
--- gdb.spec	24 Feb 2009 19:59:51 -0000	1.323
+++ gdb.spec	2 Mar 2009 00:11:35 -0000	1.324
@@ -9,11 +9,11 @@
 # Set version to contents of gdb/version.in.
 # 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).
-Version: 6.8.50.20090210
+Version: 6.8.50.20090228
 
 # 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.
-Release: 2%{?_with_upstream:.upstream}%{?dist}
+Release: 1%{?_with_upstream:.upstream}%{?dist}
 
 License: GPLv3+
 Group: Development/Debuggers
@@ -305,16 +305,9 @@
 #  - It requires recent glibc to work in this case properly.
 Patch298: gdb-6.6-threads-static-test.patch
 
-# Fix false `(no debugging symbols found)' on `-readnever' runs.
-Patch301: gdb-6.6-buildid-readnever-silent.patch
-
 # Fix #include <asm/ptrace.h> on kernel-headers-2.6.25-0.40.rc1.git2.fc9.x86_64.
 Patch304: gdb-6.7-kernel-headers-compat.patch
 
-# Fix/implement the Fortran dynamic arrays support (BZ 377541).
-# Fix the variable-length-arrays support (BZ 468266, feature BZ 377541).
-Patch305: gdb-6.8-bz377541-vla.patch
-
 # Test GCORE for shmid 0 shared memory mappings.
 Patch309: gdb-6.3-mapping-zero-inode-test.patch
 
@@ -374,11 +367,16 @@
 # Fix resolving of variables at locations lists in prelinked libs (BZ 466901).
 Patch348: gdb-6.8-bz466901-backtrace-full-prelinked.patch
 
+# The merged branch `archer' of: http://sourceware.org/gdb/wiki/ProjectArcher
+Patch349: gdb-archer.patch
+
 BuildRequires: ncurses-devel texinfo gettext flex bison expat-devel
 Requires: readline
 BuildRequires: readline-devel
 Requires: rpm-libs
 BuildRequires: rpm-devel
+Requires: python-libs
+BuildRequires: python-devel
 
 %if 0%{?_with_testsuite:1}
 BuildRequires: sharutils dejagnu
@@ -451,7 +449,7 @@
 %if 0%{!?_with_upstream:1}
 
 ###patch232 -p1
-%patch305 -p1
+%patch349 -p1
 %patch1 -p1
 %patch3 -p1
 %patch4 -p1
@@ -536,7 +534,6 @@
 %patch294 -p1
 %patch296 -p1
 %patch298 -p1
-%patch301 -p1
 %patch304 -p1
 %patch309 -p1
 %patch311 -p1
@@ -609,6 +606,7 @@
 	--sysconfdir=%{_sysconfdir}			\
 	--mandir=%{_mandir}				\
 	--infodir=%{_infodir}				\
+	--with-gdb-datadir=%{_datadir}/%{name}		\
 	--enable-gdb-build-warnings=,-Wno-unused	\
 %ifnarch %{ix86} alpha ia64 ppc s390 s390x x86_64 ppc64 sparcv9 sparc64
 	--disable-werror				\
@@ -625,6 +623,7 @@
 	--with-system-readline				\
 	--with-expat					\
 	--enable-tui					\
+	--with-python					\
 %ifarch ia64
 	--with-libunwind				\
 %else
@@ -807,6 +806,7 @@
 %{_bindir}/pstack
 %{_mandir}/*/gstack.1*
 %{_mandir}/*/pstack.1*
+%{_datadir}/%{name}
 %endif	# 0%{!?_with_upstream:1}
 %{_infodir}/annotate.info*
 %{_infodir}/gdb.info*
@@ -822,6 +822,19 @@
 %endif
 
 %changelog
+* Sat Feb 28 2009 Jan Kratochvil <jan.kratochvil at redhat.com> - 6.8.50.20090228-1
+- Include the Archer Project: http://sourceware.org/gdb/wiki/ProjectArcher
+  * [python] Python scripting support: http://sourceware.org/gdb/wiki/PythonGdb
+  * [catch-syscall] Trap and display syscalls.
+  * [delayed-symfile] Improve startup performance by lazily read psymtabs.
+  * [exception-rewind] Fix fatal C++ exceptions in an inferior function call.
+  * [vla] C variable length arrays / DW_FORM_block / Fortran dynamic arrays.
+  * [misc] Fix debuginfoless `return' (BZ 365111), fix command-line macros for
+    expected GCC (BZ 479914), new testcase for valgrind (for BZ 483262),
+    implement `info common' for Fortran, fix Fortran logical-kind=8 (BZ 465310),
+    fix static variable in C++ constructors (BZ 445912)
+- Upgrade to the FSF GDB gdb-6.8.50 snapshot.
+
 * Tue Feb 24 2009 Fedora Release Engineering <rel-eng at lists.fedoraproject.org> - 6.8.50.20090210-2
 - Rebuilt for https://fedoraproject.org/wiki/Fedora_11_Mass_Rebuild
 


Index: sources
===================================================================
RCS file: /cvs/pkgs/rpms/gdb/devel/sources,v
retrieving revision 1.29
retrieving revision 1.30
diff -u -r1.29 -r1.30
--- sources	11 Feb 2009 00:43:22 -0000	1.29
+++ sources	2 Mar 2009 00:11:35 -0000	1.30
@@ -1 +1 @@
-d51b480bb110d873ef24aa4e4f939be1  gdb-6.8.50.20090210.tar.bz2
+4cde9c3dd1df54ec819af6407ec9d61b  gdb-6.8.50.20090228.tar.bz2


--- gdb-6.6-buildid-readnever-silent.patch DELETED ---


--- gdb-6.8-bz377541-vla.patch DELETED ---




More information about the fedora-extras-commits mailing list