From 32e79d39201271dec352310d597dff430109c8cb Mon Sep 17 00:00:00 2001 From: DJ Delorie Date: Tue, 26 Aug 2014 14:03:29 -0400 Subject: [PATCH] Disambiguate test for relaxation type. * elf32-rl78.c (rl78_elf_relax_section): Disambiguate test for relaxation type. --- bfd/ChangeLog | 5 +++++ bfd/elf32-rl78.c | 4 ++-- 2 files changed, 7 insertions(+), 2 deletions(-) diff --git a/bfd/ChangeLog b/bfd/ChangeLog index d94f590..9635195 100644 --- a/bfd/ChangeLog +++ b/bfd/ChangeLog @@ -1,3 +1,8 @@ +2014-08-26 DJ Delorie + + * elf32-rl78.c (rl78_elf_relax_section): Disambiguate test for + relaxation type. + 2014-08-26 Jiong Wang * elfnn-aarch64.c (elfNN_aarch64_check_relocs): Initialize non_got_ref diff --git a/bfd/elf32-rl78.c b/bfd/elf32-rl78.c index 9124e0a..2a5ec99 100644 --- a/bfd/elf32-rl78.c +++ b/bfd/elf32-rl78.c @@ -2199,7 +2199,7 @@ rl78_elf_relax_section 61 F3 EF ad SKNH ; BR $rel8 */ - if (irel->r_addend & RL78_RELAXA_BRA) + if ((irel->r_addend & RL78_RELAXA_MASK) == RL78_RELAXA_BRA) { /* SKIP opcodes that skip non-branches will have a relax tag but no corresponding symbol to relax against; we just @@ -2334,7 +2334,7 @@ rl78_elf_relax_section } - if (irel->r_addend & RL78_RELAXA_ADDR16) + if ((irel->r_addend & RL78_RELAXA_MASK) == RL78_RELAXA_ADDR16) { /*----------------------------------------------------------------------*/ /* Some insns have both a 16-bit address operand and an 8-bit -- 2.7.4