From c675ec1e76bc6cbf47031cd89dda9d9a3ce4993c Mon Sep 17 00:00:00 2001 From: Nick Clifton Date: Tue, 11 Feb 2020 12:38:41 +0000 Subject: [PATCH] Fix building the bfd/elf32-msp430.c file on a 32-bit host. * elf32-msp430.c (msp430_final_link_relocate): Always use longs for addresses in print statements. (msp430_elf_relax_delete_bytes): Likewise. (msp430_elf_relax_add_words): Likewise. (msp430_elf_relax_section): Likewise. --- bfd/ChangeLog | 8 ++++++++ bfd/elf32-msp430.c | 46 ++++++++++++++++++++++++++-------------------- 2 files changed, 34 insertions(+), 20 deletions(-) diff --git a/bfd/ChangeLog b/bfd/ChangeLog index 57b1959ee29..52360a7020b 100644 --- a/bfd/ChangeLog +++ b/bfd/ChangeLog @@ -1,3 +1,11 @@ +2020-02-11 Nick Clifton + + * elf32-msp430.c (msp430_final_link_relocate): Always use longs + for addresses in print statements. + (msp430_elf_relax_delete_bytes): Likewise. + (msp430_elf_relax_add_words): Likewise. + (msp430_elf_relax_section): Likewise. + 2020-02-11 H.J. Lu * plugin.c (add_symbols): Clear plugin_data memory. diff --git a/bfd/elf32-msp430.c b/bfd/elf32-msp430.c index 4d68d40f679..784c32ed02d 100644 --- a/bfd/elf32-msp430.c +++ b/bfd/elf32-msp430.c @@ -746,8 +746,8 @@ msp430_final_link_relocate (reloc_howto_type * howto, if (debug_relocs) printf ("writing relocation (%p) at 0x%lx type: %d\n", rel, - input_section->output_section->vma + input_section->output_offset - + rel->r_offset, howto->type); + (long) (input_section->output_section->vma + input_section->output_offset + + rel->r_offset), howto->type); if (sym_diff_section != NULL) { BFD_ASSERT (sym_diff_section == input_section); @@ -1671,7 +1671,7 @@ msp430_elf_relax_delete_bytes (bfd * abfd, asection * sec, bfd_vma addr, toaddr = sec->size; if (debug_relocs) printf (" deleting %d bytes between 0x%lx to 0x%lx\n", - count, addr, toaddr); + count, (long) addr, (long) toaddr); irel = elf_section_data (sec)->relocs; irelend = irel + sec->reloc_count; @@ -1721,13 +1721,13 @@ msp430_elf_relax_delete_bytes (bfd * abfd, asection * sec, bfd_vma addr, { if (debug_relocs) printf (" adjusting value of local symbol %s from 0x%lx ", - name, isym->st_value); + name, (long) isym->st_value); if (isym->st_value < addr + count) isym->st_value = addr; else isym->st_value -= count; if (debug_relocs) - printf ("to 0x%lx\n", isym->st_value); + printf ("to 0x%lx\n", (long) isym->st_value); } /* Adjust the function symbol's size as well. */ else if (ELF_ST_TYPE (isym->st_info) == STT_FUNC @@ -1788,7 +1788,7 @@ msp430_elf_relax_add_words (bfd * abfd, asection * sec, bfd_vma addr, asection *p; if (debug_relocs) printf (" adding %d words at 0x%lx\n", num_words, - sec->output_section->vma + sec->output_offset + addr); + (long) (sec->output_section->vma + sec->output_offset + addr)); contents = elf_section_data (sec)->this_hdr.contents; sec_end = sec->size; @@ -1832,7 +1832,7 @@ msp430_elf_relax_add_words (bfd * abfd, asection * sec, bfd_vma addr, printf (" adjusting value of local symbol %s from 0x%lx to " "0x%lx\n", bfd_elf_string_from_elf_section (abfd, symtab_hdr->sh_link, isym->st_name), - isym->st_value, isym->st_value + num_bytes); + (long) isym->st_value, (long)(isym->st_value + num_bytes)); isym->st_value += num_bytes; } @@ -1881,7 +1881,7 @@ msp430_elf_relax_section (bfd * abfd, asection * sec, if (debug_relocs) printf ("Relaxing %s (%p), output_offset: 0x%lx sec size: 0x%lx\n", - sec->name, sec, sec->output_offset, sec->size); + sec->name, sec, (long) sec->output_offset, (long) sec->size); symtab_hdr = & elf_tdata (abfd)->symtab_hdr; @@ -1955,11 +1955,12 @@ msp430_elf_relax_section (bfd * abfd, asection * sec, if (debug_relocs) printf (" processing reloc at 0x%lx for local sym: %s " - "st_value: 0x%lx adj value: 0x%lx\n", sec->output_offset - + sec->output_section->vma + irel->r_offset, + "st_value: 0x%lx adj value: 0x%lx\n", + (long) (sec->output_offset + sec->output_section->vma + + irel->r_offset), bfd_elf_string_from_elf_section (abfd, symtab_hdr->sh_link, isym->st_name), - isym->st_value, symval); + (long) isym->st_value, (long) symval); } else { @@ -1983,9 +1984,11 @@ msp430_elf_relax_section (bfd * abfd, asection * sec, + h->root.u.def.section->output_offset); if (debug_relocs) printf (" processing reloc at 0x%lx for global sym: %s " - "st_value: 0x%lx adj value: 0x%lx\n", sec->output_offset - + sec->output_section->vma + irel->r_offset, - h->root.root.string, h->root.u.def.value, symval); + "st_value: 0x%lx adj value: 0x%lx\n", + (long) (sec->output_offset + sec->output_section->vma + + irel->r_offset), + h->root.root.string, (long) h->root.u.def.value, + (long) symval); } /* For simplicity of coding, we are going to modify the section @@ -2176,11 +2179,12 @@ msp430_elf_relax_section (bfd * abfd, asection * sec, if (debug_relocs) printf (" processing reloc at 0x%lx for local sym: %s " - "st_value: 0x%lx adj value: 0x%lx\n", sec->output_offset - + sec->output_section->vma + irel->r_offset, + "st_value: 0x%lx adj value: 0x%lx\n", + (long) (sec->output_offset + sec->output_section->vma + + irel->r_offset), bfd_elf_string_from_elf_section (abfd, symtab_hdr->sh_link, isym->st_name), - isym->st_value, symval); + (long) isym->st_value, (long) symval); } else { @@ -2204,9 +2208,11 @@ msp430_elf_relax_section (bfd * abfd, asection * sec, + h->root.u.def.section->output_offset); if (debug_relocs) printf (" processing reloc at 0x%lx for global sym: %s " - "st_value: 0x%lx adj value: 0x%lx\n", sec->output_offset - + sec->output_section->vma + irel->r_offset, - h->root.root.string, h->root.u.def.value, symval); + "st_value: 0x%lx adj value: 0x%lx\n", (long) + (sec->output_offset + sec->output_section->vma + + irel->r_offset), + h->root.root.string, (long) h->root.u.def.value, + (long) symval); } /* For simplicity of coding, we are going to modify the section -- 2.30.2