Index: bfd/elf32-xstormy16.c |
diff --git a/bfd/elf32-xstormy16.c b/bfd/elf32-xstormy16.c |
index 614178337e9a86c82d4808aa2133bf136c9354c8..c657b84a46c9572d999207c1ad99a95cb85793a3 100644 |
--- a/bfd/elf32-xstormy16.c |
+++ b/bfd/elf32-xstormy16.c |
@@ -1,5 +1,5 @@ |
/* Xstormy16-specific support for 32-bit ELF. |
- Copyright 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2010, 2011 |
+ Copyright 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2010, 2011, 2012 |
Free Software Foundation, Inc. |
This file is part of BFD, the Binary File Descriptor library. |
@@ -456,18 +456,15 @@ xstormy16_elf_check_relocs (bfd *abfd, |
elf_hash_table (info)->dynobj = dynobj = abfd; |
if (splt == NULL) |
{ |
- splt = bfd_get_section_by_name (dynobj, ".plt"); |
+ splt = bfd_get_linker_section (dynobj, ".plt"); |
if (splt == NULL) |
{ |
- splt = bfd_make_section_with_flags (dynobj, ".plt", |
- (SEC_ALLOC |
- | SEC_LOAD |
- | SEC_HAS_CONTENTS |
- | SEC_IN_MEMORY |
- | SEC_LINKER_CREATED |
- | SEC_READONLY |
- | SEC_CODE)); |
+ flagword flags = (SEC_ALLOC | SEC_LOAD | SEC_HAS_CONTENTS |
+ | SEC_IN_MEMORY | SEC_LINKER_CREATED |
+ | SEC_READONLY | SEC_CODE); |
+ splt = bfd_make_section_anyway_with_flags (dynobj, ".plt", |
+ flags); |
if (splt == NULL |
|| ! bfd_set_section_alignment (dynobj, splt, 1)) |
return FALSE; |
@@ -719,7 +716,7 @@ xstormy16_elf_always_size_sections (bfd *output_bfd ATTRIBUTE_UNUSED, |
if (dynobj == NULL) |
return TRUE; |
- splt = bfd_get_section_by_name (dynobj, ".plt"); |
+ splt = bfd_get_linker_section (dynobj, ".plt"); |
BFD_ASSERT (splt != NULL); |
splt->contents = bfd_zalloc (dynobj, splt->size); |
@@ -783,7 +780,7 @@ xstormy16_elf_relocate_section (bfd * output_bfd ATTRIBUTE_UNU |
dynobj = elf_hash_table (info)->dynobj; |
splt = NULL; |
if (dynobj != NULL) |
- splt = bfd_get_section_by_name (dynobj, ".plt"); |
+ splt = bfd_get_linker_section (dynobj, ".plt"); |
for (rel = relocs; rel < relend; rel ++) |
{ |
@@ -825,9 +822,9 @@ xstormy16_elf_relocate_section (bfd * output_bfd ATTRIBUTE_UNU |
unresolved_reloc, warned); |
} |
- if (sec != NULL && elf_discarded_section (sec)) |
+ if (sec != NULL && discarded_section (sec)) |
RELOC_AGAINST_DISCARDED_SECTION (info, input_bfd, input_section, |
- rel, relend, howto, contents); |
+ rel, 1, relend, howto, 0, contents); |
if (info->relocatable) |
continue; |
@@ -973,7 +970,7 @@ xstormy16_elf_finish_dynamic_sections (bfd *abfd ATTRIBUTE_UNUSED, |
been filled in. */ |
if ((dynobj = elf_hash_table (info)->dynobj) != NULL |
- && (splt = bfd_get_section_by_name (dynobj, ".plt")) != NULL) |
+ && (splt = bfd_get_linker_section (dynobj, ".plt")) != NULL) |
{ |
bfd_byte *contents = splt->contents; |
unsigned int i, size = splt->size; |