rpms/gdb/devel gdb-6.3-cfaval-20060303.patch, 1.2, 1.3 gdb-6.3-prelink-core-20060223.patch, 1.3, 1.4 gdb.spec, 1.177, 1.178

fedora-cvs-commits at redhat.com fedora-cvs-commits at redhat.com
Wed Mar 8 23:48:05 UTC 2006


Author: aoliva

Update of /cvs/dist/rpms/gdb/devel
In directory cvs.devel.redhat.com:/tmp/cvs-serv16747/gdb-devel

Modified Files:
	gdb-6.3-cfaval-20060303.patch 
	gdb-6.3-prelink-core-20060223.patch gdb.spec 
Log Message:
* Wed Mar  8 2006 Alexandre Oliva <aoliva at redhat.com> - 6.3.0.0-1.119
- Fix regression in PIE debugging (BZ 133944) (re?)introduced by
the prelink fix (BZ 175075).  Improve testcase for the prelink fix.
- Revert dwarf2 frame identifier change.


gdb-6.3-cfaval-20060303.patch:
 gdb/dwarf2-frame.c                        |   88 ++++++++++
 gdb/dwarf2-frame.h                        |    4 
 gdb/testsuite/gdb.dwarf2/cfa-val-expr-1.c |  261 ++++++++++++++++++++++++++++++
 gdb/testsuite/gdb.dwarf2/cfa-val-expr-2.c |  226 +++++++++++++++++++++++++
 gdb/testsuite/gdb.dwarf2/cfa-val-expr.exp |   91 ++++++++++
 gdb/valarith.c                            |    9 -
 include/elf/dwarf2.h                      |   68 +++++++
 7 files changed, 742 insertions(+), 5 deletions(-)

Index: gdb-6.3-cfaval-20060303.patch
===================================================================
RCS file: /cvs/dist/rpms/gdb/devel/gdb-6.3-cfaval-20060303.patch,v
retrieving revision 1.2
retrieving revision 1.3
diff -u -r1.2 -r1.3
--- gdb-6.3-cfaval-20060303.patch	7 Mar 2006 05:13:18 -0000	1.2
+++ gdb-6.3-cfaval-20060303.patch	8 Mar 2006 23:48:02 -0000	1.3
@@ -54,8 +54,8 @@
 
 Index: gdb-6.3/gdb/dwarf2-frame.c
 ===================================================================
---- gdb-6.3.orig/gdb/dwarf2-frame.c	2006-03-04 09:17:24.000000000 -0300
-+++ gdb-6.3/gdb/dwarf2-frame.c	2006-03-07 01:44:55.000000000 -0300
+--- gdb-6.3.orig/gdb/dwarf2-frame.c	2006-03-07 01:45:13.000000000 -0300
++++ gdb-6.3/gdb/dwarf2-frame.c	2006-03-08 18:01:37.000000000 -0300
 @@ -435,6 +435,34 @@ bad CFI data; mismatched DW_CFA_restore_
  	      fs->regs.reg[reg].loc.offset = offset;
  	      break;
@@ -136,15 +136,6 @@
  
  
  struct dwarf2_frame_cache
-@@ -734,7 +793,7 @@ dwarf2_frame_this_id (struct frame_info 
-   struct dwarf2_frame_cache *cache =
-     dwarf2_frame_cache (next_frame, this_cache);
- 
--  (*this_id) = frame_id_build (cache->cfa, frame_func_unwind (next_frame));
-+  (*this_id) = frame_id_build (cache->cfa, frame_pc_unwind (next_frame));
- }
- 
- static void
 @@ -797,6 +856,28 @@ dwarf2_frame_prev_register (struct frame
  	}
        break;
@@ -190,8 +181,8 @@
  {
 Index: gdb-6.3/gdb/dwarf2-frame.h
 ===================================================================
---- gdb-6.3.orig/gdb/dwarf2-frame.h	2006-03-04 09:17:24.000000000 -0300
-+++ gdb-6.3/gdb/dwarf2-frame.h	2006-03-04 09:17:24.000000000 -0300
+--- gdb-6.3.orig/gdb/dwarf2-frame.h	2006-03-07 01:45:13.000000000 -0300
++++ gdb-6.3/gdb/dwarf2-frame.h	2006-03-07 01:45:13.000000000 -0300
 @@ -55,6 +55,10 @@ enum dwarf2_frame_reg_rule
       register.  */
    DWARF2_FRAME_REG_INDIRECT,
@@ -206,7 +197,7 @@
 Index: gdb-6.3/gdb/testsuite/gdb.dwarf2/cfa-val-expr-1.c
 ===================================================================
 --- /dev/null	1970-01-01 00:00:00.000000000 +0000
-+++ gdb-6.3/gdb/testsuite/gdb.dwarf2/cfa-val-expr-1.c	2006-03-04 09:17:24.000000000 -0300
++++ gdb-6.3/gdb/testsuite/gdb.dwarf2/cfa-val-expr-1.c	2006-03-07 01:45:13.000000000 -0300
 @@ -0,0 +1,261 @@
 +/* This testcase is part of GDB, the GNU debugger.
 +
@@ -472,7 +463,7 @@
 Index: gdb-6.3/gdb/testsuite/gdb.dwarf2/cfa-val-expr-2.c
 ===================================================================
 --- /dev/null	1970-01-01 00:00:00.000000000 +0000
-+++ gdb-6.3/gdb/testsuite/gdb.dwarf2/cfa-val-expr-2.c	2006-03-04 09:17:24.000000000 -0300
++++ gdb-6.3/gdb/testsuite/gdb.dwarf2/cfa-val-expr-2.c	2006-03-07 01:45:13.000000000 -0300
 @@ -0,0 +1,226 @@
 +/* This testcase is part of GDB, the GNU debugger.
 +
@@ -703,7 +694,7 @@
 Index: gdb-6.3/gdb/testsuite/gdb.dwarf2/cfa-val-expr.exp
 ===================================================================
 --- /dev/null	1970-01-01 00:00:00.000000000 +0000
-+++ gdb-6.3/gdb/testsuite/gdb.dwarf2/cfa-val-expr.exp	2006-03-07 01:35:17.000000000 -0300
++++ gdb-6.3/gdb/testsuite/gdb.dwarf2/cfa-val-expr.exp	2006-03-07 01:45:13.000000000 -0300
 @@ -0,0 +1,91 @@
 +# Copyright 2006 Free Software Foundation, Inc.
 +
@@ -798,8 +789,8 @@
 +return 0
 Index: gdb-6.3/include/elf/dwarf2.h
 ===================================================================
---- gdb-6.3.orig/include/elf/dwarf2.h	2006-03-04 09:15:43.000000000 -0300
-+++ gdb-6.3/include/elf/dwarf2.h	2006-03-04 09:17:24.000000000 -0300
+--- gdb-6.3.orig/include/elf/dwarf2.h	2006-03-07 01:45:08.000000000 -0300
++++ gdb-6.3/include/elf/dwarf2.h	2006-03-07 01:45:13.000000000 -0300
 @@ -1,7 +1,7 @@
 -/* Declarations and definitions of codes relating to the DWARF2 symbolic
 -   debugging information format.
@@ -935,8 +926,8 @@
      /* UPC.  */
 Index: gdb-6.3/gdb/valarith.c
 ===================================================================
---- gdb-6.3.orig/gdb/valarith.c	2006-03-04 09:15:43.000000000 -0300
-+++ gdb-6.3/gdb/valarith.c	2006-03-04 09:17:24.000000000 -0300
+--- gdb-6.3.orig/gdb/valarith.c	2006-03-07 01:45:08.000000000 -0300
++++ gdb-6.3/gdb/valarith.c	2006-03-07 01:45:13.000000000 -0300
 @@ -881,7 +881,14 @@ value_binop (struct value *arg1, struct 
           Use the signedness of the operand with the greater length.
           If both operands are of equal length, use unsigned operation

gdb-6.3-prelink-core-20060223.patch:
 Makefile.in                      |    2 
 mipsnbsd-tdep.c                  |    6 +
 solib-legacy.c                   |   11 +++
 solib-svr4.c                     |  127 +++++++++++++++++++++++++++++++++++----
 solib-svr4.h                     |    6 +
 testsuite/gdb.base/prelink-lib.c |   34 ++++++++++
 testsuite/gdb.base/prelink.c     |   30 +++++++++
 testsuite/gdb.base/prelink.exp   |  116 +++++++++++++++++++++++++++++++++++
 8 files changed, 320 insertions(+), 12 deletions(-)

Index: gdb-6.3-prelink-core-20060223.patch
===================================================================
RCS file: /cvs/dist/rpms/gdb/devel/gdb-6.3-prelink-core-20060223.patch,v
retrieving revision 1.3
retrieving revision 1.4
diff -u -r1.3 -r1.4
--- gdb-6.3-prelink-core-20060223.patch	7 Mar 2006 05:13:18 -0000	1.3
+++ gdb-6.3-prelink-core-20060223.patch	8 Mar 2006 23:48:02 -0000	1.4
@@ -1,4 +1,10 @@
 for gdb/ChangeLog
+2006-03-08  Alexandre Oliva  <aoliva at redhat.com>
+
+	* solib-svr4.c (svr4_current_sos): Move up initialization of
+	l_addr, such that it covers all cases.
+	(info_linkmap_command): Initialize l_addr.
+
 2006-02-28  Alexandre Oliva  <aoliva at redhat.com>
 
 	* solib-svr4.h (struct link_map_offsets): Add l_ld_offset and
@@ -18,6 +24,11 @@
 	* Makefile.in (solib-svr4.o): Depend on $(elf_bfd_h).
 
 for gdb/testsuite/ChangeLog
+2006-03-08  Alexandre Oliva  <aoliva at redhat.com>
+
+	* gdb.base/prelink.exp: Anchor tested-for regular expression
+	on gdb prompt.
+
 2006-03-07  Alexandre Oliva  <aoliva at redhat.com>
 
 	* gdb.base/prelink.c, gdb.base/prelink-lib.c: Update FSF address.
@@ -33,8 +44,8 @@
 
 Index: gdb-6.3/gdb/mipsnbsd-tdep.c
 ===================================================================
---- gdb-6.3.orig/gdb/mipsnbsd-tdep.c	2006-03-07 01:45:10.000000000 -0300
-+++ gdb-6.3/gdb/mipsnbsd-tdep.c	2006-03-07 01:45:13.000000000 -0300
+--- gdb-6.3.orig/gdb/mipsnbsd-tdep.c	2006-03-08 18:39:08.000000000 -0300
++++ gdb-6.3/gdb/mipsnbsd-tdep.c	2006-03-08 19:41:32.000000000 -0300
 @@ -295,6 +295,9 @@ mipsnbsd_ilp32_solib_svr4_fetch_link_map
        lmo.l_name_offset = 8;
        lmo.l_name_size   = 4;
@@ -57,8 +68,8 @@
  
 Index: gdb-6.3/gdb/solib-legacy.c
 ===================================================================
---- gdb-6.3.orig/gdb/solib-legacy.c	2006-03-07 01:45:10.000000000 -0300
-+++ gdb-6.3/gdb/solib-legacy.c	2006-03-07 01:45:13.000000000 -0300
+--- gdb-6.3.orig/gdb/solib-legacy.c	2006-03-08 18:39:08.000000000 -0300
++++ gdb-6.3/gdb/solib-legacy.c	2006-03-08 19:41:32.000000000 -0300
 @@ -68,6 +68,9 @@ legacy_svr4_fetch_link_map_offsets (void
        lmo.l_next_offset = offsetof (struct link_map, l_next);
        lmo.l_next_size = fieldsize (struct link_map, l_next);
@@ -93,8 +104,8 @@
  #endif /* HAVE_STRUCT_LINK_MAP_WITH_L_MEMBERS */
 Index: gdb-6.3/gdb/solib-svr4.c
 ===================================================================
---- gdb-6.3.orig/gdb/solib-svr4.c	2006-03-07 01:45:10.000000000 -0300
-+++ gdb-6.3/gdb/solib-svr4.c	2006-03-07 01:45:13.000000000 -0300
+--- gdb-6.3.orig/gdb/solib-svr4.c	2006-03-08 18:39:08.000000000 -0300
++++ gdb-6.3/gdb/solib-svr4.c	2006-03-08 20:34:48.000000000 -0300
 @@ -36,10 +36,13 @@
  #include "inferior.h"
  #include "command.h"
@@ -227,15 +238,15 @@
  static CORE_ADDR
  LM_NEXT (struct so_list *so)
  {
-@@ -773,6 +870,7 @@ svr4_current_sos (void)
- 
- 	      /* We need this in the list of shared libs we return because
- 		 solib_add_stub will loop through it and add the symbol file.  */
-+	      new->lm_info->l_addr = (CORE_ADDR)-1;
- 	      new->next = 0;
- 	      *link_ptr = new;
- 	      link_ptr = &new->next; 
-@@ -831,10 +929,10 @@ svr4_current_sos (void)
+@@ -693,6 +790,7 @@ svr4_current_sos (void)
+       new->lm_info = xmalloc (sizeof (struct lm_info));
+       make_cleanup (xfree, new->lm_info);
+ 
++      new->lm_info->l_addr = (CORE_ADDR)-1;
+       new->lm_info->lm = xmalloc (lmo->link_map_size);
+       make_cleanup (xfree, new->lm_info->lm);
+       memset (new->lm_info->lm, 0, lmo->link_map_size);
+@@ -831,10 +929,9 @@ svr4_current_sos (void)
  				      IGNORE_FIRST_LINK_MAP_ENTRY (new));
  		}
  
@@ -243,14 +254,13 @@
 -	  *link_ptr = new;
 -	  link_ptr = &new->next;
 -
-+	      new->lm_info->l_addr = (CORE_ADDR)-1;
 +	      new->next = 0;
 +	      *link_ptr = new;
 +	      link_ptr = &new->next;
              }
            }
  	}
