projects
/
deliverable
/
binutils-gdb.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Do without ld ENABLE_PLUGINS
[deliverable/binutils-gdb.git]
/
bfd
/
elf32-arc.c
diff --git
a/bfd/elf32-arc.c
b/bfd/elf32-arc.c
index 91537efd8410dde9bc51b0e9071323f4c7a93026..06ee60ac409760286d98b6b9febf32260a9866f2 100644
(file)
--- a/
bfd/elf32-arc.c
+++ b/
bfd/elf32-arc.c
@@
-1,5
+1,5
@@
/* ARC-specific support for 32-bit ELF
/* ARC-specific support for 32-bit ELF
- Copyright (C) 1994-20
19
Free Software Foundation, Inc.
+ Copyright (C) 1994-20
20
Free Software Foundation, Inc.
Contributed by Cupertino Miranda (cmiranda@synopsys.com).
This file is part of BFD, the Binary File Descriptor library.
Contributed by Cupertino Miranda (cmiranda@synopsys.com).
This file is part of BFD, the Binary File Descriptor library.
@@
-184,9
+184,6
@@
struct elf_arc_link_hash_entry
{
struct elf_link_hash_entry root;
{
struct elf_link_hash_entry root;
- /* Track dynamic relocs copied for this symbol. */
- struct elf_dyn_relocs *dyn_relocs;
-
struct got_entry *got_ents;
};
struct got_entry *got_ents;
};
@@
-340,7
+337,6
@@
elf_arc_link_hash_newfunc (struct bfd_hash_entry *entry,
table, string));
if (ret != NULL)
{
table, string));
if (ret != NULL)
{
- ret->dyn_relocs = NULL;
ret->got_ents = NULL;
}
ret->got_ents = NULL;
}
@@
-1255,11
+1251,11
@@
arc_special_overflow_checks (const struct arc_relocation_data reloc_data,
else \
ARC_DEBUG ("symbol_section->vma = NULL\n"); \
if (input_section->output_section != NULL) \
else \
ARC_DEBUG ("symbol_section->vma = NULL\n"); \
if (input_section->output_section != NULL) \
- ARC_DEBUG ("
symbol_section->vma = %#lx\n",
\
+ ARC_DEBUG ("
input_section->vma = %#lx\n",
\
input_section->output_section->vma \
+ input_section->output_offset); \
else \
input_section->output_section->vma \
+ input_section->output_offset); \
else \
- ARC_DEBUG ("
symbol_section->vma = NULL\n");
\
+ ARC_DEBUG ("
input_section->vma = NULL\n");
\
ARC_DEBUG ("PCL = %#lx\n", P); \
ARC_DEBUG ("P = %#lx\n", P); \
ARC_DEBUG ("G = %#lx\n", G); \
ARC_DEBUG ("PCL = %#lx\n", P); \
ARC_DEBUG ("P = %#lx\n", P); \
ARC_DEBUG ("G = %#lx\n", G); \
@@
-1786,6
+1782,7
@@
elf_arc_relocate_section (bfd * output_bfd,
case R_ARC_PC32:
case R_ARC_32_PCREL:
if (bfd_link_pic (info)
case R_ARC_PC32:
case R_ARC_32_PCREL:
if (bfd_link_pic (info)
+ && (input_section->flags & SEC_ALLOC) != 0
&& (!IS_ARC_PCREL_TYPE (r_type)
|| (h != NULL
&& h->dynindx != -1
&& (!IS_ARC_PCREL_TYPE (r_type)
|| (h != NULL
&& h->dynindx != -1
@@
-3128,21
+3125,17
@@
arc_elf_relax_section (bfd *abfd, asection *sec,
elf_section_data (sec)->this_hdr.contents = contents;
}
elf_section_data (sec)->this_hdr.contents = contents;
}
- if (internal_relocs != NULL
- && elf_section_data (sec)->relocs != internal_relocs)
+ if (elf_section_data (sec)->relocs != internal_relocs)
free (internal_relocs);
return TRUE;
error_return:
free (internal_relocs);
return TRUE;
error_return:
- if (isymbuf != NULL
- && symtab_hdr->contents != (unsigned char *) isymbuf)
+ if (symtab_hdr->contents != (unsigned char *) isymbuf)
free (isymbuf);
free (isymbuf);
- if (contents != NULL
- && elf_section_data (sec)->this_hdr.contents != contents)
+ if (elf_section_data (sec)->this_hdr.contents != contents)
free (contents);
free (contents);
- if (internal_relocs != NULL
- && elf_section_data (sec)->relocs != internal_relocs)
+ if (elf_section_data (sec)->relocs != internal_relocs)
free (internal_relocs);
return FALSE;
free (internal_relocs);
return FALSE;
This page took
0.038142 seconds
and
4
git commands to generate.