aboutsummaryrefslogtreecommitdiff
path: root/bfd/elfxx-sparc.c
diff options
context:
space:
mode:
Diffstat (limited to 'bfd/elfxx-sparc.c')
-rw-r--r--bfd/elfxx-sparc.c11
1 files changed, 4 insertions, 7 deletions
diff --git a/bfd/elfxx-sparc.c b/bfd/elfxx-sparc.c
index 3d89a5f..1f3b9d8 100644
--- a/bfd/elfxx-sparc.c
+++ b/bfd/elfxx-sparc.c
@@ -37,9 +37,6 @@
/* In case we're on a 32-bit machine, construct a 64-bit "-1" value. */
#define MINUS_ONE (~ (bfd_vma) 0)
-#define ABI_64_P(abfd) \
- (get_elf_backend_data (abfd)->s->elfclass == ELFCLASS64)
-
/* The relocation "howto" table. */
/* Utility for performing the standard initial work of an instruction
@@ -679,7 +676,7 @@ _bfd_sparc_elf_info_to_howto (bfd *abfd, arelent *cache_ptr,
#define UNDEFINED_WEAK_RESOLVED_TO_ZERO(INFO, EH) \
((EH)->elf.root.type == bfd_link_hash_undefweak \
&& bfd_link_executable (INFO) \
- && (_bfd_sparc_elf_hash_table (INFO)->interp == NULL \
+ && (_bfd_sparc_elf_hash_table (INFO)->elf.interp == NULL \
|| !(INFO)->dynamic_undefined_weak \
|| (EH)->has_non_got_reloc \
|| !(EH)->has_got_reloc))
@@ -2408,12 +2405,11 @@ _bfd_sparc_elf_late_size_sections (bfd *output_bfd,
/* Set the contents of the .interp section to the interpreter. */
if (bfd_link_executable (info) && !info->nointerp)
{
- s = bfd_get_linker_section (dynobj, ".interp");
+ s = elf_hash_table (info)->interp;
BFD_ASSERT (s != NULL);
s->size = htab->dynamic_interpreter_size;
s->contents = (unsigned char *) htab->dynamic_interpreter;
s->alloced = 1;
- htab->interp = s;
}
}
@@ -2892,7 +2888,8 @@ _bfd_sparc_elf_relocate_section (bfd *output_bfd,
if (sec != NULL && discarded_section (sec))
RELOC_AGAINST_DISCARDED_SECTION (info, input_bfd, input_section,
- rel, 1, relend, howto, 0, contents);
+ rel, 1, relend, R_SPARC_NONE,
+ howto, 0, contents);
if (bfd_link_relocatable (info))
continue;