* elf32-s390.c (allocate_dynrelocs, elf_s390_relocate_section):
authorMartin Schwidefsky <schwidefsky@de.ibm.com>
Fri, 9 May 2003 16:41:42 +0000 (16:41 +0000)
committerMartin Schwidefsky <schwidefsky@de.ibm.com>
Fri, 9 May 2003 16:41:42 +0000 (16:41 +0000)
Fix WILL_CALL_FINISH_DYNAMIC_SYMBOL call.
(WILL_CALL_FINISH_DYNAMIC_SYMBOL): Pass SHARED instead of INFO.
* elf64-s390.c: Likewise.

bfd/ChangeLog
bfd/elf32-s390.c
bfd/elf64-s390.c

index 4a2bc48..0cf4ea3 100644 (file)
@@ -1,5 +1,12 @@
 2003-05-09  Martin Schwidefsky  <schwidefsky@de.ibm.com>
 
+       * elf32-s390.c (allocate_dynrelocs, elf_s390_relocate_section):
+       Fix WILL_CALL_FINISH_DYNAMIC_SYMBOL call.
+       (WILL_CALL_FINISH_DYNAMIC_SYMBOL): Pass SHARED instead of INFO.
+       * elf64-s390.c: Likewise.
+
+2003-05-09  Martin Schwidefsky  <schwidefsky@de.ibm.com>
+
        * elf32-s390.c (ELIMINATE_COPY_RELOCS): Define as one.
        (elf_s390_adjust_dynamic_symbol): For weak symbols, copy
        ELF_LINK_NON_GOT_REF from weakdef.
index c411e31..9475f60 100644 (file)
@@ -1644,9 +1644,9 @@ elf_s390_adjust_dynamic_symbol (info, h)
    will be called from elflink.h.  If elflink.h doesn't call our
    finish_dynamic_symbol routine, we'll need to do something about
    initializing any .plt and .got entries in elf_s390_relocate_section.  */
-#define WILL_CALL_FINISH_DYNAMIC_SYMBOL(DYN, INFO, H) \
+#define WILL_CALL_FINISH_DYNAMIC_SYMBOL(DYN, SHARED, H) \
   ((DYN)                                                               \
-   && ((INFO)->shared                                                  \
+   && ((SHARED)                                                                \
        || ((H)->elf_link_hash_flags & ELF_LINK_FORCED_LOCAL) == 0)     \
    && ((H)->dynindx != -1                                              \
        || ((H)->elf_link_hash_flags & ELF_LINK_FORCED_LOCAL) != 0))
@@ -1691,7 +1691,7 @@ allocate_dynrelocs (h, inf)
        }
 
       if (info->shared
-         || WILL_CALL_FINISH_DYNAMIC_SYMBOL (1, info, h))
+         || WILL_CALL_FINISH_DYNAMIC_SYMBOL (1, 0, h))
        {
          asection *s = htab->splt;
 
@@ -2339,7 +2339,7 @@ elf_s390_relocate_section (output_bfd, info, input_bfd, input_section,
 
              off = h->got.offset;
              dyn = htab->elf.dynamic_sections_created;
-             if (! WILL_CALL_FINISH_DYNAMIC_SYMBOL (dyn, info, h)
+             if (! WILL_CALL_FINISH_DYNAMIC_SYMBOL (dyn, info->shared, h)
                  || (info->shared
                      && (info->symbolic
                          || h->dynindx == -1
index b8c0b6a..98555f2 100644 (file)
@@ -1616,9 +1616,9 @@ elf_s390_adjust_dynamic_symbol (info, h)
    will be called from elflink.h.  If elflink.h doesn't call our
    finish_dynamic_symbol routine, we'll need to do something about
    initializing any .plt and .got entries in elf_s390_relocate_section.  */
-#define WILL_CALL_FINISH_DYNAMIC_SYMBOL(DYN, INFO, H) \
+#define WILL_CALL_FINISH_DYNAMIC_SYMBOL(DYN, SHARED, H) \
   ((DYN)                                                               \
-   && ((INFO)->shared                                                  \
+   && ((SHARED)                                                                \
        || ((H)->elf_link_hash_flags & ELF_LINK_FORCED_LOCAL) == 0)     \
    && ((H)->dynindx != -1                                              \
        || ((H)->elf_link_hash_flags & ELF_LINK_FORCED_LOCAL) != 0))
@@ -1663,7 +1663,7 @@ allocate_dynrelocs (h, inf)
        }
 
       if (info->shared
-         || WILL_CALL_FINISH_DYNAMIC_SYMBOL (1, info, h))
+         || WILL_CALL_FINISH_DYNAMIC_SYMBOL (1, 0, h))
        {
          asection *s = htab->splt;
 
@@ -2312,7 +2312,7 @@ elf_s390_relocate_section (output_bfd, info, input_bfd, input_section,
 
              off = h->got.offset;
              dyn = htab->elf.dynamic_sections_created;
-             if (! WILL_CALL_FINISH_DYNAMIC_SYMBOL (dyn, info, h)
+             if (! WILL_CALL_FINISH_DYNAMIC_SYMBOL (dyn, info->shared, h)
                  || (info->shared
                      && (info->symbolic
                          || h->dynindx == -1