-@@ -1106,7 +1204,7 @@ enable_break (void)
+@@ -1106,7 +1203,7 @@ enable_break (void)
  	  if (strcmp (buf, so->so_original_name) == 0)
  	    {
  	      load_addr_found = 1;
@@ -259,7 +269,7 @@
  	      break;
  	    }
  	  so = so->next;
-@@ -1470,8 +1568,10 @@ static void
+@@ -1470,8 +1567,10 @@ static void
  svr4_relocate_section_addresses (struct so_list *so,
                                   struct section_table *sec)
  {
@@ -272,7 +282,7 @@
  }
  
  
-@@ -1587,6 +1687,8 @@ svr4_ilp32_fetch_link_map_offsets (void)
+@@ -1587,6 +1686,8 @@ svr4_ilp32_fetch_link_map_offsets (void)
        lmo.l_addr_size   = 4;
        lmo.l_name_offset = 4;
        lmo.l_name_size   = 4;
@@ -281,7 +291,7 @@
        lmo.l_next_offset = 12;
        lmo.l_next_size   = 4;
        lmo.l_prev_offset = 16;
-@@ -1620,6 +1722,8 @@ svr4_lp64_fetch_link_map_offsets (void)
+@@ -1620,6 +1721,8 @@ svr4_lp64_fetch_link_map_offsets (void)
        lmo.l_addr_size   = 8;
        lmo.l_name_offset = 8;
        lmo.l_name_size   = 8;
