mirror of
https://github.com/darlinghq/darling-gdb.git
synced 2024-11-27 14:00:30 +00:00
* elf-m10300.c (mn10300_elf_check_relocs): Delete dead code.
* elf32-arm.c (elf32_arm_check_relocs): Likewise. * elf32-avr.c (elf32_avr_check_relocs): Likewise. * elf32-bfin.c (bfinfdpic_check_relocs): Likewise. * elf32-cris.c (cris_elf_check_relocs): Likewise. * elf32-d10v.c (elf32_d10v_check_relocs): Likewise. * elf32-dlx.c (elf32_dlx_check_relocs): Likewise. * elf32-fr30.c (fr30_elf_check_relocs): Likewise. * elf32-frv.c (_frvfdpic_check_discarded_relocs): Likewise. (elf32_frv_check_relocs): Likewise. * elf32-iq2000.c (iq2000_elf_check_relocs): Likewise. * elf32-m32c.c (m32c_elf_check_relocs): Likewise. * elf32-m32r.c (m32r_elf_check_relocs): Likewise. * elf32-m68hc1x.c (elf32_m68hc11_check_relocs): Likewise. * elf32-mcore.c (mcore_elf_check_relocs): Likewise. * elf32-msp430.c (elf32_msp430_check_relocs): Likewise. * elf32-mt.c (mt_elf_check_relocs): Likewise. * elf32-openrisc.c (openrisc_elf_check_relocs): Likewise. * elf32-sh.c (sh_elf_check_relocs): Likewise. * elf64-mmix.c (mmix_elf_check_relocs): Likewise. * elf64-sh64.c (sh_elf64_check_relocs): Likewise. * elf32-score.c (_bfd_score_elf_check_relocs): Likewise. (score_elf_local_relocation_p): Likewise. (_bfd_score_elf_relocate_section): Likewise. (score_elf_final_link_relocate): Likewise.
This commit is contained in:
parent
b3b74ddc6e
commit
5582a08852
@ -1,3 +1,31 @@
|
|||||||
|
2007-09-28 Alan Modra <amodra@bigpond.net.au>
|
||||||
|
|
||||||
|
* elf-m10300.c (mn10300_elf_check_relocs): Delete dead code.
|
||||||
|
* elf32-arm.c (elf32_arm_check_relocs): Likewise.
|
||||||
|
* elf32-avr.c (elf32_avr_check_relocs): Likewise.
|
||||||
|
* elf32-bfin.c (bfinfdpic_check_relocs): Likewise.
|
||||||
|
* elf32-cris.c (cris_elf_check_relocs): Likewise.
|
||||||
|
* elf32-d10v.c (elf32_d10v_check_relocs): Likewise.
|
||||||
|
* elf32-dlx.c (elf32_dlx_check_relocs): Likewise.
|
||||||
|
* elf32-fr30.c (fr30_elf_check_relocs): Likewise.
|
||||||
|
* elf32-frv.c (_frvfdpic_check_discarded_relocs): Likewise.
|
||||||
|
(elf32_frv_check_relocs): Likewise.
|
||||||
|
* elf32-iq2000.c (iq2000_elf_check_relocs): Likewise.
|
||||||
|
* elf32-m32c.c (m32c_elf_check_relocs): Likewise.
|
||||||
|
* elf32-m32r.c (m32r_elf_check_relocs): Likewise.
|
||||||
|
* elf32-m68hc1x.c (elf32_m68hc11_check_relocs): Likewise.
|
||||||
|
* elf32-mcore.c (mcore_elf_check_relocs): Likewise.
|
||||||
|
* elf32-msp430.c (elf32_msp430_check_relocs): Likewise.
|
||||||
|
* elf32-mt.c (mt_elf_check_relocs): Likewise.
|
||||||
|
* elf32-openrisc.c (openrisc_elf_check_relocs): Likewise.
|
||||||
|
* elf32-sh.c (sh_elf_check_relocs): Likewise.
|
||||||
|
* elf64-mmix.c (mmix_elf_check_relocs): Likewise.
|
||||||
|
* elf64-sh64.c (sh_elf64_check_relocs): Likewise.
|
||||||
|
* elf32-score.c (_bfd_score_elf_check_relocs): Likewise.
|
||||||
|
(score_elf_local_relocation_p): Likewise.
|
||||||
|
(_bfd_score_elf_relocate_section): Likewise.
|
||||||
|
(score_elf_final_link_relocate): Likewise.
|
||||||
|
|
||||||
2007-09-26 Jan Beulich <jbeulich@novell.com>
|
2007-09-26 Jan Beulich <jbeulich@novell.com>
|
||||||
|
|
||||||
* elf32-i386.c (elf_i386_check_relocs): Revert NULL pointer
|
* elf32-i386.c (elf_i386_check_relocs): Revert NULL pointer
|
||||||
|
@ -682,7 +682,7 @@ mn10300_elf_check_relocs (abfd, info, sec, relocs)
|
|||||||
const Elf_Internal_Rela *relocs;
|
const Elf_Internal_Rela *relocs;
|
||||||
{
|
{
|
||||||
Elf_Internal_Shdr *symtab_hdr;
|
Elf_Internal_Shdr *symtab_hdr;
|
||||||
struct elf_link_hash_entry **sym_hashes, **sym_hashes_end;
|
struct elf_link_hash_entry **sym_hashes;
|
||||||
const Elf_Internal_Rela *rel;
|
const Elf_Internal_Rela *rel;
|
||||||
const Elf_Internal_Rela *rel_end;
|
const Elf_Internal_Rela *rel_end;
|
||||||
bfd * dynobj;
|
bfd * dynobj;
|
||||||
@ -700,9 +700,6 @@ mn10300_elf_check_relocs (abfd, info, sec, relocs)
|
|||||||
|
|
||||||
symtab_hdr = &elf_tdata (abfd)->symtab_hdr;
|
symtab_hdr = &elf_tdata (abfd)->symtab_hdr;
|
||||||
sym_hashes = elf_sym_hashes (abfd);
|
sym_hashes = elf_sym_hashes (abfd);
|
||||||
sym_hashes_end = sym_hashes + symtab_hdr->sh_size/sizeof (Elf32_External_Sym);
|
|
||||||
if (!elf_bad_symtab (abfd))
|
|
||||||
sym_hashes_end -= symtab_hdr->sh_info;
|
|
||||||
|
|
||||||
dynobj = elf_hash_table (info)->dynobj;
|
dynobj = elf_hash_table (info)->dynobj;
|
||||||
local_got_offsets = elf_local_got_offsets (abfd);
|
local_got_offsets = elf_local_got_offsets (abfd);
|
||||||
|
@ -7471,7 +7471,6 @@ elf32_arm_check_relocs (bfd *abfd, struct bfd_link_info *info,
|
|||||||
{
|
{
|
||||||
Elf_Internal_Shdr *symtab_hdr;
|
Elf_Internal_Shdr *symtab_hdr;
|
||||||
struct elf_link_hash_entry **sym_hashes;
|
struct elf_link_hash_entry **sym_hashes;
|
||||||
struct elf_link_hash_entry **sym_hashes_end;
|
|
||||||
const Elf_Internal_Rela *rel;
|
const Elf_Internal_Rela *rel;
|
||||||
const Elf_Internal_Rela *rel_end;
|
const Elf_Internal_Rela *rel_end;
|
||||||
bfd *dynobj;
|
bfd *dynobj;
|
||||||
@ -7499,11 +7498,6 @@ elf32_arm_check_relocs (bfd *abfd, struct bfd_link_info *info,
|
|||||||
|
|
||||||
symtab_hdr = &elf_tdata (abfd)->symtab_hdr;
|
symtab_hdr = &elf_tdata (abfd)->symtab_hdr;
|
||||||
sym_hashes = elf_sym_hashes (abfd);
|
sym_hashes = elf_sym_hashes (abfd);
|
||||||
sym_hashes_end = sym_hashes
|
|
||||||
+ symtab_hdr->sh_size / sizeof (Elf32_External_Sym);
|
|
||||||
|
|
||||||
if (!elf_bad_symtab (abfd))
|
|
||||||
sym_hashes_end -= symtab_hdr->sh_info;
|
|
||||||
|
|
||||||
rel_end = relocs + sec->reloc_count;
|
rel_end = relocs + sec->reloc_count;
|
||||||
for (rel = relocs; rel < rel_end; rel++)
|
for (rel = relocs; rel < rel_end; rel++)
|
||||||
|
@ -729,7 +729,7 @@ elf32_avr_check_relocs (bfd *abfd,
|
|||||||
const Elf_Internal_Rela *relocs)
|
const Elf_Internal_Rela *relocs)
|
||||||
{
|
{
|
||||||
Elf_Internal_Shdr *symtab_hdr;
|
Elf_Internal_Shdr *symtab_hdr;
|
||||||
struct elf_link_hash_entry **sym_hashes, **sym_hashes_end;
|
struct elf_link_hash_entry **sym_hashes;
|
||||||
const Elf_Internal_Rela *rel;
|
const Elf_Internal_Rela *rel;
|
||||||
const Elf_Internal_Rela *rel_end;
|
const Elf_Internal_Rela *rel_end;
|
||||||
|
|
||||||
@ -738,9 +738,6 @@ elf32_avr_check_relocs (bfd *abfd,
|
|||||||
|
|
||||||
symtab_hdr = &elf_tdata (abfd)->symtab_hdr;
|
symtab_hdr = &elf_tdata (abfd)->symtab_hdr;
|
||||||
sym_hashes = elf_sym_hashes (abfd);
|
sym_hashes = elf_sym_hashes (abfd);
|
||||||
sym_hashes_end = sym_hashes + symtab_hdr->sh_size / sizeof (Elf32_External_Sym);
|
|
||||||
if (!elf_bad_symtab (abfd))
|
|
||||||
sym_hashes_end -= symtab_hdr->sh_info;
|
|
||||||
|
|
||||||
rel_end = relocs + sec->reloc_count;
|
rel_end = relocs + sec->reloc_count;
|
||||||
for (rel = relocs; rel < rel_end; rel++)
|
for (rel = relocs; rel < rel_end; rel++)
|
||||||
|
@ -4511,7 +4511,7 @@ bfinfdpic_check_relocs (bfd *abfd, struct bfd_link_info *info,
|
|||||||
asection *sec, const Elf_Internal_Rela *relocs)
|
asection *sec, const Elf_Internal_Rela *relocs)
|
||||||
{
|
{
|
||||||
Elf_Internal_Shdr *symtab_hdr;
|
Elf_Internal_Shdr *symtab_hdr;
|
||||||
struct elf_link_hash_entry **sym_hashes, **sym_hashes_end;
|
struct elf_link_hash_entry **sym_hashes;
|
||||||
const Elf_Internal_Rela *rel;
|
const Elf_Internal_Rela *rel;
|
||||||
const Elf_Internal_Rela *rel_end;
|
const Elf_Internal_Rela *rel_end;
|
||||||
bfd *dynobj;
|
bfd *dynobj;
|
||||||
@ -4522,9 +4522,6 @@ bfinfdpic_check_relocs (bfd *abfd, struct bfd_link_info *info,
|
|||||||
|
|
||||||
symtab_hdr = &elf_tdata (abfd)->symtab_hdr;
|
symtab_hdr = &elf_tdata (abfd)->symtab_hdr;
|
||||||
sym_hashes = elf_sym_hashes (abfd);
|
sym_hashes = elf_sym_hashes (abfd);
|
||||||
sym_hashes_end = sym_hashes + symtab_hdr->sh_size/sizeof(Elf32_External_Sym);
|
|
||||||
if (!elf_bad_symtab (abfd))
|
|
||||||
sym_hashes_end -= symtab_hdr->sh_info;
|
|
||||||
|
|
||||||
dynobj = elf_hash_table (info)->dynobj;
|
dynobj = elf_hash_table (info)->dynobj;
|
||||||
rel_end = relocs + sec->reloc_count;
|
rel_end = relocs + sec->reloc_count;
|
||||||
|
@ -2443,7 +2443,7 @@ cris_elf_check_relocs (abfd, info, sec, relocs)
|
|||||||
{
|
{
|
||||||
bfd *dynobj;
|
bfd *dynobj;
|
||||||
Elf_Internal_Shdr *symtab_hdr;
|
Elf_Internal_Shdr *symtab_hdr;
|
||||||
struct elf_link_hash_entry **sym_hashes, **sym_hashes_end;
|
struct elf_link_hash_entry **sym_hashes;
|
||||||
bfd_signed_vma *local_got_refcounts;
|
bfd_signed_vma *local_got_refcounts;
|
||||||
const Elf_Internal_Rela *rel;
|
const Elf_Internal_Rela *rel;
|
||||||
const Elf_Internal_Rela *rel_end;
|
const Elf_Internal_Rela *rel_end;
|
||||||
@ -2457,16 +2457,12 @@ cris_elf_check_relocs (abfd, info, sec, relocs)
|
|||||||
dynobj = elf_hash_table (info)->dynobj;
|
dynobj = elf_hash_table (info)->dynobj;
|
||||||
symtab_hdr = &elf_tdata (abfd)->symtab_hdr;
|
symtab_hdr = &elf_tdata (abfd)->symtab_hdr;
|
||||||
sym_hashes = elf_sym_hashes (abfd);
|
sym_hashes = elf_sym_hashes (abfd);
|
||||||
sym_hashes_end = sym_hashes + symtab_hdr->sh_size/sizeof (Elf32_External_Sym);
|
|
||||||
local_got_refcounts = elf_local_got_refcounts (abfd);
|
local_got_refcounts = elf_local_got_refcounts (abfd);
|
||||||
|
|
||||||
sgot = NULL;
|
sgot = NULL;
|
||||||
srelgot = NULL;
|
srelgot = NULL;
|
||||||
sreloc = NULL;
|
sreloc = NULL;
|
||||||
|
|
||||||
if (!elf_bad_symtab (abfd))
|
|
||||||
sym_hashes_end -= symtab_hdr->sh_info;
|
|
||||||
|
|
||||||
rel_end = relocs + sec->reloc_count;
|
rel_end = relocs + sec->reloc_count;
|
||||||
for (rel = relocs; rel < rel_end; rel++)
|
for (rel = relocs; rel < rel_end; rel++)
|
||||||
{
|
{
|
||||||
|
@ -262,7 +262,7 @@ elf32_d10v_check_relocs (bfd *abfd,
|
|||||||
const Elf_Internal_Rela *relocs)
|
const Elf_Internal_Rela *relocs)
|
||||||
{
|
{
|
||||||
Elf_Internal_Shdr *symtab_hdr;
|
Elf_Internal_Shdr *symtab_hdr;
|
||||||
struct elf_link_hash_entry **sym_hashes, **sym_hashes_end;
|
struct elf_link_hash_entry **sym_hashes;
|
||||||
const Elf_Internal_Rela *rel;
|
const Elf_Internal_Rela *rel;
|
||||||
const Elf_Internal_Rela *rel_end;
|
const Elf_Internal_Rela *rel_end;
|
||||||
|
|
||||||
@ -271,9 +271,6 @@ elf32_d10v_check_relocs (bfd *abfd,
|
|||||||
|
|
||||||
symtab_hdr = &elf_tdata (abfd)->symtab_hdr;
|
symtab_hdr = &elf_tdata (abfd)->symtab_hdr;
|
||||||
sym_hashes = elf_sym_hashes (abfd);
|
sym_hashes = elf_sym_hashes (abfd);
|
||||||
sym_hashes_end = sym_hashes + symtab_hdr->sh_size/sizeof (Elf32_External_Sym);
|
|
||||||
if (!elf_bad_symtab (abfd))
|
|
||||||
sym_hashes_end -= symtab_hdr->sh_info;
|
|
||||||
|
|
||||||
rel_end = relocs + sec->reloc_count;
|
rel_end = relocs + sec->reloc_count;
|
||||||
for (rel = relocs; rel < rel_end; rel++)
|
for (rel = relocs; rel < rel_end; rel++)
|
||||||
|
@ -428,7 +428,7 @@ elf32_dlx_check_relocs (bfd *abfd,
|
|||||||
const Elf_Internal_Rela *relocs)
|
const Elf_Internal_Rela *relocs)
|
||||||
{
|
{
|
||||||
Elf_Internal_Shdr *symtab_hdr;
|
Elf_Internal_Shdr *symtab_hdr;
|
||||||
struct elf_link_hash_entry **sym_hashes, **sym_hashes_end;
|
struct elf_link_hash_entry **sym_hashes;
|
||||||
const Elf_Internal_Rela *rel;
|
const Elf_Internal_Rela *rel;
|
||||||
const Elf_Internal_Rela *rel_end;
|
const Elf_Internal_Rela *rel_end;
|
||||||
|
|
||||||
@ -437,9 +437,6 @@ elf32_dlx_check_relocs (bfd *abfd,
|
|||||||
|
|
||||||
symtab_hdr = &elf_tdata (abfd)->symtab_hdr;
|
symtab_hdr = &elf_tdata (abfd)->symtab_hdr;
|
||||||
sym_hashes = elf_sym_hashes (abfd);
|
sym_hashes = elf_sym_hashes (abfd);
|
||||||
sym_hashes_end = sym_hashes + symtab_hdr->sh_size / sizeof (Elf32_External_Sym);
|
|
||||||
if (!elf_bad_symtab (abfd))
|
|
||||||
sym_hashes_end -= symtab_hdr->sh_info;
|
|
||||||
|
|
||||||
rel_end = relocs + sec->reloc_count;
|
rel_end = relocs + sec->reloc_count;
|
||||||
for (rel = relocs; rel < rel_end; rel++)
|
for (rel = relocs; rel < rel_end; rel++)
|
||||||
|
@ -674,7 +674,7 @@ fr30_elf_check_relocs (abfd, info, sec, relocs)
|
|||||||
const Elf_Internal_Rela *relocs;
|
const Elf_Internal_Rela *relocs;
|
||||||
{
|
{
|
||||||
Elf_Internal_Shdr *symtab_hdr;
|
Elf_Internal_Shdr *symtab_hdr;
|
||||||
struct elf_link_hash_entry **sym_hashes, **sym_hashes_end;
|
struct elf_link_hash_entry **sym_hashes;
|
||||||
const Elf_Internal_Rela *rel;
|
const Elf_Internal_Rela *rel;
|
||||||
const Elf_Internal_Rela *rel_end;
|
const Elf_Internal_Rela *rel_end;
|
||||||
|
|
||||||
@ -683,9 +683,6 @@ fr30_elf_check_relocs (abfd, info, sec, relocs)
|
|||||||
|
|
||||||
symtab_hdr = &elf_tdata (abfd)->symtab_hdr;
|
symtab_hdr = &elf_tdata (abfd)->symtab_hdr;
|
||||||
sym_hashes = elf_sym_hashes (abfd);
|
sym_hashes = elf_sym_hashes (abfd);
|
||||||
sym_hashes_end = sym_hashes + symtab_hdr->sh_size/sizeof (Elf32_External_Sym);
|
|
||||||
if (!elf_bad_symtab (abfd))
|
|
||||||
sym_hashes_end -= symtab_hdr->sh_info;
|
|
||||||
|
|
||||||
rel_end = relocs + sec->reloc_count;
|
rel_end = relocs + sec->reloc_count;
|
||||||
for (rel = relocs; rel < rel_end; rel++)
|
for (rel = relocs; rel < rel_end; rel++)
|
||||||
|
@ -5628,7 +5628,7 @@ _frvfdpic_check_discarded_relocs (bfd *abfd, asection *sec,
|
|||||||
bfd_boolean *changed)
|
bfd_boolean *changed)
|
||||||
{
|
{
|
||||||
Elf_Internal_Shdr *symtab_hdr;
|
Elf_Internal_Shdr *symtab_hdr;
|
||||||
struct elf_link_hash_entry **sym_hashes, **sym_hashes_end;
|
struct elf_link_hash_entry **sym_hashes;
|
||||||
Elf_Internal_Rela *rel, *erel;
|
Elf_Internal_Rela *rel, *erel;
|
||||||
|
|
||||||
if ((sec->flags & SEC_RELOC) == 0
|
if ((sec->flags & SEC_RELOC) == 0
|
||||||
@ -5637,9 +5637,6 @@ _frvfdpic_check_discarded_relocs (bfd *abfd, asection *sec,
|
|||||||
|
|
||||||
symtab_hdr = &elf_tdata (abfd)->symtab_hdr;
|
symtab_hdr = &elf_tdata (abfd)->symtab_hdr;
|
||||||
sym_hashes = elf_sym_hashes (abfd);
|
sym_hashes = elf_sym_hashes (abfd);
|
||||||
sym_hashes_end = sym_hashes + symtab_hdr->sh_size/sizeof(Elf32_External_Sym);
|
|
||||||
if (!elf_bad_symtab (abfd))
|
|
||||||
sym_hashes_end -= symtab_hdr->sh_info;
|
|
||||||
|
|
||||||
rel = elf_section_data (sec)->relocs;
|
rel = elf_section_data (sec)->relocs;
|
||||||
|
|
||||||
@ -6179,7 +6176,7 @@ elf32_frv_check_relocs (abfd, info, sec, relocs)
|
|||||||
const Elf_Internal_Rela *relocs;
|
const Elf_Internal_Rela *relocs;
|
||||||
{
|
{
|
||||||
Elf_Internal_Shdr *symtab_hdr;
|
Elf_Internal_Shdr *symtab_hdr;
|
||||||
struct elf_link_hash_entry **sym_hashes, **sym_hashes_end;
|
struct elf_link_hash_entry **sym_hashes;
|
||||||
const Elf_Internal_Rela *rel;
|
const Elf_Internal_Rela *rel;
|
||||||
const Elf_Internal_Rela *rel_end;
|
const Elf_Internal_Rela *rel_end;
|
||||||
bfd *dynobj;
|
bfd *dynobj;
|
||||||
@ -6190,9 +6187,6 @@ elf32_frv_check_relocs (abfd, info, sec, relocs)
|
|||||||
|
|
||||||
symtab_hdr = &elf_tdata (abfd)->symtab_hdr;
|
symtab_hdr = &elf_tdata (abfd)->symtab_hdr;
|
||||||
sym_hashes = elf_sym_hashes (abfd);
|
sym_hashes = elf_sym_hashes (abfd);
|
||||||
sym_hashes_end = sym_hashes + symtab_hdr->sh_size/sizeof(Elf32_External_Sym);
|
|
||||||
if (!elf_bad_symtab (abfd))
|
|
||||||
sym_hashes_end -= symtab_hdr->sh_info;
|
|
||||||
|
|
||||||
dynobj = elf_hash_table (info)->dynobj;
|
dynobj = elf_hash_table (info)->dynobj;
|
||||||
rel_end = relocs + sec->reloc_count;
|
rel_end = relocs + sec->reloc_count;
|
||||||
|
@ -424,7 +424,7 @@ iq2000_elf_check_relocs (bfd *abfd,
|
|||||||
const Elf_Internal_Rela *relocs)
|
const Elf_Internal_Rela *relocs)
|
||||||
{
|
{
|
||||||
Elf_Internal_Shdr *symtab_hdr;
|
Elf_Internal_Shdr *symtab_hdr;
|
||||||
struct elf_link_hash_entry **sym_hashes, **sym_hashes_end;
|
struct elf_link_hash_entry **sym_hashes;
|
||||||
const Elf_Internal_Rela *rel;
|
const Elf_Internal_Rela *rel;
|
||||||
const Elf_Internal_Rela *rel_end;
|
const Elf_Internal_Rela *rel_end;
|
||||||
bfd_boolean changed = FALSE;
|
bfd_boolean changed = FALSE;
|
||||||
@ -434,9 +434,6 @@ iq2000_elf_check_relocs (bfd *abfd,
|
|||||||
|
|
||||||
symtab_hdr = &elf_tdata (abfd)->symtab_hdr;
|
symtab_hdr = &elf_tdata (abfd)->symtab_hdr;
|
||||||
sym_hashes = elf_sym_hashes (abfd);
|
sym_hashes = elf_sym_hashes (abfd);
|
||||||
sym_hashes_end = sym_hashes + symtab_hdr->sh_size / sizeof (Elf32_External_Sym);
|
|
||||||
if (!elf_bad_symtab (abfd))
|
|
||||||
sym_hashes_end -= symtab_hdr->sh_info;
|
|
||||||
|
|
||||||
rel_end = relocs + sec->reloc_count;
|
rel_end = relocs + sec->reloc_count;
|
||||||
for (rel = relocs; rel < rel_end; rel++)
|
for (rel = relocs; rel < rel_end; rel++)
|
||||||
|
@ -597,7 +597,6 @@ m32c_elf_check_relocs
|
|||||||
{
|
{
|
||||||
Elf_Internal_Shdr * symtab_hdr;
|
Elf_Internal_Shdr * symtab_hdr;
|
||||||
struct elf_link_hash_entry ** sym_hashes;
|
struct elf_link_hash_entry ** sym_hashes;
|
||||||
struct elf_link_hash_entry ** sym_hashes_end;
|
|
||||||
const Elf_Internal_Rela * rel;
|
const Elf_Internal_Rela * rel;
|
||||||
const Elf_Internal_Rela * rel_end;
|
const Elf_Internal_Rela * rel_end;
|
||||||
bfd_vma *local_plt_offsets;
|
bfd_vma *local_plt_offsets;
|
||||||
@ -613,10 +612,6 @@ m32c_elf_check_relocs
|
|||||||
splt = NULL;
|
splt = NULL;
|
||||||
dynobj = elf_hash_table(info)->dynobj;
|
dynobj = elf_hash_table(info)->dynobj;
|
||||||
|
|
||||||
sym_hashes_end = sym_hashes + symtab_hdr->sh_size/sizeof (Elf32_External_Sym);
|
|
||||||
if (!elf_bad_symtab (abfd))
|
|
||||||
sym_hashes_end -= symtab_hdr->sh_info;
|
|
||||||
|
|
||||||
rel_end = relocs + sec->reloc_count;
|
rel_end = relocs + sec->reloc_count;
|
||||||
for (rel = relocs; rel < rel_end; rel++)
|
for (rel = relocs; rel < rel_end; rel++)
|
||||||
{
|
{
|
||||||
|
@ -3766,7 +3766,7 @@ m32r_elf_check_relocs (bfd *abfd,
|
|||||||
const Elf_Internal_Rela *relocs)
|
const Elf_Internal_Rela *relocs)
|
||||||
{
|
{
|
||||||
Elf_Internal_Shdr *symtab_hdr;
|
Elf_Internal_Shdr *symtab_hdr;
|
||||||
struct elf_link_hash_entry **sym_hashes, **sym_hashes_end;
|
struct elf_link_hash_entry **sym_hashes;
|
||||||
const Elf_Internal_Rela *rel;
|
const Elf_Internal_Rela *rel;
|
||||||
const Elf_Internal_Rela *rel_end;
|
const Elf_Internal_Rela *rel_end;
|
||||||
struct elf_m32r_link_hash_table *htab;
|
struct elf_m32r_link_hash_table *htab;
|
||||||
@ -3781,9 +3781,6 @@ m32r_elf_check_relocs (bfd *abfd,
|
|||||||
|
|
||||||
symtab_hdr = &elf_tdata (abfd)->symtab_hdr;
|
symtab_hdr = &elf_tdata (abfd)->symtab_hdr;
|
||||||
sym_hashes = elf_sym_hashes (abfd);
|
sym_hashes = elf_sym_hashes (abfd);
|
||||||
sym_hashes_end = sym_hashes + symtab_hdr->sh_size/sizeof (Elf32_External_Sym);
|
|
||||||
if (!elf_bad_symtab (abfd))
|
|
||||||
sym_hashes_end -= symtab_hdr->sh_info;
|
|
||||||
|
|
||||||
htab = m32r_elf_hash_table (info);
|
htab = m32r_elf_hash_table (info);
|
||||||
dynobj = htab->root.dynobj;
|
dynobj = htab->root.dynobj;
|
||||||
|
@ -821,7 +821,6 @@ elf32_m68hc11_check_relocs (bfd *abfd, struct bfd_link_info *info,
|
|||||||
{
|
{
|
||||||
Elf_Internal_Shdr * symtab_hdr;
|
Elf_Internal_Shdr * symtab_hdr;
|
||||||
struct elf_link_hash_entry ** sym_hashes;
|
struct elf_link_hash_entry ** sym_hashes;
|
||||||
struct elf_link_hash_entry ** sym_hashes_end;
|
|
||||||
const Elf_Internal_Rela * rel;
|
const Elf_Internal_Rela * rel;
|
||||||
const Elf_Internal_Rela * rel_end;
|
const Elf_Internal_Rela * rel_end;
|
||||||
|
|
||||||
@ -830,10 +829,6 @@ elf32_m68hc11_check_relocs (bfd *abfd, struct bfd_link_info *info,
|
|||||||
|
|
||||||
symtab_hdr = & elf_tdata (abfd)->symtab_hdr;
|
symtab_hdr = & elf_tdata (abfd)->symtab_hdr;
|
||||||
sym_hashes = elf_sym_hashes (abfd);
|
sym_hashes = elf_sym_hashes (abfd);
|
||||||
sym_hashes_end = sym_hashes + symtab_hdr->sh_size / sizeof (Elf32_External_Sym);
|
|
||||||
if (!elf_bad_symtab (abfd))
|
|
||||||
sym_hashes_end -= symtab_hdr->sh_info;
|
|
||||||
|
|
||||||
rel_end = relocs + sec->reloc_count;
|
rel_end = relocs + sec->reloc_count;
|
||||||
|
|
||||||
for (rel = relocs; rel < rel_end; rel++)
|
for (rel = relocs; rel < rel_end; rel++)
|
||||||
|
@ -594,7 +594,6 @@ mcore_elf_check_relocs (bfd * abfd,
|
|||||||
{
|
{
|
||||||
Elf_Internal_Shdr * symtab_hdr;
|
Elf_Internal_Shdr * symtab_hdr;
|
||||||
struct elf_link_hash_entry ** sym_hashes;
|
struct elf_link_hash_entry ** sym_hashes;
|
||||||
struct elf_link_hash_entry ** sym_hashes_end;
|
|
||||||
const Elf_Internal_Rela * rel;
|
const Elf_Internal_Rela * rel;
|
||||||
const Elf_Internal_Rela * rel_end;
|
const Elf_Internal_Rela * rel_end;
|
||||||
|
|
||||||
@ -603,9 +602,6 @@ mcore_elf_check_relocs (bfd * abfd,
|
|||||||
|
|
||||||
symtab_hdr = & elf_tdata (abfd)->symtab_hdr;
|
symtab_hdr = & elf_tdata (abfd)->symtab_hdr;
|
||||||
sym_hashes = elf_sym_hashes (abfd);
|
sym_hashes = elf_sym_hashes (abfd);
|
||||||
sym_hashes_end = sym_hashes + symtab_hdr->sh_size / sizeof (Elf32_External_Sym);
|
|
||||||
if (!elf_bad_symtab (abfd))
|
|
||||||
sym_hashes_end -= symtab_hdr->sh_info;
|
|
||||||
|
|
||||||
rel_end = relocs + sec->reloc_count;
|
rel_end = relocs + sec->reloc_count;
|
||||||
|
|
||||||
|
@ -241,7 +241,7 @@ elf32_msp430_check_relocs (bfd * abfd, struct bfd_link_info * info,
|
|||||||
asection * sec, const Elf_Internal_Rela * relocs)
|
asection * sec, const Elf_Internal_Rela * relocs)
|
||||||
{
|
{
|
||||||
Elf_Internal_Shdr *symtab_hdr;
|
Elf_Internal_Shdr *symtab_hdr;
|
||||||
struct elf_link_hash_entry **sym_hashes, **sym_hashes_end;
|
struct elf_link_hash_entry **sym_hashes;
|
||||||
const Elf_Internal_Rela *rel;
|
const Elf_Internal_Rela *rel;
|
||||||
const Elf_Internal_Rela *rel_end;
|
const Elf_Internal_Rela *rel_end;
|
||||||
|
|
||||||
@ -250,10 +250,6 @@ elf32_msp430_check_relocs (bfd * abfd, struct bfd_link_info * info,
|
|||||||
|
|
||||||
symtab_hdr = &elf_tdata (abfd)->symtab_hdr;
|
symtab_hdr = &elf_tdata (abfd)->symtab_hdr;
|
||||||
sym_hashes = elf_sym_hashes (abfd);
|
sym_hashes = elf_sym_hashes (abfd);
|
||||||
sym_hashes_end =
|
|
||||||
sym_hashes + symtab_hdr->sh_size / sizeof (Elf32_External_Sym);
|
|
||||||
if (!elf_bad_symtab (abfd))
|
|
||||||
sym_hashes_end -= symtab_hdr->sh_info;
|
|
||||||
|
|
||||||
rel_end = relocs + sec->reloc_count;
|
rel_end = relocs + sec->reloc_count;
|
||||||
for (rel = relocs; rel < rel_end; rel++)
|
for (rel = relocs; rel < rel_end; rel++)
|
||||||
|
@ -436,7 +436,6 @@ mt_elf_check_relocs
|
|||||||
{
|
{
|
||||||
Elf_Internal_Shdr * symtab_hdr;
|
Elf_Internal_Shdr * symtab_hdr;
|
||||||
struct elf_link_hash_entry ** sym_hashes;
|
struct elf_link_hash_entry ** sym_hashes;
|
||||||
struct elf_link_hash_entry ** sym_hashes_end;
|
|
||||||
const Elf_Internal_Rela * rel;
|
const Elf_Internal_Rela * rel;
|
||||||
const Elf_Internal_Rela * rel_end;
|
const Elf_Internal_Rela * rel_end;
|
||||||
|
|
||||||
@ -445,9 +444,6 @@ mt_elf_check_relocs
|
|||||||
|
|
||||||
symtab_hdr = &elf_tdata (abfd)->symtab_hdr;
|
symtab_hdr = &elf_tdata (abfd)->symtab_hdr;
|
||||||
sym_hashes = elf_sym_hashes (abfd);
|
sym_hashes = elf_sym_hashes (abfd);
|
||||||
sym_hashes_end = sym_hashes + symtab_hdr->sh_size / sizeof (Elf32_External_Sym);
|
|
||||||
if (!elf_bad_symtab (abfd))
|
|
||||||
sym_hashes_end -= symtab_hdr->sh_info;
|
|
||||||
|
|
||||||
rel_end = relocs + sec->reloc_count;
|
rel_end = relocs + sec->reloc_count;
|
||||||
for (rel = relocs; rel < rel_end; rel++)
|
for (rel = relocs; rel < rel_end; rel++)
|
||||||
|
@ -468,7 +468,7 @@ openrisc_elf_check_relocs (bfd *abfd,
|
|||||||
const Elf_Internal_Rela *relocs)
|
const Elf_Internal_Rela *relocs)
|
||||||
{
|
{
|
||||||
Elf_Internal_Shdr *symtab_hdr;
|
Elf_Internal_Shdr *symtab_hdr;
|
||||||
struct elf_link_hash_entry **sym_hashes, **sym_hashes_end;
|
struct elf_link_hash_entry **sym_hashes;
|
||||||
const Elf_Internal_Rela *rel;
|
const Elf_Internal_Rela *rel;
|
||||||
const Elf_Internal_Rela *rel_end;
|
const Elf_Internal_Rela *rel_end;
|
||||||
|
|
||||||
@ -477,10 +477,6 @@ openrisc_elf_check_relocs (bfd *abfd,
|
|||||||
|
|
||||||
symtab_hdr = &elf_tdata (abfd)->symtab_hdr;
|
symtab_hdr = &elf_tdata (abfd)->symtab_hdr;
|
||||||
sym_hashes = elf_sym_hashes (abfd);
|
sym_hashes = elf_sym_hashes (abfd);
|
||||||
sym_hashes_end =
|
|
||||||
sym_hashes + symtab_hdr->sh_size / sizeof (Elf32_External_Sym);
|
|
||||||
if (!elf_bad_symtab (abfd))
|
|
||||||
sym_hashes_end -= symtab_hdr->sh_info;
|
|
||||||
|
|
||||||
rel_end = relocs + sec->reloc_count;
|
rel_end = relocs + sec->reloc_count;
|
||||||
for (rel = relocs; rel < rel_end; rel++)
|
for (rel = relocs; rel < rel_end; rel++)
|
||||||
|
@ -1101,7 +1101,6 @@ score_elf_sort_dynamic_relocs (const void *arg1, const void *arg2)
|
|||||||
static bfd_boolean
|
static bfd_boolean
|
||||||
score_elf_local_relocation_p (bfd *input_bfd,
|
score_elf_local_relocation_p (bfd *input_bfd,
|
||||||
const Elf_Internal_Rela *relocation,
|
const Elf_Internal_Rela *relocation,
|
||||||
asection **local_sections,
|
|
||||||
bfd_boolean check_forced)
|
bfd_boolean check_forced)
|
||||||
{
|
{
|
||||||
unsigned long r_symndx;
|
unsigned long r_symndx;
|
||||||
@ -1111,12 +1110,10 @@ score_elf_local_relocation_p (bfd *input_bfd,
|
|||||||
|
|
||||||
r_symndx = ELF32_R_SYM (relocation->r_info);
|
r_symndx = ELF32_R_SYM (relocation->r_info);
|
||||||
symtab_hdr = &elf_tdata (input_bfd)->symtab_hdr;
|
symtab_hdr = &elf_tdata (input_bfd)->symtab_hdr;
|
||||||
extsymoff = (elf_bad_symtab (input_bfd)) ? 0 : symtab_hdr->sh_info;
|
extsymoff = symtab_hdr->sh_info;
|
||||||
|
|
||||||
if (r_symndx < extsymoff)
|
if (r_symndx < extsymoff)
|
||||||
return TRUE;
|
return TRUE;
|
||||||
if (elf_bad_symtab (input_bfd) && local_sections[r_symndx] != NULL)
|
|
||||||
return TRUE;
|
|
||||||
|
|
||||||
if (check_forced)
|
if (check_forced)
|
||||||
{
|
{
|
||||||
@ -1845,7 +1842,6 @@ score_elf_final_link_relocate (reloc_howto_type *howto,
|
|||||||
const char *sym_name ATTRIBUTE_UNUSED,
|
const char *sym_name ATTRIBUTE_UNUSED,
|
||||||
int sym_flags ATTRIBUTE_UNUSED,
|
int sym_flags ATTRIBUTE_UNUSED,
|
||||||
struct score_elf_link_hash_entry *h,
|
struct score_elf_link_hash_entry *h,
|
||||||
asection **local_sections,
|
|
||||||
bfd_boolean gp_disp_p)
|
bfd_boolean gp_disp_p)
|
||||||
{
|
{
|
||||||
unsigned long r_type;
|
unsigned long r_type;
|
||||||
@ -1901,7 +1897,7 @@ score_elf_final_link_relocate (reloc_howto_type *howto,
|
|||||||
r_symndx = ELF32_R_SYM (rel->r_info);
|
r_symndx = ELF32_R_SYM (rel->r_info);
|
||||||
r_type = ELF32_R_TYPE (rel->r_info);
|
r_type = ELF32_R_TYPE (rel->r_info);
|
||||||
rel_addr = (input_section->output_section->vma + input_section->output_offset + rel->r_offset);
|
rel_addr = (input_section->output_section->vma + input_section->output_offset + rel->r_offset);
|
||||||
local_p = score_elf_local_relocation_p (input_bfd, rel, local_sections, TRUE);
|
local_p = score_elf_local_relocation_p (input_bfd, rel, TRUE);
|
||||||
|
|
||||||
if (r_type == R_SCORE_GOT15)
|
if (r_type == R_SCORE_GOT15)
|
||||||
{
|
{
|
||||||
@ -2120,8 +2116,7 @@ score_elf_final_link_relocate (reloc_howto_type *howto,
|
|||||||
|
|
||||||
/* The special case is when the symbol is forced to be local. We need the
|
/* The special case is when the symbol is forced to be local. We need the
|
||||||
full address in the GOT since no R_SCORE_GOT_LO16 relocation follows. */
|
full address in the GOT since no R_SCORE_GOT_LO16 relocation follows. */
|
||||||
forced = ! score_elf_local_relocation_p (input_bfd, rel,
|
forced = ! score_elf_local_relocation_p (input_bfd, rel, FALSE);
|
||||||
local_sections, FALSE);
|
|
||||||
value = score_elf_got16_entry (output_bfd, input_bfd, info,
|
value = score_elf_got16_entry (output_bfd, input_bfd, info,
|
||||||
symbol + addend, forced);
|
symbol + addend, forced);
|
||||||
if (value == MINUS_ONE)
|
if (value == MINUS_ONE)
|
||||||
@ -2230,7 +2225,7 @@ _bfd_score_elf_relocate_section (bfd *output_bfd,
|
|||||||
}
|
}
|
||||||
|
|
||||||
symtab_hdr = &elf_tdata (input_bfd)->symtab_hdr;
|
symtab_hdr = &elf_tdata (input_bfd)->symtab_hdr;
|
||||||
extsymoff = (elf_bad_symtab (input_bfd)) ? 0 : symtab_hdr->sh_info;
|
extsymoff = symtab_hdr->sh_info;
|
||||||
sym_hashes = elf_sym_hashes (input_bfd);
|
sym_hashes = elf_sym_hashes (input_bfd);
|
||||||
rel = relocs;
|
rel = relocs;
|
||||||
relend = relocs + input_section->reloc_count;
|
relend = relocs + input_section->reloc_count;
|
||||||
@ -2427,7 +2422,7 @@ _bfd_score_elf_relocate_section (bfd *output_bfd,
|
|||||||
input_section, contents, rel, relocs,
|
input_section, contents, rel, relocs,
|
||||||
relocation, info, name,
|
relocation, info, name,
|
||||||
(h ? ELF_ST_TYPE ((unsigned int)h->root.root.type) :
|
(h ? ELF_ST_TYPE ((unsigned int)h->root.root.type) :
|
||||||
ELF_ST_TYPE ((unsigned int)sym->st_info)), h, local_sections,
|
ELF_ST_TYPE ((unsigned int)sym->st_info)), h,
|
||||||
gp_disp_p);
|
gp_disp_p);
|
||||||
|
|
||||||
if (r != bfd_reloc_ok)
|
if (r != bfd_reloc_ok)
|
||||||
@ -2507,7 +2502,7 @@ _bfd_score_elf_check_relocs (bfd *abfd,
|
|||||||
dynobj = elf_hash_table (info)->dynobj;
|
dynobj = elf_hash_table (info)->dynobj;
|
||||||
symtab_hdr = &elf_tdata (abfd)->symtab_hdr;
|
symtab_hdr = &elf_tdata (abfd)->symtab_hdr;
|
||||||
sym_hashes = elf_sym_hashes (abfd);
|
sym_hashes = elf_sym_hashes (abfd);
|
||||||
extsymoff = (elf_bad_symtab (abfd)) ? 0 : symtab_hdr->sh_info;
|
extsymoff = symtab_hdr->sh_info;
|
||||||
|
|
||||||
name = bfd_get_section_name (abfd, sec);
|
name = bfd_get_section_name (abfd, sec);
|
||||||
|
|
||||||
|
@ -4835,7 +4835,7 @@ sh_elf_check_relocs (bfd *abfd, struct bfd_link_info *info, asection *sec,
|
|||||||
const Elf_Internal_Rela *relocs)
|
const Elf_Internal_Rela *relocs)
|
||||||
{
|
{
|
||||||
Elf_Internal_Shdr *symtab_hdr;
|
Elf_Internal_Shdr *symtab_hdr;
|
||||||
struct elf_link_hash_entry **sym_hashes, **sym_hashes_end;
|
struct elf_link_hash_entry **sym_hashes;
|
||||||
struct elf_sh_link_hash_table *htab;
|
struct elf_sh_link_hash_table *htab;
|
||||||
const Elf_Internal_Rela *rel;
|
const Elf_Internal_Rela *rel;
|
||||||
const Elf_Internal_Rela *rel_end;
|
const Elf_Internal_Rela *rel_end;
|
||||||
@ -4855,9 +4855,6 @@ sh_elf_check_relocs (bfd *abfd, struct bfd_link_info *info, asection *sec,
|
|||||||
|
|
||||||
symtab_hdr = &elf_tdata (abfd)->symtab_hdr;
|
symtab_hdr = &elf_tdata (abfd)->symtab_hdr;
|
||||||
sym_hashes = elf_sym_hashes (abfd);
|
sym_hashes = elf_sym_hashes (abfd);
|
||||||
sym_hashes_end = sym_hashes + symtab_hdr->sh_size/sizeof (Elf32_External_Sym);
|
|
||||||
if (!elf_bad_symtab (abfd))
|
|
||||||
sym_hashes_end -= symtab_hdr->sh_info;
|
|
||||||
|
|
||||||
htab = sh_elf_hash_table (info);
|
htab = sh_elf_hash_table (info);
|
||||||
local_got_offsets = elf_local_got_offsets (abfd);
|
local_got_offsets = elf_local_got_offsets (abfd);
|
||||||
|
@ -1978,15 +1978,12 @@ mmix_elf_check_relocs (abfd, info, sec, relocs)
|
|||||||
const Elf_Internal_Rela *relocs;
|
const Elf_Internal_Rela *relocs;
|
||||||
{
|
{
|
||||||
Elf_Internal_Shdr *symtab_hdr;
|
Elf_Internal_Shdr *symtab_hdr;
|
||||||
struct elf_link_hash_entry **sym_hashes, **sym_hashes_end;
|
struct elf_link_hash_entry **sym_hashes;
|
||||||
const Elf_Internal_Rela *rel;
|
const Elf_Internal_Rela *rel;
|
||||||
const Elf_Internal_Rela *rel_end;
|
const Elf_Internal_Rela *rel_end;
|
||||||
|
|
||||||
symtab_hdr = &elf_tdata (abfd)->symtab_hdr;
|
symtab_hdr = &elf_tdata (abfd)->symtab_hdr;
|
||||||
sym_hashes = elf_sym_hashes (abfd);
|
sym_hashes = elf_sym_hashes (abfd);
|
||||||
sym_hashes_end = sym_hashes + symtab_hdr->sh_size/sizeof(Elf64_External_Sym);
|
|
||||||
if (!elf_bad_symtab (abfd))
|
|
||||||
sym_hashes_end -= symtab_hdr->sh_info;
|
|
||||||
|
|
||||||
/* First we sort the relocs so that any register relocs come before
|
/* First we sort the relocs so that any register relocs come before
|
||||||
expansion-relocs to the same insn. FIXME: Not done for mmo. */
|
expansion-relocs to the same insn. FIXME: Not done for mmo. */
|
||||||
|
@ -2419,7 +2419,7 @@ sh_elf64_check_relocs (bfd *abfd, struct bfd_link_info *info,
|
|||||||
asection *sec, const Elf_Internal_Rela *relocs)
|
asection *sec, const Elf_Internal_Rela *relocs)
|
||||||
{
|
{
|
||||||
Elf_Internal_Shdr *symtab_hdr;
|
Elf_Internal_Shdr *symtab_hdr;
|
||||||
struct elf_link_hash_entry **sym_hashes, **sym_hashes_end;
|
struct elf_link_hash_entry **sym_hashes;
|
||||||
const Elf_Internal_Rela *rel;
|
const Elf_Internal_Rela *rel;
|
||||||
const Elf_Internal_Rela *rel_end;
|
const Elf_Internal_Rela *rel_end;
|
||||||
bfd *dynobj;
|
bfd *dynobj;
|
||||||
@ -2437,9 +2437,6 @@ sh_elf64_check_relocs (bfd *abfd, struct bfd_link_info *info,
|
|||||||
|
|
||||||
symtab_hdr = &elf_tdata (abfd)->symtab_hdr;
|
symtab_hdr = &elf_tdata (abfd)->symtab_hdr;
|
||||||
sym_hashes = elf_sym_hashes (abfd);
|
sym_hashes = elf_sym_hashes (abfd);
|
||||||
sym_hashes_end = sym_hashes + symtab_hdr->sh_size/sizeof(Elf64_External_Sym);
|
|
||||||
if (!elf_bad_symtab (abfd))
|
|
||||||
sym_hashes_end -= symtab_hdr->sh_info;
|
|
||||||
|
|
||||||
dynobj = elf_hash_table (info)->dynobj;
|
dynobj = elf_hash_table (info)->dynobj;
|
||||||
local_got_offsets = elf_local_got_offsets (abfd);
|
local_got_offsets = elf_local_got_offsets (abfd);
|
||||||
|
Loading…
Reference in New Issue
Block a user