Fix hash section entry size to match ELF standard. Override for alpha-linux.
authorJim Wilson <wilson@tuliptree.org>
Tue, 4 Jul 2000 02:18:06 +0000 (02:18 +0000)
committerJim Wilson <wilson@tuliptree.org>
Tue, 4 Jul 2000 02:18:06 +0000 (02:18 +0000)
* elf64-alpha.c (alpha_elf_size_info): New.
(elf_backend_size_info): Define to alpha_elf_size_info.
* elfcode.h (elf_size_info): Change hash bucket size to 4.

bfd/ChangeLog
bfd/elf64-alpha.c
bfd/elfcode.h

index 99626ffda71b3b51d3d2cfd43ec891b872f72d8c..e44ee9b72f7e90ee6d611dc03d0c966ad0e21a34 100644 (file)
@@ -1,3 +1,9 @@
+2000-07-03  Jim Wilson  <wilson@cygnus.com>
+
+       * elf64-alpha.c (alpha_elf_size_info): New.
+       (elf_backend_size_info): Define to alpha_elf_size_info.
+       * elfcode.h (elf_size_info): Change hash bucket size to 4.
+
 2000-07-03  Ulf Carlsson  <ulfc@engr.sgi.com>
 
        * elf32-mips.c: Include elf32-target.h again for the traditional
index 4c083fa494488983f5a8806938b5ef80b8985c19..84f3075e4c82a265f03a13f2c8a975e1b31c9b8e 100644 (file)
@@ -4643,6 +4643,36 @@ elf64_alpha_ecoff_debug_swap =
   elf64_alpha_read_ecoff_info
 };
 \f
+/* Use a non-standard hash bucket size of 8.  */
+
+const struct elf_size_info alpha_elf_size_info =
+{
+  sizeof (Elf64_External_Ehdr),
+  sizeof (Elf64_External_Phdr),
+  sizeof (Elf64_External_Shdr),
+  sizeof (Elf64_External_Rel),
+  sizeof (Elf64_External_Rela),
+  sizeof (Elf64_External_Sym),
+  sizeof (Elf64_External_Dyn),
+  sizeof (Elf_External_Note),
+  8,
+  1,
+  64, 8,
+  ELFCLASS64, EV_CURRENT,
+  bfd_elf64_write_out_phdrs,
+  bfd_elf64_write_shdrs_and_ehdr,
+  bfd_elf64_write_relocs,
+  bfd_elf64_swap_symbol_out,
+  bfd_elf64_slurp_reloc_table,
+  bfd_elf64_slurp_symbol_table,
+  bfd_elf64_swap_dyn_in,
+  bfd_elf64_swap_dyn_out,
+  NULL,
+  NULL,
+  NULL,
+  NULL
+};
+
 #define TARGET_LITTLE_SYM      bfd_elf64_alpha_vec
 #define TARGET_LITTLE_NAME     "elf64-alpha"
 #define ELF_ARCH               bfd_arch_alpha
@@ -4698,6 +4728,9 @@ elf64_alpha_ecoff_debug_swap =
 #define elf_backend_ecoff_debug_swap \
   &elf64_alpha_ecoff_debug_swap
 
+#define elf_backend_size_info \
+  alpha_elf_size_info
+
 /*
  * A few constants that determine how the .plt section is set up.
  */
index cd8e9a6a35a4fba9d6621a2ec4b41109ab149eb8..f1b825d21a5ea9ba15999dc4466ba1c578c46c89 100644 (file)
@@ -1525,7 +1525,7 @@ const struct elf_size_info NAME(_bfd_elf,size_info) = {
   sizeof (Elf_External_Sym),
   sizeof (Elf_External_Dyn),
   sizeof (Elf_External_Note),
-  ARCH_SIZE / 8,
+  4,
   1,
   ARCH_SIZE, FILE_ALIGN,
   ELFCLASS, EV_CURRENT,
This page took 0.049015 seconds and 4 git commands to generate.