aboutsummaryrefslogtreecommitdiff
path: root/sysdeps/s390/s390-32
diff options
context:
space:
mode:
Diffstat (limited to 'sysdeps/s390/s390-32')
-rw-r--r--sysdeps/s390/s390-32/dl-machine.h8
1 files changed, 7 insertions, 1 deletions
diff --git a/sysdeps/s390/s390-32/dl-machine.h b/sysdeps/s390/s390-32/dl-machine.h
index 6905814c41..017077ad1d 100644
--- a/sysdeps/s390/s390-32/dl-machine.h
+++ b/sysdeps/s390/s390-32/dl-machine.h
@@ -424,7 +424,8 @@ elf_machine_rela (struct link_map *map, const Elf32_Rela *reloc,
*reloc_addr = value + reloc->r_addend;
break;
-#if defined USE_TLS && (!defined RTLD_BOOTSTRAP || USE___THREAD)
+#if defined USE_TLS && (!defined RTLD_BOOTSTRAP || USE___THREAD) \
+ && !defined RESOLVE_CONFLICT_FIND_MAP
case R_390_TLS_DTPMOD:
# ifdef RTLD_BOOTSTRAP
/* During startup the dynamic linker is always the module
@@ -466,6 +467,8 @@ elf_machine_rela (struct link_map *map, const Elf32_Rela *reloc,
#endif /* use TLS */
#ifndef RTLD_BOOTSTRAP
+# ifndef RESOLVE_CONFLICT_FIND_MAP
+ /* Not needed in dl-conflict.c. */
case R_390_COPY:
if (sym == NULL)
/* This can happen in trace mode if an object could not be
@@ -486,6 +489,7 @@ elf_machine_rela (struct link_map *map, const Elf32_Rela *reloc,
memcpy (reloc_addr, (void *) value, MIN (sym->st_size,
refsym->st_size));
break;
+# endif
case R_390_32:
*reloc_addr = value + reloc->r_addend;
break;
@@ -495,6 +499,7 @@ elf_machine_rela (struct link_map *map, const Elf32_Rela *reloc,
case R_390_8:
*(char *) reloc_addr = value + reloc->r_addend;
break;
+# ifndef RESOLVE_CONFLICT_FIND_MAP
case R_390_PC32:
*reloc_addr = value + reloc->r_addend - (Elf32_Addr) reloc_addr;
break;
@@ -509,6 +514,7 @@ elf_machine_rela (struct link_map *map, const Elf32_Rela *reloc,
break;
case R_390_NONE:
break;
+# endif
#endif
#if !defined(RTLD_BOOTSTRAP) || defined(_NDEBUG)
default: