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]

Re: arm-wince-pe-ld


Hi Rainer,

> When looking at the code, I thought that the ARM26D relocs are created
> from the ARM26 relocs when the referenced func is in the same object file.
> The ARM26D is resolved then and marked as "dead", so in pe-dll.c
> these could be ignored.

Hmm, I see your point.  Please could you try out the attached patch
(based on your original submission) and let me know if it works ?

Cheers
        Nick

2003-06-11  Rainer Keuchel  <rkeuchel@allgeier.com>

	* pe-dll.c (generate_reloc): Catch and ignore an ARM_26D
	reloc.  

Index: ld/pe-dll.c
===================================================================
RCS file: /cvs/src/src/ld/pe-dll.c,v
retrieving revision 1.57
diff -c -3 -p -r1.57 pe-dll.c
*** ld/pe-dll.c	2 Jun 2003 08:43:37 -0000	1.57
--- ld/pe-dll.c	11 Jun 2003 16:24:16 -0000
*************** generate_reloc (abfd, info)
*** 1202,1207 ****
--- 1202,1214 ----
  		      reloc_data[total_relocs].type = 5;
  		      total_relocs++;
  		      break;
+ 		    case BITS_AND_SHIFT (24, 2):
+ 		      if (relocs[i]->howto->type == 5)
+ 			/* This is an ARM_26D reloc, which is an ARM_26 reloc
+ 			   that has already been fully processed during a
+ 			   previous link stage, so ignore it here.  */
+ 			break;
+ 		      /* Fall through.  */
  		    default:
  		      /* xgettext:c-format */
  		      einfo (_("%XError: %d-bit reloc in dll\n"),
        


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