summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--bfd/ChangeLog7
-rw-r--r--bfd/elf-hppa.h6
-rw-r--r--bfd/elf32-hppa.h3
3 files changed, 15 insertions, 1 deletions
diff --git a/bfd/ChangeLog b/bfd/ChangeLog
index b4f9226b4f3..b18653c6cb7 100644
--- a/bfd/ChangeLog
+++ b/bfd/ChangeLog
@@ -1,3 +1,10 @@
+Mon Aug 30 15:26:48 1999 Jeffrey A Law (law@cygnus.com)
+
+ * elf-hppa.h (_bfd_elf_hppa_gen_reloc_type): Allow both
+ R_PARISC_DIR32 and R_PARISC_DIR64 regardless of how the
+ tools were configured.
+ * elf32-hppa.h (_bfd_elf32_hppa_gen_reloc_type): Declare.
+
1999-08-26 Mark Mitchell <mark@codesourcery.com>
* elf32-mips.c (_bfd_mips_elf_check_relocs): Don't allocate local
diff --git a/bfd/elf-hppa.h b/bfd/elf-hppa.h
index f3099b8f8c2..44d4f511267 100644
--- a/bfd/elf-hppa.h
+++ b/bfd/elf-hppa.h
@@ -335,7 +335,11 @@ _bfd_elf_hppa_gen_reloc_type (abfd, base_type, format, field, ignore, sym)
for PA ELF. */
switch (base_type)
{
- case R_HPPA:
+ /* We have been using generic relocation types. However, that may not
+ really make sense. Anyway, we need to support both R_PARISC_DIR64
+ and R_PARISC_DIR32 here. */
+ case R_PARISC_DIR32:
+ case R_PARISC_DIR64:
case R_HPPA_ABS_CALL:
switch (format)
{
diff --git a/bfd/elf32-hppa.h b/bfd/elf32-hppa.h
index 2d99aa8f337..dfd84449602 100644
--- a/bfd/elf32-hppa.h
+++ b/bfd/elf32-hppa.h
@@ -41,6 +41,9 @@ boolean elf32_hppa_size_stubs
boolean elf32_hppa_build_stubs
PARAMS ((bfd *, struct bfd_link_info *));
+extern void ** _bfd_elf32_hppa_gen_reloc_type
+ PARAMS ((bfd *, int, int, int, int, asymbol *));
+
/* Define groups of basic relocations. FIXME: These should
be the only basic relocations created by GAS. The rest
should be internal to the BFD backend.