@@ -290,7 +300,22 @@
        lmo.l_next_offset = 24;
        lmo.l_next_size   = 8;
        lmo.l_prev_offset = 32;
-@@ -1682,7 +1786,7 @@ info_linkmap_command (char *cmd, int fro
+@@ -1669,7 +1772,8 @@ info_linkmap_command (char *cmd, int fro
+ 
+       new->lm_info = xmalloc (sizeof (struct lm_info));
+       make_cleanup (xfree, new->lm_info);
+-                                                                                
++
++      new->lm_info->l_addr = (CORE_ADDR)-1;
+       new->lm_info->lm = xmalloc (lmo->link_map_size);
+       make_cleanup (xfree, new->lm_info->lm);
+       memset (new->lm_info->lm, 0, lmo->link_map_size);
+@@ -1678,11 +1782,12 @@ info_linkmap_command (char *cmd, int fro
+         fprintf_unfiltered (gdb_stdlog,
+                             "svr4_print_linkmap: read lm at 0x%s\n", paddr_nz(lm));
+       read_memory (lm, new->lm_info->lm, lmo->link_map_size);
++
+                                                                                 
        lm = LM_NEXT (new);
                                                                                  
        /* Load address.  */
@@ -301,8 +326,8 @@
  			  SO_NAME_MAX_PATH_SIZE - 1, &errcode);
 Index: gdb-6.3/gdb/solib-svr4.h
 ===================================================================
---- gdb-6.3.orig/gdb/solib-svr4.h	2006-03-07 01:45:10.000000000 -0300
-+++ gdb-6.3/gdb/solib-svr4.h	2006-03-07 01:45:13.000000000 -0300
+--- gdb-6.3.orig/gdb/solib-svr4.h	2006-03-08 18:39:08.000000000 -0300
++++ gdb-6.3/gdb/solib-svr4.h	2006-03-08 19:41:32.000000000 -0300
 @@ -51,6 +51,12 @@ struct link_map_offsets
      /* Size of l_addr field in struct link_map.  */
      int l_addr_size;
@@ -318,8 +343,8 @@
  
 Index: gdb-6.3/gdb/Makefile.in
 ===================================================================
---- gdb-6.3.orig/gdb/Makefile.in	2006-03-07 01:45:10.000000000 -0300
-+++ gdb-6.3/gdb/Makefile.in	2006-03-07 01:45:13.000000000 -0300
+--- gdb-6.3.orig/gdb/Makefile.in	2006-03-08 18:39:08.000000000 -0300
++++ gdb-6.3/gdb/Makefile.in	2006-03-08 19:41:32.000000000 -0300
 @@ -2535,7 +2535,7 @@ solib-sunos.o: solib-sunos.c $(defs_h) $
  solib-svr4.o: solib-svr4.c $(defs_h) $(elf_external_h) $(elf_common_h) \
  	$(elf_mips_h) $(symtab_h) $(bfd_h) $(symfile_h) $(objfiles_h) \
@@ -332,7 +357,7 @@
 Index: gdb-6.3/gdb/testsuite/gdb.base/prelink-lib.c
 ===================================================================
 --- /dev/null	1970-01-01 00:00:00.000000000 +0000
-+++ gdb-6.3/gdb/testsuite/gdb.base/prelink-lib.c	2006-03-07 01:45:13.000000000 -0300
++++ gdb-6.3/gdb/testsuite/gdb.base/prelink-lib.c	2006-03-08 19:41:32.000000000 -0300
 @@ -0,0 +1,34 @@
 +/* This testcase is part of GDB, the GNU debugger.
 +
@@ -371,7 +396,7 @@
 Index: gdb-6.3/gdb/testsuite/gdb.base/prelink.c
 ===================================================================
 --- /dev/null	1970-01-01 00:00:00.000000000 +0000
-+++ gdb-6.3/gdb/testsuite/gdb.base/prelink.c	2006-03-07 01:45:13.000000000 -0300
++++ gdb-6.3/gdb/testsuite/gdb.base/prelink.c	2006-03-08 19:41:32.000000000 -0300
 @@ -0,0 +1,30 @@
 +/* This testcase is part of GDB, the GNU debugger.
 +
@@ -406,8 +431,8 @@
 Index: gdb-6.3/gdb/testsuite/gdb.base/prelink.exp
 ===================================================================
 --- /dev/null	1970-01-01 00:00:00.000000000 +0000
-+++ gdb-6.3/gdb/testsuite/gdb.base/prelink.exp	2006-03-07 01:50:42.000000000 -0300
-@@ -0,0 +1,115 @@
++++ gdb-6.3/gdb/testsuite/gdb.base/prelink.exp	2006-03-08 20:40:36.000000000 -0300
+@@ -0,0 +1,116 @@
 +# Copyright 2006 Free Software Foundation, Inc.
 +
 +# This program is free software; you can redistribute it and/or modify
@@ -513,8 +538,9 @@
 +gdb_load ${binfile}
 +
 +set test "prelink"
++global gdb_prompt
 +gdb_test_multiple "core-file $objdir/$subdir/prelink.core" "$test" {
-+    -re "warning: \.dynamic section.*not at the expected address.*warning: difference.*caused by prelink, adjusting expectations." {
++    -re "warning: \.dynamic section.*not at the expected address.*warning: difference.*caused by prelink, adjusting expectations.*$gdb_prompt $" {
 +	pass "$test"
 +    }
 +}


Index: gdb.spec
===================================================================
RCS file: /cvs/dist/rpms/gdb/devel/gdb.spec,v
retrieving revision 1.177
retrieving revision 1.178
diff -u -r1.177 -r1.178
--- gdb.spec	7 Mar 2006 05:17:56 -0000	1.177
+++ gdb.spec	8 Mar 2006 23:48:02 -0000	1.178
@@ -11,7 +11,7 @@
 Version: 6.3.0.0
 
 # The release always contains a leading reserved number, start it at 0.
-Release: 1.118
+Release: 1.122
 
 License: GPL
 Group: Development/Debuggers
@@ -549,6 +549,14 @@
 # don't include the files in include, they are part of binutils
 
 %changelog
+* Wed Mar  8 2006 Alexandre Oliva <aoliva at redhat.com> - 6.3.0.0-1.122
+- Bump up release number.
+
+* Wed Mar  8 2006 Alexandre Oliva <aoliva at redhat.com> - 6.3.0.0-1.119
+- Fix regression in PIE debugging (BZ 133944) (re?)introduced by
+the prelink fix (BZ 175075).  Improve testcase for the prelink fix.
+- Revert dwarf2 frame identifier change.
+
 * Tue Mar  7 2006 Alexandre Oliva <aoliva at redhat.com> - 6.3.0.0-1.118
 - Bump up release number.
 




More information about the fedora-cvs-commits mailing list