This is the mail archive of the binutils@sourceware.org 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]

[PATCH, AVR] Allow avr25 to wraparound for the R_AVR_13_PCREL reloc


Hi,

It seems there is an error with the R_AVR_13_PCREL reloc. The current code allows the avr2 and avr4 architectures to wrap around. But it seems the avr25 architecture was not added to this list when the architecture was created. The avr25 is the same as the avr2 plus two additional instructions. The patch below fixes this.

I need permission from a maintainer to commit. Tristan, I'd also like permission to commit this to the 2.19 branch.

Thanks,
Eric Weddington


--- bfd/elf32-avr.c.old	2009-01-30 14:41:41.012833400 -0700
+++ bfd/elf32-avr.c	2009-01-30 14:43:19.721643700 -0700
@@ -854,10 +854,11 @@ avr_final_link_relocate (reloc_howto_typ
 	{
           /* Relative distance is too large.  */
 
-	  /* Always apply WRAPAROUND for avr2 and avr4.  */
+	  /* Always apply WRAPAROUND for avr2, avr25, and avr4.  */
 	  switch (bfd_get_mach (input_bfd))
 	    {
 	    case bfd_mach_avr2:
+	    case bfd_mach_avr25:
 	    case bfd_mach_avr4:
 	      break;
 


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