* bfd-in.h (bfd_get_section_name, bfd_get_section_vma,
authorNick Clifton <nickc@redhat.com>
Wed, 16 May 2012 16:38:29 +0000 (16:38 +0000)
committerNick Clifton <nickc@redhat.com>
Wed, 16 May 2012 16:38:29 +0000 (16:38 +0000)
bfd_get_section_lma, bfd_get_section_alignment,
bfd_get_section_flags, bfd_get_section_userdata): Rewrite macros
in order to use the `bfd' argument.
* bfd-in2.h: Regenerate.
* elf-vxworks.c (elf_vxworks_finish_dynamic_entry): Pass proper `bfd'
as the first argument for `bfd_get_section_alignment'.
* elf32-arm.c (create_ifunc_sections): Likewise, for
`bfd_set_section_alignment'.
* elf32-m32r.c (m32r_elf_relocate_section): Likewise, for
`bfd_get_section_name'.
* elf32-microblaze.c (microblaze_elf_relocate_section): Likewise.
* elf32-ppc.c (ppc_elf_size_dynamic_sections): Likewise.
(ppc_elf_relocate_section): Likewise.
* elf64-mmix.c (mmix_final_link_relocate): Likewise, for
`bfd_get_section_vma'.
* elf64-ppc.c (create_linkage_sections): Likewise, for
`bfd_set_section_alignment'.

* emultempl/m68hc1xelf.em (hook_in_stub): Pass proper `bfd'
as the first argument for `bfd_get_section_name'.

* config/tc-alpha.c (maybe_set_gp): Pass proper `bfd'
as the first argument for `bfd_get_section_vma'.

14 files changed:
bfd/ChangeLog
bfd/bfd-in.h
bfd/bfd-in2.h
bfd/elf-vxworks.c
bfd/elf32-arm.c
bfd/elf32-m32r.c
bfd/elf32-microblaze.c
bfd/elf32-ppc.c
bfd/elf64-mmix.c
bfd/elf64-ppc.c
gas/ChangeLog
gas/config/tc-alpha.c
ld/ChangeLog
ld/emultempl/m68hc1xelf.em

index 533ed375da2dc6d09b5b681fc1fe0de60cba3b06..57db38ca5687f911da4952c9cad075f27bb20189 100644 (file)
@@ -1,3 +1,24 @@
+2012-05-16  Sergio Durigan Junior  <sergiodj@redhat.com>
+
+       * bfd-in.h (bfd_get_section_name, bfd_get_section_vma,
+       bfd_get_section_lma, bfd_get_section_alignment,
+       bfd_get_section_flags, bfd_get_section_userdata): Rewrite macros
+       in order to use the `bfd' argument.
+       * bfd-in2.h: Regenerate.
+       * elf-vxworks.c (elf_vxworks_finish_dynamic_entry): Pass proper `bfd'
+       as the first argument for `bfd_get_section_alignment'.
+       * elf32-arm.c (create_ifunc_sections): Likewise, for
+       `bfd_set_section_alignment'.
+       * elf32-m32r.c (m32r_elf_relocate_section): Likewise, for
+       `bfd_get_section_name'.
+       * elf32-microblaze.c (microblaze_elf_relocate_section): Likewise.
+       * elf32-ppc.c (ppc_elf_size_dynamic_sections): Likewise.
+       (ppc_elf_relocate_section): Likewise.
+       * elf64-mmix.c (mmix_final_link_relocate): Likewise, for
+       `bfd_get_section_vma'.
+       * elf64-ppc.c (create_linkage_sections): Likewise, for
+       `bfd_set_section_alignment'.
+
 2012-05-16  Georg-Johann Lay  <avr@gjlay.de>
 
        PR target/13503
index bff5f34718537743a35067edf15856fffc4f6c6c..d88bcb6c2415cdae36437037da80ca4b4d3da66f 100644 (file)
@@ -273,18 +273,19 @@ alent;
 
 typedef struct bfd_section *sec_ptr;
 
-#define bfd_get_section_name(bfd, ptr) ((ptr)->name + 0)
-#define bfd_get_section_vma(bfd, ptr) ((ptr)->vma + 0)
-#define bfd_get_section_lma(bfd, ptr) ((ptr)->lma + 0)
-#define bfd_get_section_alignment(bfd, ptr) ((ptr)->alignment_power + 0)
+#define bfd_get_section_name(bfd, ptr) ((void) bfd, (ptr)->name)
+#define bfd_get_section_vma(bfd, ptr) ((void) bfd, (ptr)->vma)
+#define bfd_get_section_lma(bfd, ptr) ((void) bfd, (ptr)->lma)
+#define bfd_get_section_alignment(bfd, ptr) ((void) bfd, \
+                                            (ptr)->alignment_power)
 #define bfd_section_name(bfd, ptr) ((ptr)->name)
 #define bfd_section_size(bfd, ptr) ((ptr)->size)
 #define bfd_get_section_size(ptr) ((ptr)->size)
 #define bfd_section_vma(bfd, ptr) ((ptr)->vma)
 #define bfd_section_lma(bfd, ptr) ((ptr)->lma)
 #define bfd_section_alignment(bfd, ptr) ((ptr)->alignment_power)
-#define bfd_get_section_flags(bfd, ptr) ((ptr)->flags + 0)
-#define bfd_get_section_userdata(bfd, ptr) ((ptr)->userdata)
+#define bfd_get_section_flags(bfd, ptr) ((void) bfd, (ptr)->flags)
+#define bfd_get_section_userdata(bfd, ptr) ((void) bfd, (ptr)->userdata)
 
 #define bfd_is_com_section(ptr) (((ptr)->flags & SEC_IS_COMMON) != 0)
 
index 629d03bf6fb24b82d761e5573a17e5059ba4c015..f1fc33a549192cef43541078de29f64ebca921e9 100644 (file)
@@ -280,18 +280,19 @@ alent;
 
 typedef struct bfd_section *sec_ptr;
 
-#define bfd_get_section_name(bfd, ptr) ((ptr)->name + 0)
-#define bfd_get_section_vma(bfd, ptr) ((ptr)->vma + 0)
-#define bfd_get_section_lma(bfd, ptr) ((ptr)->lma + 0)
-#define bfd_get_section_alignment(bfd, ptr) ((ptr)->alignment_power + 0)
+#define bfd_get_section_name(bfd, ptr) ((void) bfd, (ptr)->name)
+#define bfd_get_section_vma(bfd, ptr) ((void) bfd, (ptr)->vma)
+#define bfd_get_section_lma(bfd, ptr) ((void) bfd, (ptr)->lma)
+#define bfd_get_section_alignment(bfd, ptr) ((void) bfd, \
+                                            (ptr)->alignment_power)
 #define bfd_section_name(bfd, ptr) ((ptr)->name)
 #define bfd_section_size(bfd, ptr) ((ptr)->size)
 #define bfd_get_section_size(ptr) ((ptr)->size)
 #define bfd_section_vma(bfd, ptr) ((ptr)->vma)
 #define bfd_section_lma(bfd, ptr) ((ptr)->lma)
 #define bfd_section_alignment(bfd, ptr) ((ptr)->alignment_power)
-#define bfd_get_section_flags(bfd, ptr) ((ptr)->flags + 0)
-#define bfd_get_section_userdata(bfd, ptr) ((ptr)->userdata)
+#define bfd_get_section_flags(bfd, ptr) ((void) bfd, (ptr)->flags)
+#define bfd_get_section_userdata(bfd, ptr) ((void) bfd, (ptr)->userdata)
 
 #define bfd_is_com_section(ptr) (((ptr)->flags & SEC_IS_COMMON) != 0)
 
