mirror of
https://github.com/espressif/binutils-gdb.git
synced 2025-06-19 17:18:24 +08:00
* elf32-mips.c (mips_elf_output_extsym): Set the value of the
ECOFF symbol from the hash table entry.
This commit is contained in:
@ -1,3 +1,8 @@
|
|||||||
|
Tue Jan 24 14:22:47 1995 Ian Lance Taylor <ian@sanguine.cygnus.com>
|
||||||
|
|
||||||
|
* elf32-mips.c (mips_elf_output_extsym): Set the value of the
|
||||||
|
ECOFF symbol from the hash table entry.
|
||||||
|
|
||||||
Mon Jan 23 14:53:35 1995 Steve Chamberlain <sac@splat>
|
Mon Jan 23 14:53:35 1995 Steve Chamberlain <sac@splat>
|
||||||
|
|
||||||
* coff-sh.c (coff_sh_relocate_section): Don't subtract
|
* coff-sh.c (coff_sh_relocate_section): Don't subtract
|
||||||
|
@ -65,7 +65,7 @@ static bfd_reloc_status_type mips_elf_gprel16_reloc PARAMS ((bfd *abfd,
|
|||||||
asection *section,
|
asection *section,
|
||||||
bfd *output_bfd,
|
bfd *output_bfd,
|
||||||
char **error));
|
char **error));
|
||||||
static const struct reloc_howto_struct *bfd_elf32_bfd_reloc_type_lookup
|
static reloc_howto_type *bfd_elf32_bfd_reloc_type_lookup
|
||||||
PARAMS ((bfd *, bfd_reloc_code_real_type));
|
PARAMS ((bfd *, bfd_reloc_code_real_type));
|
||||||
static void mips_info_to_howto_rel
|
static void mips_info_to_howto_rel
|
||||||
PARAMS ((bfd *, arelent *, Elf32_Internal_Rel *));
|
PARAMS ((bfd *, arelent *, Elf32_Internal_Rel *));
|
||||||
@ -848,7 +848,7 @@ static CONST struct elf_reloc_map mips_reloc_map[] =
|
|||||||
|
|
||||||
/* Given a BFD reloc type, return a howto structure. */
|
/* Given a BFD reloc type, return a howto structure. */
|
||||||
|
|
||||||
static const struct reloc_howto_struct *
|
static reloc_howto_type *
|
||||||
bfd_elf32_bfd_reloc_type_lookup (abfd, code)
|
bfd_elf32_bfd_reloc_type_lookup (abfd, code)
|
||||||
bfd *abfd;
|
bfd *abfd;
|
||||||
bfd_reloc_code_real_type code;
|
bfd_reloc_code_real_type code;
|
||||||
@ -1719,6 +1719,22 @@ mips_elf_output_extsym (h, data)
|
|||||||
h->esym.asym.index = indexNil;
|
h->esym.asym.index = indexNil;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if (h->root.root.type == bfd_link_hash_common)
|
||||||
|
h->esym.asym.value = h->root.root.u.c.size;
|
||||||
|
else if (h->root.root.type == bfd_link_hash_defined)
|
||||||
|
{
|
||||||
|
asection *sec;
|
||||||
|
|
||||||
|
if (h->esym.asym.sc == scCommon)
|
||||||
|
h->esym.asym.sc = scBss;
|
||||||
|
else if (h->esym.asym.sc == scSCommon)
|
||||||
|
h->esym.asym.sc = scSBss;
|
||||||
|
|
||||||
|
sec = h->root.root.u.def.section;
|
||||||
|
h->esym.asym.value = (h->root.root.u.def.value
|
||||||
|
+ sec->output_offset
|
||||||
|
+ sec->output_section->vma);
|
||||||
|
}
|
||||||
|
|
||||||
if (! bfd_ecoff_debug_one_external (einfo->abfd, einfo->debug, einfo->swap,
|
if (! bfd_ecoff_debug_one_external (einfo->abfd, einfo->debug, einfo->swap,
|
||||||
h->root.root.root.string,
|
h->root.root.root.string,
|
||||||
|
Reference in New Issue
Block a user