From b6518b3871859f9eeb7653bf2f3baaa43fa0a5d0 Mon Sep 17 00:00:00 2001 From: Nick Clifton Date: Wed, 23 Sep 2015 18:05:16 +0100 Subject: Fix compile time warnings generated when compiling with clang. bfd * bout.c (b_out_slurp_reloc_table): Cast constant to unsigned in order to avoid problems with left shifting negative values. (abs32code): Likewise. * mach-o.c (FILE_ALIGN): Likewise. * coff-rs6000.c (xcoff_debug_sections): Delete unused static array. * elf32-visium.c (visium_reloc_map): Likewise. * elf32-arm.c (elf32_arm_final_link_relocate): Remove useless calls to abs function. * elf32-frv.c (_frvfdpic_relax_tls_entries): Likewise. * elf32-score.c (score_elf_final_link_relocate): Likewise. * elf32-score7.c (score_elf_final_link_relocate): Likewise. * elf32-i860.c (i860_howto_pc26_reloc): Use multiplication instead of shifting to create a negative mask. * elf32-msp430.c (elf_backend_special_sections): Define. * elfxx-mips.c (got_ofst_reloc_p): Delete unused function. (got_hi16_reloc_p): Delete unused function. * ppcboot.c (ppcboot_bfd_print_private_bfd_data): Fix test of partition name. gas * config/tc-ppc.c (insn_validate): Cast PPC_OPSHIFT_INV to an int. opcode * ppc.h (PPC_OPSHIFT_INV): Use an unsigned constant when left shifting. ld * emultempl/elf32.em (ehdr_start_empty): New static variable. (before_allocation): Use it to initialise ehdr_start_save. * emultempl/pe.em (write_build_id): Remove useless double parenthesis. * emultempl/pep.em (write_build_id): Likewise. opcodes * bfin-dis.c (fmtconst): Remove unnecessary call to the abs function. * tic30-dis.c (print_branch): Likewise. * cgen-asm.c (cgen_parse_signed_integer): Cast integer to signed value before left shifting. * fr30-ibld.c (fr30_cgen_extract_operand): Likewise. * hppa-dis.c (print_insn_hppa): Likewise. * mips-dis.c (mips_cp0sel_names_mipsr5900): Delete unused static array. * msp430-dis.c (msp430_singleoperand): Likewise. (msp430_doubleoperand): Likewise. (print_insn_msp430): Likewise. * nds32-asm.c (parse_operand): Likewise. * sh-opc.h (MASK): Likewise. * v850-dis.c (get_operand_value): Likewise. --- ld/emultempl/elf32.em | 7 ++++++- ld/emultempl/pe.em | 4 ++-- ld/emultempl/pep.em | 4 ++-- 3 files changed, 10 insertions(+), 5 deletions(-) (limited to 'ld/emultempl') diff --git a/ld/emultempl/elf32.em b/ld/emultempl/elf32.em index b7ddca3..ea6d48c 100644 --- a/ld/emultempl/elf32.em +++ b/ld/emultempl/elf32.em @@ -1449,6 +1449,11 @@ gld${EMULATION_NAME}_append_to_separated_string (char **to, char *op_arg) } } +#if defined(__GNUC__) && GCC_VERSION < 4006 + /* Work around a GCC uninitialized warning bug fixed in GCC 4.6. */ +static struct bfd_link_hash_entry ehdr_start_empty; +#endif + /* This is called after the sections have been attached to output sections, but before any sizes or addresses have been set. */ @@ -1461,7 +1466,7 @@ gld${EMULATION_NAME}_before_allocation (void) struct elf_link_hash_entry *ehdr_start = NULL; #if defined(__GNUC__) && GCC_VERSION < 4006 /* Work around a GCC uninitialized warning bug fixed in GCC 4.6. */ - struct bfd_link_hash_entry ehdr_start_save = ehdr_start_save; + struct bfd_link_hash_entry ehdr_start_save = ehdr_start_empty; #else struct bfd_link_hash_entry ehdr_start_save; #endif diff --git a/ld/emultempl/pe.em b/ld/emultempl/pe.em index 72e2f11..04a7f5c 100644 --- a/ld/emultempl/pe.em +++ b/ld/emultempl/pe.em @@ -1312,7 +1312,7 @@ write_build_id (bfd *abfd) struct bfd_link_order *l = NULL; for (l = asec->map_head.link_order; l != NULL; l = l->next) { - if ((l->type == bfd_indirect_link_order)) + if (l->type == bfd_indirect_link_order) { if (l->u.indirect.section == t->build_id.sec) { @@ -1364,7 +1364,7 @@ write_build_id (bfd *abfd) if (bfd_seek (abfd, asec->filepos + link_order->offset, SEEK_SET) != 0) return 0; - if ((bfd_bwrite (contents, size, abfd) != size)) + if (bfd_bwrite (contents, size, abfd) != size) return 0; /* Construct the CodeView record. */ diff --git a/ld/emultempl/pep.em b/ld/emultempl/pep.em index c82e496..0b740c3 100644 --- a/ld/emultempl/pep.em +++ b/ld/emultempl/pep.em @@ -1276,7 +1276,7 @@ write_build_id (bfd *abfd) struct bfd_link_order *l = NULL; for (l = asec->map_head.link_order; l != NULL; l = l->next) { - if ((l->type == bfd_indirect_link_order)) + if (l->type == bfd_indirect_link_order) { if (l->u.indirect.section == t->build_id.sec) { @@ -1328,7 +1328,7 @@ write_build_id (bfd *abfd) if (bfd_seek (abfd, asec->filepos + link_order->offset, SEEK_SET) != 0) return 0; - if ((bfd_bwrite (contents, size, abfd) != size)) + if (bfd_bwrite (contents, size, abfd) != size) return 0; /* Construct the CodeView record. */ -- cgit v1.1