aboutsummaryrefslogtreecommitdiff
path: root/bfd/elf-bfd.h
diff options
context:
space:
mode:
Diffstat (limited to 'bfd/elf-bfd.h')
-rw-r--r--bfd/elf-bfd.h37
1 files changed, 15 insertions, 22 deletions
diff --git a/bfd/elf-bfd.h b/bfd/elf-bfd.h
index 5af11cf..b791623 100644
--- a/bfd/elf-bfd.h
+++ b/bfd/elf-bfd.h
@@ -605,8 +605,7 @@ enum elf_target_os
{
is_normal,
is_solaris, /* Solaris. */
- is_vxworks, /* VxWorks. */
- is_nacl /* Native Client. */
+ is_vxworks /* VxWorks. */
};
/* Used by bfd_sym_from_r_symndx to cache a small number of local
@@ -3273,10 +3272,9 @@ extern asection _bfd_elf_large_com_section;
link, we remove such relocations. Otherwise, we just want the
section contents zeroed and avoid any special processing. */
#define RELOC_AGAINST_DISCARDED_SECTION(info, input_bfd, input_section, \
- rel, count, relend, \
+ rel, count, relend, rnone, \
howto, index, contents) \
{ \
- int i_; \
_bfd_clear_contents (howto, input_bfd, input_section, \
contents, rel[index].r_offset); \
\
@@ -3288,30 +3286,25 @@ extern asection _bfd_elf_large_com_section;
&& ((input_section->flags & SEC_DEBUGGING) != 0 \
|| elf_section_type (input_section) == SHT_GNU_SFRAME)) \
{ \
- Elf_Internal_Shdr *rel_hdr; \
+ Elf_Internal_Shdr *rel_hdr \
+ = _bfd_elf_single_rel_hdr (input_section->output_section); \
\
- rel_hdr = _bfd_elf_single_rel_hdr (input_section->output_section); \
+ rel_hdr->sh_size -= rel_hdr->sh_entsize; \
+ rel_hdr = _bfd_elf_single_rel_hdr (input_section); \
+ rel_hdr->sh_size -= rel_hdr->sh_entsize; \
\
- /* Avoid empty output section. */ \
- if (rel_hdr->sh_size > rel_hdr->sh_entsize) \
- { \
- rel_hdr->sh_size -= rel_hdr->sh_entsize; \
- rel_hdr = _bfd_elf_single_rel_hdr (input_section); \
- rel_hdr->sh_size -= rel_hdr->sh_entsize; \
+ memmove (rel, rel + count, \
+ (relend - rel - count) * sizeof (*rel)); \
\
- memmove (rel, rel + count, \
- (relend - rel - count) * sizeof (*rel)); \
- \
- input_section->reloc_count -= count; \
- relend -= count; \
- rel--; \
- continue; \
- } \
+ input_section->reloc_count -= count; \
+ relend -= count; \
+ rel--; \
+ continue; \
} \
\
- for (i_ = 0; i_ < count; i_++) \
+ for (int i_ = 0; i_ < count; i_++) \
{ \
- rel[i_].r_info = 0; \
+ rel[i_].r_info = rnone; \
rel[i_].r_addend = 0; \
} \
rel += count - 1; \