aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--gdb/ChangeLog4
-rw-r--r--gdb/objfiles.c4
-rw-r--r--gdb/testsuite/ChangeLog4
-rw-r--r--gdb/testsuite/gdb.dwarf2/dw2-ranges.exp6
4 files changed, 18 insertions, 0 deletions
diff --git a/gdb/ChangeLog b/gdb/ChangeLog
index af795fb..dbc3988 100644
--- a/gdb/ChangeLog
+++ b/gdb/ChangeLog
@@ -1,5 +1,9 @@
2009-11-11 Jan Kratochvil <jan.kratochvil@redhat.com>
+ * objfiles.c (objfile_relocate): Update also the field psymtabs_addrmap.
+
+2009-11-11 Jan Kratochvil <jan.kratochvil@redhat.com>
+
* configure.ac: Call ACX_LARGEFILE.
* aclocal.m4: Call m4_include for ../config/largefile.m4 and
../config/plugins.m4.
diff --git a/gdb/objfiles.c b/gdb/objfiles.c
index 48f2613..4728190 100644
--- a/gdb/objfiles.c
+++ b/gdb/objfiles.c
@@ -680,6 +680,10 @@ objfile_relocate (struct objfile *objfile, struct section_offsets *new_offsets)
}
}
+ if (objfile->psymtabs_addrmap)
+ addrmap_relocate (objfile->psymtabs_addrmap,
+ ANOFFSET (delta, SECT_OFF_TEXT (objfile)));
+
{
struct partial_symtab *p;
diff --git a/gdb/testsuite/ChangeLog b/gdb/testsuite/ChangeLog
index f17187d..b89a23e 100644
--- a/gdb/testsuite/ChangeLog
+++ b/gdb/testsuite/ChangeLog
@@ -1,3 +1,7 @@
+2009-11-11 Jan Kratochvil <jan.kratochvil@redhat.com>
+
+ * gdb.dwarf2/dw2-ranges.exp: Call runto_main.
+
2009-11-09 Keith Seitz <keiths@redhat.com>
* gdb.cp/overload.exp: Add tests for resolving overloaded
diff --git a/gdb/testsuite/gdb.dwarf2/dw2-ranges.exp b/gdb/testsuite/gdb.dwarf2/dw2-ranges.exp
index 61e1fe4..9109030 100644
--- a/gdb/testsuite/gdb.dwarf2/dw2-ranges.exp
+++ b/gdb/testsuite/gdb.dwarf2/dw2-ranges.exp
@@ -55,6 +55,12 @@ gdb_start
gdb_reinitialize_dir $srcdir/$subdir
gdb_load ${binfile}
+# Test also objfile->psymtabs_addrmap relocations for -fPIE -pie builds below.
+# On some targets it may possibly fail but the program is being started only
+# for the PIE build so try it anyway.
+
+runto_main
+
# Correct output:
# Line 39 of "../.././gdb/testsuite/gdb.dwarf2/dw2-ranges.S" starts at address 0x4 and ends at 0x8.
# Wrong output: