- Upgrade to the upstream gdb-6.8.50 snapshot.
This commit is contained in:
parent
39347a6c8a
commit
407ebe9063
73 changed files with 3708 additions and 10930 deletions
|
|
@ -30,11 +30,11 @@ glibc-debuginfo-2.7-2.x86_64: /usr/lib/debug/lib64/libc.so.6.debug:
|
|||
<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.8cvs20080219/gdb/dwarf2read.c
|
||||
Index: gdb-6.8.50.20081128/gdb/dwarf2read.c
|
||||
===================================================================
|
||||
--- gdb-6.8cvs20080219.orig/gdb/dwarf2read.c 2008-02-19 17:27:21.000000000 +0100
|
||||
+++ gdb-6.8cvs20080219/gdb/dwarf2read.c 2008-02-20 13:35:19.000000000 +0100
|
||||
@@ -5679,8 +5679,8 @@ read_partial_die (struct partial_die_inf
|
||||
--- gdb-6.8.50.20081128.orig/gdb/dwarf2read.c 2008-12-04 10:26:18.000000000 +0100
|
||||
+++ gdb-6.8.50.20081128/gdb/dwarf2read.c 2008-12-04 10:26:40.000000000 +0100
|
||||
@@ -5886,8 +5886,8 @@ read_partial_die (struct partial_die_inf
|
||||
{
|
||||
case DW_AT_name:
|
||||
|
||||
|
|
@ -45,7 +45,7 @@ Index: gdb-6.8cvs20080219/gdb/dwarf2read.c
|
|||
part_die->name = DW_STRING (&attr);
|
||||
break;
|
||||
case DW_AT_comp_dir:
|
||||
@@ -5688,7 +5688,9 @@ read_partial_die (struct partial_die_inf
|
||||
@@ -5895,7 +5895,9 @@ read_partial_die (struct partial_die_inf
|
||||
part_die->dirname = DW_STRING (&attr);
|
||||
break;
|
||||
case DW_AT_MIPS_linkage_name:
|
||||
|
|
@ -56,7 +56,7 @@ Index: gdb-6.8cvs20080219/gdb/dwarf2read.c
|
|||
break;
|
||||
case DW_AT_low_pc:
|
||||
has_low_pc_attr = 1;
|
||||
@@ -7936,9 +7938,13 @@ dwarf2_linkage_name (struct die_info *di
|
||||
@@ -8129,9 +8131,13 @@ dwarf2_linkage_name (struct die_info *di
|
||||
{
|
||||
struct attribute *attr;
|
||||
|
||||
|
|
@ -73,11 +73,11 @@ Index: gdb-6.8cvs20080219/gdb/dwarf2read.c
|
|||
attr = dwarf2_attr (die, DW_AT_name, cu);
|
||||
if (attr && DW_STRING (attr))
|
||||
return DW_STRING (attr);
|
||||
Index: gdb-6.8cvs20080219/gdb/gdbtypes.c
|
||||
Index: gdb-6.8.50.20081128/gdb/gdbtypes.c
|
||||
===================================================================
|
||||
--- gdb-6.8cvs20080219.orig/gdb/gdbtypes.c 2008-02-14 23:03:57.000000000 +0100
|
||||
+++ gdb-6.8cvs20080219/gdb/gdbtypes.c 2008-02-20 13:35:19.000000000 +0100
|
||||
@@ -3106,6 +3106,8 @@ gdbtypes_post_init (struct gdbarch *gdba
|
||||
--- gdb-6.8.50.20081128.orig/gdb/gdbtypes.c 2008-11-10 21:53:43.000000000 +0100
|
||||
+++ gdb-6.8.50.20081128/gdb/gdbtypes.c 2008-12-04 10:26:40.000000000 +0100
|
||||
@@ -3141,6 +3141,8 @@ gdbtypes_post_init (struct gdbarch *gdba
|
||||
init_type (TYPE_CODE_INT,
|
||||
gdbarch_int_bit (gdbarch) / TARGET_CHAR_BIT,
|
||||
0, "int", (struct objfile *) NULL);
|
||||
|
|
@ -86,7 +86,7 @@ Index: gdb-6.8cvs20080219/gdb/gdbtypes.c
|
|||
builtin_type->builtin_unsigned_int =
|
||||
init_type (TYPE_CODE_INT,
|
||||
gdbarch_int_bit (gdbarch) / TARGET_CHAR_BIT,
|
||||
@@ -3215,6 +3217,11 @@ gdbtypes_post_init (struct gdbarch *gdba
|
||||
@@ -3250,6 +3252,11 @@ gdbtypes_post_init (struct gdbarch *gdba
|
||||
"<text variable, no debug info>", NULL);
|
||||
TYPE_TARGET_TYPE (builtin_type->nodebug_text_symbol) =
|
||||
builtin_type->builtin_int;
|
||||
|
|
@ -98,11 +98,11 @@ Index: gdb-6.8cvs20080219/gdb/gdbtypes.c
|
|||
builtin_type->nodebug_data_symbol =
|
||||
init_type (TYPE_CODE_INT,
|
||||
gdbarch_int_bit (gdbarch) / HOST_CHAR_BIT, 0,
|
||||
Index: gdb-6.8cvs20080219/gdb/gdbtypes.h
|
||||
Index: gdb-6.8.50.20081128/gdb/gdbtypes.h
|
||||
===================================================================
|
||||
--- gdb-6.8cvs20080219.orig/gdb/gdbtypes.h 2008-02-14 23:03:57.000000000 +0100
|
||||
+++ gdb-6.8cvs20080219/gdb/gdbtypes.h 2008-02-20 13:35:19.000000000 +0100
|
||||
@@ -942,6 +942,7 @@ struct builtin_type
|
||||
--- gdb-6.8.50.20081128.orig/gdb/gdbtypes.h 2008-10-28 18:19:56.000000000 +0100
|
||||
+++ gdb-6.8.50.20081128/gdb/gdbtypes.h 2008-12-04 10:26:40.000000000 +0100
|
||||
@@ -975,6 +975,7 @@ struct builtin_type
|
||||
|
||||
/* Types used for symbols with no debug information. */
|
||||
struct type *nodebug_text_symbol;
|
||||
|
|
@ -110,7 +110,7 @@ Index: gdb-6.8cvs20080219/gdb/gdbtypes.h
|
|||
struct type *nodebug_data_symbol;
|
||||
struct type *nodebug_unknown_symbol;
|
||||
struct type *nodebug_tls_symbol;
|
||||
@@ -960,6 +961,7 @@ struct builtin_type
|
||||
@@ -987,6 +988,7 @@ struct builtin_type
|
||||
struct type *builtin_char;
|
||||
struct type *builtin_short;
|
||||
struct type *builtin_int;
|
||||
|
|
@ -118,11 +118,11 @@ Index: gdb-6.8cvs20080219/gdb/gdbtypes.h
|
|||
struct type *builtin_long;
|
||||
struct type *builtin_signed_char;
|
||||
struct type *builtin_unsigned_char;
|
||||
Index: gdb-6.8cvs20080219/gdb/parse.c
|
||||
Index: gdb-6.8.50.20081128/gdb/parse.c
|
||||
===================================================================
|
||||
--- gdb-6.8cvs20080219.orig/gdb/parse.c 2008-01-02 00:04:03.000000000 +0100
|
||||
+++ gdb-6.8cvs20080219/gdb/parse.c 2008-02-20 13:35:19.000000000 +0100
|
||||
@@ -437,7 +437,12 @@ write_exp_msymbol (struct minimal_symbol
|
||||
--- gdb-6.8.50.20081128.orig/gdb/parse.c 2008-11-24 18:05:43.000000000 +0100
|
||||
+++ gdb-6.8.50.20081128/gdb/parse.c 2008-12-04 10:26:40.000000000 +0100
|
||||
@@ -449,7 +449,12 @@ write_exp_msymbol (struct minimal_symbol
|
||||
case mst_text:
|
||||
case mst_file_text:
|
||||
case mst_solib_trampoline:
|
||||
|
|
@ -136,12 +136,12 @@ Index: gdb-6.8cvs20080219/gdb/parse.c
|
|||
break;
|
||||
|
||||
case mst_data:
|
||||
Index: gdb-6.8cvs20080219/gdb/target.c
|
||||
Index: gdb-6.8.50.20081128/gdb/target.c
|
||||
===================================================================
|
||||
--- gdb-6.8cvs20080219.orig/gdb/target.c 2008-02-19 17:22:33.000000000 +0100
|
||||
+++ gdb-6.8cvs20080219/gdb/target.c 2008-02-20 13:36:17.000000000 +0100
|
||||
@@ -812,6 +812,25 @@ pop_target (void)
|
||||
internal_error (__FILE__, __LINE__, _("failed internal consistency check"));
|
||||
--- gdb-6.8.50.20081128.orig/gdb/target.c 2008-12-04 10:24:58.000000000 +0100
|
||||
+++ gdb-6.8.50.20081128/gdb/target.c 2008-12-04 10:29:07.000000000 +0100
|
||||
@@ -850,6 +850,25 @@ pop_all_targets (int quitting)
|
||||
pop_all_targets_above (dummy_stratum, quitting);
|
||||
}
|
||||
|
||||
+static int
|
||||
|
|
@ -166,7 +166,7 @@ Index: gdb-6.8cvs20080219/gdb/target.c
|
|||
/* Using the objfile specified in OBJFILE, find the address for the
|
||||
current thread's thread-local storage with offset OFFSET. */
|
||||
CORE_ADDR
|
||||
@@ -893,7 +912,28 @@ target_translate_tls_address (struct obj
|
||||
@@ -931,7 +950,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
|
||||
|
|
@ -177,13 +177,13 @@ Index: gdb-6.8cvs20080219/gdb/target.c
|
|||
+ msymbol = lookup_minimal_symbol ("errno", NULL, NULL);
|
||||
+ if (msymbol != NULL
|
||||
+ && SYMBOL_VALUE_ADDRESS (msymbol) == offset
|
||||
+ && (SYMBOL_BFD_SECTION (msymbol)->owner == objfile->obfd
|
||||
+ && (SYMBOL_OBJ_SECTION (msymbol)->objfile == objfile
|
||||
+ || (objfile->separate_debug_objfile != NULL
|
||||
+ && SYMBOL_BFD_SECTION (msymbol)->owner
|
||||
+ == objfile->separate_debug_objfile->obfd)
|
||||
+ && SYMBOL_OBJ_SECTION (msymbol)->objfile
|
||||
+ == objfile->separate_debug_objfile)
|
||||
+ || (objfile->separate_debug_objfile_backlink != NULL
|
||||
+ && SYMBOL_BFD_SECTION (msymbol)->owner
|
||||
+ == objfile->separate_debug_objfile_backlink->obfd)))
|
||||
+ && SYMBOL_OBJ_SECTION (msymbol)->objfile
|
||||
+ == objfile->separate_debug_objfile_backlink)))
|
||||
+ {
|
||||
+ if (!catch_errors (resolve_errno, (void *) &addr, "",
|
||||
+ RETURN_MASK_ALL))
|
||||
|
|
@ -196,22 +196,10 @@ Index: gdb-6.8cvs20080219/gdb/target.c
|
|||
|
||||
return addr;
|
||||
}
|
||||
--- ./gdb/elfread.c 2008-08-03 11:02:10.000000000 +0200
|
||||
+++ ./gdb/elfread.c 2008-08-03 11:01:21.000000000 +0200
|
||||
@@ -318,7 +318,8 @@ elf_symtab_read (struct objfile *objfile
|
||||
/* Bfd symbols are section relative. */
|
||||
symaddr = sym->value + sym->section->vma;
|
||||
/* Relocate all non-absolute symbols by the section offset. */
|
||||
- if (sym->section != &bfd_abs_section)
|
||||
+ if (sym->section != &bfd_abs_section
|
||||
+ && (sym->section->flags & SEC_THREAD_LOCAL) == 0)
|
||||
{
|
||||
symaddr += offset;
|
||||
}
|
||||
Index: gdb-6.8cvs20080219/gdb/testsuite/gdb.dwarf2/dw2-errno.c
|
||||
Index: gdb-6.8.50.20081128/gdb/testsuite/gdb.dwarf2/dw2-errno.c
|
||||
===================================================================
|
||||
--- /dev/null 1970-01-01 00:00:00.000000000 +0000
|
||||
+++ gdb-6.8cvs20080219/gdb/testsuite/gdb.dwarf2/dw2-errno.c 2008-02-20 13:35:19.000000000 +0100
|
||||
+++ gdb-6.8.50.20081128/gdb/testsuite/gdb.dwarf2/dw2-errno.c 2008-12-04 10:26:40.000000000 +0100
|
||||
@@ -0,0 +1,28 @@
|
||||
+/* This testcase is part of GDB, the GNU debugger.
|
||||
+
|
||||
|
|
@ -241,10 +229,10 @@ Index: gdb-6.8cvs20080219/gdb/testsuite/gdb.dwarf2/dw2-errno.c
|
|||
+
|
||||
+ return 0; /* breakpoint */
|
||||
+}
|
||||
Index: gdb-6.8cvs20080219/gdb/testsuite/gdb.dwarf2/dw2-errno.exp
|
||||
Index: gdb-6.8.50.20081128/gdb/testsuite/gdb.dwarf2/dw2-errno.exp
|
||||
===================================================================
|
||||
--- /dev/null 1970-01-01 00:00:00.000000000 +0000
|
||||
+++ gdb-6.8cvs20080219/gdb/testsuite/gdb.dwarf2/dw2-errno.exp 2008-02-20 13:35:19.000000000 +0100
|
||||
+++ gdb-6.8.50.20081128/gdb/testsuite/gdb.dwarf2/dw2-errno.exp 2008-12-04 10:26:40.000000000 +0100
|
||||
@@ -0,0 +1,67 @@
|
||||
+# Copyright 2007 Free Software Foundation, Inc.
|
||||
+
|
||||
|
|
|
|||
Loading…
Reference in a new issue