index 06edf8dce61def3f9ce6f5384f297fa8cdea3630..61253fa935e59bb5d53f92ea5b69edc70a4ce599 100644 (file)
@@ -1,5 +1,5 @@
 /* VxWorks support for ELF
-   Copyright 2005, 2006, 2007, 2009 Free Software Foundation, Inc.
+   Copyright 2005, 2006, 2007, 2009, 2012 Free Software Foundation, Inc.
 
    This file is part of BFD, the Binary File Descriptor library.
 
@@ -280,7 +280,8 @@ elf_vxworks_finish_dynamic_entry (bfd *output_bfd, Elf_Internal_Dyn *dyn)
     case DT_VX_WRS_TLS_DATA_ALIGN:
       sec = bfd_get_section_by_name (output_bfd, ".tls_data");
       dyn->d_un.d_val
-       = (bfd_size_type)1 << bfd_get_section_alignment (abfd, sec);
+       = (bfd_size_type)1 << bfd_get_section_alignment (output_bfd,
+                                                        sec);
       break;
       
     case DT_VX_WRS_TLS_VARS_START:
index bc600c22a384f6c6829a3156f60d6b055874e492..10d5dcc9f5c28dbd2c170c8228c095bda5da7709 100644 (file)
@@ -3258,7 +3258,7 @@ create_ifunc_sections (struct bfd_link_info *info)
       s = bfd_make_section_with_flags (dynobj, ".iplt",
                                       flags | SEC_READONLY | SEC_CODE);
       if (s == NULL
-         || !bfd_set_section_alignment (abfd, s, bed->plt_alignment))
+         || !bfd_set_section_alignment (dynobj, s, bed->plt_alignment))
        return FALSE;
       htab->root.iplt = s;
     }
@@ -3268,7 +3268,7 @@ create_ifunc_sections (struct bfd_link_info *info)
       s = bfd_make_section_with_flags (dynobj, RELOC_SECTION (htab, ".iplt"),
                                       flags | SEC_READONLY);
       if (s == NULL
-         || !bfd_set_section_alignment (abfd, s, bed->s->log_file_align))
+         || !bfd_set_section_alignment (dynobj, s, bed->s->log_file_align))
        return FALSE;
       htab->root.irelplt = s;
     }
index 763c90d5c64832df449e8841ae1131ad5963b937..730b3f56bff195da5155eab911d47bbd2b00e7d6 100644 (file)
@@ -3007,7 +3007,7 @@ m32r_elf_relocate_section (bfd *output_bfd ATTRIBUTE_UNUSED,
                const char *name;
 
                BFD_ASSERT (sec != NULL);
-               name = bfd_get_section_name (abfd, sec);
+               name = bfd_get_section_name (sec->owner, sec);
 
                if (   strcmp (name, ".sdata") == 0
                    || strcmp (name, ".sbss") == 0
index 1fe0640b0280c6738a43d4cc250243edf80f3014..abe2861bccc03b6373910ce88332cfd6a33cd733 100644 (file)
@@ -1,6 +1,6 @@
 /* Xilinx MicroBlaze-specific support for 32-bit ELF
 
-   Copyright 2009, 2010, 2011 Free Software Foundation, Inc.
+   Copyright 2009, 2010, 2011, 2012 Free Software Foundation, Inc.
 
    This file is part of BFD, the Binary File Descriptor library.
 
@@ -839,7 +839,7 @@ microblaze_elf_relocate_section (bfd *output_bfd,
                /* Only relocate if the symbol is defined.  */
                if (sec)
                  {
-                   name = bfd_get_section_name (abfd, sec);
+                   name = bfd_get_section_name (sec->owner, sec);
 
                    if (strcmp (name, ".sdata2") == 0
                        || strcmp (name, ".sbss2") == 0)
@@ -868,7 +868,7 @@ microblaze_elf_relocate_section (bfd *output_bfd,
                                               bfd_get_filename (input_bfd),
                                               sym_name,
                                               microblaze_elf_howto_table[(int) r_type]->name,
-                                              bfd_get_section_name (abfd, sec));
+                                              bfd_get_section_name (sec->owner, sec));
                        /*bfd_set_error (bfd_error_bad_value); ??? why? */
                        ret = FALSE;
                        continue;
