From 5de3bf90966b027e4a1c63f6331079efc9451a48 Mon Sep 17 00:00:00 2001 From: Alan Modra Date: Fri, 19 Sep 2003 02:08:35 +0000 Subject: * elf.c (elfcore_write_note): Don't use sizeof(Elf_External_note) since some ABIs round up the size of the struct. --- bfd/ChangeLog | 13 +++++++++---- bfd/elf.c | 4 ++-- 2 files changed, 11 insertions(+), 6 deletions(-) (limited to 'bfd') diff --git a/bfd/ChangeLog b/bfd/ChangeLog index 49cfb2b4..4ffd41f 100644 --- a/bfd/ChangeLog +++ b/bfd/ChangeLog @@ -1,3 +1,8 @@ +2003-09-19 Alan Modra + + * elf.c (elfcore_write_note): Don't use sizeof(Elf_External_note) + since some ABIs round up the size of the struct. + 2003-09-18 H.J. Lu * elflink.c (_bfd_elf_merge_symbol): Allow type change if @@ -69,10 +74,10 @@ (v850_elf_print_private_bfd_data): Interpret E_V850E1_ARCH flag. (v850_elf_merge_private_bfd_data): Allow v850e1 binaries to be linked with v850e binaries. Mark the output as v850e. - + 2003-09-03 Nick Clifton - * cofflink.c (_bfd_coff_link_input_bfd): Do not skip section + * cofflink.c (_bfd_coff_link_input_bfd): Do not skip section symbols that are used in relocs. 2003-08-30 Robert Millan @@ -127,7 +132,7 @@ 2003-08-24 Jason Eckhardt - * coff-i860.c (CALC_ADDEND): Define to be a no-op. + * coff-i860.c (CALC_ADDEND): Define to be a no-op. 2003-08-24 Jason Eckhardt @@ -136,7 +141,7 @@ 2003-08-23 Jason Eckhardt - * coff-i860.c (coff_i860_reloc_nyi): New function. + * coff-i860.c (coff_i860_reloc_nyi): New function. (howto_table): Add entries for relocations PAIR, HIGHADJ, HIGH, LOWn, SPLITn, and BRADDR. (RTYPE2HOWTO): Check that the r_type is within the howto_table diff --git a/bfd/elf.c b/bfd/elf.c index 3868cff..5935803 100644 --- a/bfd/elf.c +++ b/bfd/elf.c @@ -2430,7 +2430,7 @@ elf_fake_sections (bfd *abfd, asection *asect, void *failedptrarg) case SHT_HASH: this_hdr->sh_entsize = bed->s->sizeof_hash_entry; break; - + case SHT_DYNSYM: this_hdr->sh_entsize = bed->s->sizeof_sym; break; @@ -7066,7 +7066,7 @@ elfcore_write_note (bfd *abfd, pad = -namesz & ((1 << bed->s->log_file_align) - 1); } - newspace = sizeof (Elf_External_Note) - 1 + namesz + pad + size; + newspace = 12 + namesz + pad + size; p = realloc (buf, *bufsiz + newspace); dest = p + *bufsiz; -- cgit v1.1