This is the mail archive of the binutils@sources.redhat.com mailing list for the binutils project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

frv: R_FRV_LABEL16 is signed


We fail to detect overflow if a branch target happens to be from
0x8000u to 0xffffu bytes away from the branch instruction.  This patch
fixes the bug.  I'm checking it in as obvious.

Index: bfd/ChangeLog
from  Alexandre Oliva  <aoliva@redhat.com>

	* elf32-frv.c (elf32_frv_howto_table) <R_FRV_LABEL16>: Set
	complain_on_overflow to signed.

Index: bfd/elf32-frv.c
===================================================================
RCS file: /cvs/src/src/bfd/elf32-frv.c,v
retrieving revision 1.13
diff -u -p -r1.13 elf32-frv.c
--- bfd/elf32-frv.c 24 Feb 2004 16:39:01 -0000 1.13
+++ bfd/elf32-frv.c 28 Feb 2004 00:26:05 -0000
@@ -117,7 +117,7 @@ static reloc_howto_type elf32_frv_howto_
 	 16,			/* bitsize */
 	 TRUE,			/* pc_relative */
 	 0,			/* bitpos */
-	 complain_overflow_bitfield, /* complain_on_overflow */
+	 complain_overflow_signed, /* complain_on_overflow */
 	 bfd_elf_generic_reloc,	/* special_function */
 	 "R_FRV_LABEL16",	/* name */
 	 FALSE,			/* partial_inplace */
-- 
Alexandre Oliva   Enjoy Guarana', see http://www.ic.unicamp.br/~oliva/
Happy GNU Year!                     oliva@{lsd.ic.unicamp.br, gnu.org}
Red Hat GCC Developer                 aoliva@{redhat.com, gcc.gnu.org}
Free Software Evangelist                Professional serial bug killer

Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]