diff options
author | Nick Clifton <nickc@redhat.com> | 2019-11-26 14:06:12 +0000 |
---|---|---|
committer | Nick Clifton <nickc@redhat.com> | 2019-11-26 14:06:12 +0000 |
commit | 239b426b11425c4bd6b36aa7fd92a01e74fd42cb (patch) | |
tree | 0e23807053464a5a1c19321a6bd37d18fe50b41b | |
parent | 42971193643cb2ec655a2b11315d425e290fe50e (diff) | |
download | fsf-binutils-gdb-239b426b11425c4bd6b36aa7fd92a01e74fd42cb.zip fsf-binutils-gdb-239b426b11425c4bd6b36aa7fd92a01e74fd42cb.tar.gz fsf-binutils-gdb-239b426b11425c4bd6b36aa7fd92a01e74fd42cb.tar.bz2 |
Fix comparison operations in SH code that trigger warning in clang.
* elf32-sh.c (sh_elf_reloc): Use a signed_vma when checking for a
negative relocated value.
* coff-sh.c (sh_reloc): Likewise.
-rw-r--r-- | bfd/ChangeLog | 6 | ||||
-rw-r--r-- | bfd/coff-sh.c | 2 | ||||
-rw-r--r-- | bfd/elf32-sh.c | 2 |
3 files changed, 8 insertions, 2 deletions
diff --git a/bfd/ChangeLog b/bfd/ChangeLog index 9789016..515a127 100644 --- a/bfd/ChangeLog +++ b/bfd/ChangeLog @@ -1,3 +1,9 @@ +2019-11-26 Nick Clifton <nickc@redhat.com> + + * elf32-sh.c (sh_elf_reloc): Use a signed_vma when checking for a + negative relocated value. + * coff-sh.c (sh_reloc): Likewise. + 2019-11-25 Alan Modra <amodra@gmail.com> * archures.c (bfd_octets_per_byte): Tail call diff --git a/bfd/coff-sh.c b/bfd/coff-sh.c index 4b6b0de..1077a20 100644 --- a/bfd/coff-sh.c +++ b/bfd/coff-sh.c @@ -632,7 +632,7 @@ sh_reloc (bfd * abfd, sym_value -= 0x1000; insn = (insn & 0xf000) | (sym_value & 0xfff); bfd_put_16 (abfd, (bfd_vma) insn, hit_data); - if (sym_value < (bfd_vma) -0x1000 || sym_value >= 0x1000) + if ((bfd_signed_vma) sym_value < -0x1000 || sym_value >= 0x1000) return bfd_reloc_overflow; break; default: diff --git a/bfd/elf32-sh.c b/bfd/elf32-sh.c index 8aa49b0..863e2e1 100644 --- a/bfd/elf32-sh.c +++ b/bfd/elf32-sh.c @@ -288,7 +288,7 @@ sh_elf_reloc (bfd *abfd, arelent *reloc_entry, asymbol *symbol_in, sym_value -= 0x1000; insn = (insn & 0xf000) | (sym_value & 0xfff); bfd_put_16 (abfd, (bfd_vma) insn, hit_data); - if (sym_value < (bfd_vma) -0x1000 || sym_value >= 0x1000) + if ((bfd_signed_vma) sym_value < -0x1000 || sym_value >= 0x1000) return bfd_reloc_overflow; break; default: |