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]

xstormy16-elf relocs


Hi Guys,

  Another bug reported by Sanyo was that the linker was not reporting
  overflows of the R_XSTORMY16_8 and R_XSTORMY16_16 relocs.  I have
  fixed this by applying the patch below.

Cheers
        Nick

2003-05-02  Nick Clifton  <nickc@redhat.com>

	* elf32-xstormy16.c (xstormy16_elf_howto_table): Make the
	R_XSTORMY16_8 and R_XSTORMY16_16 relocs detect and complain about
	unsigned overflow.

Index: bfd/elf32-xstormy16.c
===================================================================
RCS file: /cvs/src/src/bfd/elf32-xstormy16.c,v
retrieving revision 1.17
diff -c -3 -p -w -r1.17 elf32-xstormy16.c
*** bfd/elf32-xstormy16.c	21 Mar 2003 19:49:11 -0000	1.17
--- bfd/elf32-xstormy16.c	2 May 2003 14:34:36 -0000
*************** static reloc_howto_type xstormy16_elf_ho
*** 96,107 ****
  	 16,			/* bitsize */
  	 FALSE,			/* pc_relative */
  	 0,			/* bitpos */
! 	 complain_overflow_bitfield, /* complain_on_overflow */
  	 bfd_elf_generic_reloc,	/* special_function */
  	 "R_XSTORMY16_16",	/* name */
  	 FALSE,			/* partial_inplace */
  	 0,			/* src_mask */
! 	 0xffffffff,		/* dst_mask */
  	 FALSE),		/* pcrel_offset */
  
    /* An 8 bit absolute relocation.  */
--- 96,107 ----
  	 16,			/* bitsize */
  	 FALSE,			/* pc_relative */
  	 0,			/* bitpos */
! 	 complain_overflow_unsigned, /* complain_on_overflow */
  	 bfd_elf_generic_reloc,	/* special_function */
  	 "R_XSTORMY16_16",	/* name */
  	 FALSE,			/* partial_inplace */
  	 0,			/* src_mask */
! 	 0xffff,		/* dst_mask */
  	 FALSE),		/* pcrel_offset */
  
    /* An 8 bit absolute relocation.  */
*************** static reloc_howto_type xstormy16_elf_ho
*** 111,122 ****
  	 8,			/* bitsize */
  	 FALSE,			/* pc_relative */
  	 0,			/* bitpos */
! 	 complain_overflow_bitfield, /* complain_on_overflow */
  	 bfd_elf_generic_reloc,	/* special_function */
  	 "R_XSTORMY16_8",	/* name */
  	 FALSE,			/* partial_inplace */
  	 0,			/* src_mask */
! 	 0xffffffff,		/* dst_mask */
  	 FALSE),		/* pcrel_offset */
  
    /* A 32 bit pc-relative relocation.  */
--- 111,122 ----
  	 8,			/* bitsize */
  	 FALSE,			/* pc_relative */
  	 0,			/* bitpos */
! 	 complain_overflow_unsigned, /* complain_on_overflow */
  	 bfd_elf_generic_reloc,	/* special_function */
  	 "R_XSTORMY16_8",	/* name */
  	 FALSE,			/* partial_inplace */
  	 0,			/* src_mask */
! 	 0xff,			/* dst_mask */
  	 FALSE),		/* pcrel_offset */
  
    /* A 32 bit pc-relative relocation.  */


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