aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMartin Schwidefsky <schwidefsky@de.ibm.com>2011-12-22 15:00:44 +0000
committerMartin Schwidefsky <schwidefsky@de.ibm.com>2011-12-22 15:00:44 +0000
commitde8bee766b6bf227b4fd9cd65f64c8c64795760a (patch)
treec48133ef93ec3574d22a15527ebffdc003be07dd
parentb19686e08b06fc87494cc72e9df6d5993401831a (diff)
downloadgdb-de8bee766b6bf227b4fd9cd65f64c8c64795760a.zip
gdb-de8bee766b6bf227b4fd9cd65f64c8c64795760a.tar.gz
gdb-de8bee766b6bf227b4fd9cd65f64c8c64795760a.tar.bz2
2011-12-22 Martin Schwidefsky <schwidefsky@de.ibm.com>
* elf32-s390.c (elf_s390_relocate_section): Add check for debugging section in LD to LE linker relaxation for R_390_TLS_LDO32. * elf64-s390.c (elf_s390_relocate_section): Likewise for R_390_TLS_LDO64.
-rw-r--r--bfd/ChangeLog7
-rw-r--r--bfd/elf32-s390.c2
-rw-r--r--bfd/elf64-s390.c2
3 files changed, 9 insertions, 2 deletions
diff --git a/bfd/ChangeLog b/bfd/ChangeLog
index 0619adb..a7923bd 100644
--- a/bfd/ChangeLog
+++ b/bfd/ChangeLog
@@ -1,3 +1,10 @@
+2011-12-22 Martin Schwidefsky <schwidefsky@de.ibm.com>
+
+ * elf32-s390.c (elf_s390_relocate_section): Add check for debugging
+ section in LD to LE linker relaxation for R_390_TLS_LDO32.
+ * elf64-s390.c (elf_s390_relocate_section): Likewise for
+ R_390_TLS_LDO64.
+
2011-12-21 Ulrich Weigand <ulrich.weigand@linaro.org>
* elf32-arm.c (elf32_arm_nabi_grok_psinfo): Fill in core_pid.
diff --git a/bfd/elf32-s390.c b/bfd/elf32-s390.c
index 2cfd53e..bb58670 100644
--- a/bfd/elf32-s390.c
+++ b/bfd/elf32-s390.c
@@ -2862,7 +2862,7 @@ elf_s390_relocate_section (output_bfd, info, input_bfd, input_section,
continue;
case R_390_TLS_LDO32:
- if (info->shared)
+ if (info->shared || (input_section->flags & SEC_DEBUGGING))
relocation -= dtpoff_base (info);
else
/* When converting LDO to LE, we must negate. */
diff --git a/bfd/elf64-s390.c b/bfd/elf64-s390.c
index 7d3e882..06f96a4 100644
--- a/bfd/elf64-s390.c
+++ b/bfd/elf64-s390.c
@@ -2861,7 +2861,7 @@ elf_s390_relocate_section (bfd *output_bfd,
continue;
case R_390_TLS_LDO64:
- if (info->shared)
+ if (info->shared || (input_section->flags & SEC_DEBUGGING))
relocation -= dtpoff_base (info);
else
/* When converting LDO to LE, we must negate. */