summaryrefslogtreecommitdiffstats
path: root/bfd
diff options
context:
space:
mode:
authorAlexandre Oliva <aoliva@redhat.com>2002-02-11 06:17:43 +0000
committerAlexandre Oliva <aoliva@redhat.com>2002-02-11 06:17:43 +0000
commit518313c3d66913867edf45e349c4fb026ae11a5e (patch)
tree95a6e427eeeab288a5a1e3a275d8dd8068ed9f5a /bfd
parent7eb27ef29f14089d83faa5dae85c009df7748c72 (diff)
downloadppe42-binutils-518313c3d66913867edf45e349c4fb026ae11a5e.tar.gz
ppe42-binutils-518313c3d66913867edf45e349c4fb026ae11a5e.zip
* elf32-sh.c: Added missing prototypes.
* elf32-sh64.c: Likewise. (sh_elf_align_loads): Mark unused args as such. * elf64-sh64.c: Added missing prototypes. (struct elf_sh64_link_hash_entry): Fix typo. (sh_elf64_relocate_section): Fix info argument passed to _bfd_elf_section_offset.
Diffstat (limited to 'bfd')
-rw-r--r--bfd/ChangeLog10
-rw-r--r--bfd/elf32-sh.c7
-rw-r--r--bfd/elf32-sh64.c1
-rw-r--r--bfd/elf64-sh64.c27
4 files changed, 38 insertions, 7 deletions
diff --git a/bfd/ChangeLog b/bfd/ChangeLog
index 88094cc5e7..6e48ed993c 100644
--- a/bfd/ChangeLog
+++ b/bfd/ChangeLog
@@ -1,3 +1,13 @@
+2002-02-11 Alexandre Oliva <aoliva@redhat.com>
+
+ * elf32-sh.c: Added missing prototypes.
+ * elf32-sh64.c: Likewise.
+ (sh_elf_align_loads): Mark unused args as such.
+ * elf64-sh64.c: Added missing prototypes.
+ (struct elf_sh64_link_hash_entry): Fix typo.
+ (sh_elf64_relocate_section): Fix info argument passed to
+ _bfd_elf_section_offset.
+
2002-02-11 Alan Modra <amodra@bigpond.net.au>
* Makefile.am: "make dep-am".
diff --git a/bfd/elf32-sh.c b/bfd/elf32-sh.c
index d6033456b2..6c13404fd0 100644
--- a/bfd/elf32-sh.c
+++ b/bfd/elf32-sh.c
@@ -85,6 +85,9 @@ static boolean sh_elf_gc_sweep_hook
const Elf_Internal_Rela *));
static enum elf_reloc_type_class sh_elf_reloc_type_class
PARAMS ((const Elf_Internal_Rela *));
+#ifdef INCLUDE_SHMEDIA
+inline static void movi_shori_putval PARAMS ((bfd *, unsigned long, char *));
+#endif
/* The name of the dynamic interpreter. This is put in the .interp
section. */
@@ -2808,10 +2811,10 @@ sh_elf_relax_delete_bytes (abfd, sec, addr, count)
static boolean
sh_elf_align_loads (abfd, sec, internal_relocs, contents, pswapped)
- bfd *abfd;
+ bfd *abfd ATTRIBUTE_UNUSED;
asection *sec;
Elf_Internal_Rela *internal_relocs;
- bfd_byte *contents;
+ bfd_byte *contents ATTRIBUTE_UNUSED;
boolean *pswapped;
{
Elf_Internal_Rela *irel, *irelend;
diff --git a/bfd/elf32-sh64.c b/bfd/elf32-sh64.c
index 561c7af5ad..5c85d36c2d 100644
--- a/bfd/elf32-sh64.c
+++ b/bfd/elf32-sh64.c
@@ -58,6 +58,7 @@ static boolean sh64_backend_section_from_shdr
static void sh64_elf_final_write_processing PARAMS ((bfd *, boolean));
static boolean sh64_bfd_elf_copy_private_section_data
PARAMS ((bfd *, asection *, bfd *, asection *));
+static void sh64_find_section_for_address PARAMS ((bfd *, asection *, PTR));
/* Let elf32-sh.c handle the "bfd_" definitions, so we only have to
intrude with an #ifndef around the function definition. */
diff --git a/bfd/elf64-sh64.c b/bfd/elf64-sh64.c
index 143a560fb4..ab22187e24 100644
--- a/bfd/elf64-sh64.c
+++ b/bfd/elf64-sh64.c
@@ -84,7 +84,7 @@ struct elf_sh64_link_hash_entry
bfd_vma datalabel_got_offset;
/* Number of PC relative relocs copied for this symbol. */
- struct elf_sh_pcrel_relocs_copied *pcrel_relocs_copied;
+ struct elf_sh64_pcrel_relocs_copied *pcrel_relocs_copied;
};
/* sh ELF linker hash table. */
@@ -145,6 +145,25 @@ extern boolean sh64_elf64_link_output_symbol_hook
static boolean sh64_elf64_fake_sections
PARAMS ((bfd *, Elf_Internal_Shdr *, asection *));
static void sh64_elf64_final_write_processing PARAMS ((bfd *, boolean));
+static struct bfd_hash_entry *sh64_elf64_link_hash_newfunc
+ PARAMS ((struct bfd_hash_entry *, struct bfd_hash_table *, const char *));
+static struct bfd_link_hash_table *sh64_elf64_link_hash_table_create
+ PARAMS ((bfd *));
+inline static void movi_shori_putval PARAMS ((bfd *, unsigned long, char *));
+inline static void movi_3shori_putval PARAMS ((bfd *, bfd_vma, char *));
+static boolean sh64_elf64_create_dynamic_sections
+ PARAMS ((bfd *, struct bfd_link_info *));
+static boolean sh64_elf64_adjust_dynamic_symbol
+ PARAMS ((struct bfd_link_info *info, struct elf_link_hash_entry *));
+static boolean sh64_elf64_discard_copies
+ PARAMS ((struct elf_sh64_link_hash_entry *, PTR));
+static boolean sh64_elf64_size_dynamic_sections
+ PARAMS ((bfd *, struct bfd_link_info *));
+static boolean sh64_elf64_finish_dynamic_symbol
+ PARAMS ((bfd *, struct bfd_link_info *, struct elf_link_hash_entry *,
+ Elf_Internal_Sym *));
+static boolean sh64_elf64_finish_dynamic_sections
+ PARAMS ((bfd *, struct bfd_link_info *));
static reloc_howto_type sh_elf64_howto_table[] = {
/* No relocation. */
@@ -1729,10 +1748,8 @@ sh_elf64_relocate_section (output_bfd, info, input_bfd, input_section,
skip = false;
outrel.r_offset
- = _bfd_elf_section_offset (output_bfd,
- &elf_hash_table (info)->stab_info,
- input_section,
- rel->r_offset);
+ = _bfd_elf_section_offset (output_bfd, info,
+ input_section, rel->r_offset);
if (outrel.r_offset == (bfd_vma) -1)
skip = true;
OpenPOWER on IntegriCloud