@@ -884,7 +884,7 @@ microblaze_elf_relocate_section (bfd *output_bfd,
                /* Only relocate if the symbol is defined.  */
                if (sec)
                  {
-                   name = bfd_get_section_name (abfd, sec);
+                   name = bfd_get_section_name (sec->owner, sec);
 
                    if (strcmp (name, ".sdata") == 0
                        || strcmp (name, ".sbss") == 0)
@@ -913,7 +913,7 @@ microblaze_elf_relocate_section (bfd *output_bfd,
                                               bfd_get_filename (input_bfd),
                                               sym_name,
                                               microblaze_elf_howto_table[(int) r_type]->name,
-                                              bfd_get_section_name (abfd, sec));
+                                              bfd_get_section_name (sec->owner, sec));
                        /*bfd_set_error (bfd_error_bad_value); ??? why? */
                        ret = FALSE;
                        continue;
index e8f8db8eac90216801e0af7e4a9aa48572b82954..c0b0c145b76703e956f873dacaab24832ff36f44 100644 (file)
@@ -6309,7 +6309,8 @@ ppc_elf_size_dynamic_sections (bfd *output_bfd ATTRIBUTE_UNUSED,
        {
          /* Strip these too.  */
        }
-      else if (CONST_STRNEQ (bfd_get_section_name (dynobj, s), ".rela"))
+      else if (CONST_STRNEQ (bfd_get_section_name (htab->elf.dynobj, s),
+                            ".rela"))
        {
          if (s->size != 0)
            {
@@ -8331,8 +8332,10 @@ ppc_elf_relocate_section (bfd *output_bfd,
              unresolved_reloc = TRUE;
              break;
            }
-         BFD_ASSERT (strcmp (bfd_get_section_name (abfd, sec), ".got") == 0
-                     || strcmp (bfd_get_section_name (abfd, sec), ".cgot") == 0);
+         BFD_ASSERT (strcmp (bfd_get_section_name (sec->owner, sec),
+                             ".got") == 0
+                     || strcmp (bfd_get_section_name (sec->owner, sec),
+                                ".cgot") == 0);
 
          addend -= sec->output_section->vma + sec->output_offset + 0x8000;
          break;
@@ -8382,7 +8385,7 @@ ppc_elf_relocate_section (bfd *output_bfd,
              }
            addend -= SYM_VAL (sda);
 
-           name = bfd_get_section_name (abfd, sec->output_section);
+           name = bfd_get_section_name (output_bfd, sec->output_section);
            if (! ((CONST_STRNEQ (name, ".sdata")
                    && (name[6] == 0 || name[6] == '.'))
                   || (CONST_STRNEQ (name, ".sbss")
@@ -8414,7 +8417,7 @@ ppc_elf_relocate_section (bfd *output_bfd,
              }
            addend -= SYM_VAL (sda);
 
-           name = bfd_get_section_name (abfd, sec->output_section);
+           name = bfd_get_section_name (output_bfd, sec->output_section);
            if (! (CONST_STRNEQ (name, ".sdata2")
                   || CONST_STRNEQ (name, ".sbss2")))
              {
@@ -8487,7 +8490,7 @@ ppc_elf_relocate_section (bfd *output_bfd,
                break;
              }
 
-           name = bfd_get_section_name (abfd, sec->output_section);
+           name = bfd_get_section_name (output_bfd, sec->output_section);
            if (((CONST_STRNEQ (name, ".sdata")
                  && (name[6] == 0 || name[6] == '.'))
                 || (CONST_STRNEQ (name, ".sbss")
@@ -8579,7 +8582,7 @@ ppc_elf_relocate_section (bfd *output_bfd,
                break;
              }
 
-           name = bfd_get_section_name (abfd, sec->output_section);
+           name = bfd_get_section_name (output_bfd, sec->output_section);
            if (((CONST_STRNEQ (name, ".sdata")
                  && (name[6] == 0 || name[6] == '.'))
                 || (CONST_STRNEQ (name, ".sbss")
index 5366df4f6fe8f99ce0871627f7b993232a95878a..1eb725dd3420e094c5d6d42831d45d31920e66a2 100644 (file)
@@ -1771,7 +1771,9 @@ mmix_final_link_relocate (reloc_howto_type *howto, asection *input_section,
        first_global = 255;
       else
        {
-         first_global = bfd_get_section_vma (abfd, regsec) / 8;
+         first_global
+           = bfd_get_section_vma (input_section->output_section->owner,
+                                  regsec) / 8;
          if (strcmp (bfd_get_section_name (symsec->owner, symsec),
                      MMIX_REG_CONTENTS_SECTION_NAME) == 0)
            {
index 433fabf4432ae583a884e6c72de20ac7d738197c..f1f0f8f7b057556af991c8663fe90f142c30e56d 100644 (file)
@@ -4245,7 +4245,7 @@ create_linkage_sections (bfd *dynobj, struct bfd_link_info *info)
                                                                 ".eh_frame",
                                                                 flags);
       if (htab->glink_eh_frame == NULL
-         || !bfd_set_section_alignment (abfd, htab->glink_eh_frame, 2))
+         || !bfd_set_section_alignment (dynobj, htab->glink_eh_frame, 2))
        return FALSE;
     }
 
index da9330f65a2add5183a900cc166a8817fafc5635..b139b61d5fb24d005226a1b483b5c3408bccea33 100644 (file)
@@ -1,3 +1,8 @@
+2012-05-16  Sergio Durigan Junior  <sergiodj@redhat.com>
+
+       * config/tc-alpha.c (maybe_set_gp): Pass proper `bfd'
+       as the first argument for `bfd_get_section_vma'.
+
 2012-05-16  Alberto Garcia  <agarcia@igalia.com>
 
        PR gas/14082
index 43bd18b8bdff1e57ef9fba0a03a4fd0a19027a07..d020896d6892014634e3b053d4ae8c273d716d7d 100644 (file)
@@ -5302,7 +5302,7 @@ maybe_set_gp (asection *sec)
 
   if (!sec)
     return;
-  vma = bfd_get_section_vma (foo, sec);
+  vma = bfd_get_section_vma (sec->owner, sec);
   if (vma && vma < alpha_gp_value)
     alpha_gp_value = vma;
 }
index d026c35d6a5f87017dafb8618fb7d951be2d5bbc..07b5455babd501d95ad3530157652997e14577b8 100644 (file)
@@ -1,3 +1,8 @@
+2012-05-16  Sergio Durigan Junior  <sergiodj@redhat.com>
+
+       * emultempl/m68hc1xelf.em (hook_in_stub): Pass proper `bfd'
+       as the first argument for `bfd_get_section_name'.
+
 2012-05-16  Samuel Thibault  <samuel.thibault@ens-lyon.org>
 
        PR ld/14069
index deeefcef30e469dbae0cef8d62d021868a4b0295..594b193ca82664d50c9fef17df6f30e8174f3daf 100644 (file)
@@ -204,9 +204,9 @@ hook_in_stub (struct hook_stub_info *info, lang_statement_union_type **lp)
 
        case lang_input_section_enum:
          if (l->input_section.section == info->input_section
-             || strcmp (bfd_get_section_name (output_section,
+             || strcmp (bfd_get_section_name (l->input_section.section->owner,
                                               l->input_section.section),
-                        bfd_get_section_name (output_section,
+                        bfd_get_section_name (info->input_section->owner,
                                               info->input_section)) == 0)
            {
              /* We've found our section.  Insert the stub immediately