Binutils on arm : pls advice me how to proceed

Pedro Alves pedro_alves@portugalmail.pt
Thu May 11 06:37:00 GMT 2006


Danny Backx wrote:
> I am having problems applying them to the current CVS version. Almost
> all the diffs fail to apply, I've copied an excerpt below. Am I using
> the wrong version ?
>
>   
Did you get a warning about the files not being found? If so, check that 
you are applying the patch in the correct directory,
or use the -p option. You can always --dry-run before applying the patch.

> I also tried your patch against binutils-2.16.1 - that only produced
> patch failures in one file (tc-arm.c).
>
>   
> 	Danny
>
> On Wed, 2006-05-10 at 11:48 +0100, Nick Clifton wrote:
>   
>> Hi Pedro, Hi Danny,
>>
>>    Please accept my apologies in taking so long to reply to your emails. 
>>   I have now had a chance to go over them and the patches that they 
>> contained and then seemed quite reasonable to me.  I have applied them 
>> to my local source tree and checked to see if there were any regressions 
>>   - there were not.
>>
>>    Unfortunately I do not have an arm-wince system at my disposal, so I 
>> cannot check that the (slightly revised) versions of the patches that I 
>> applied allow working binaries to be created, so please can I ask for 
>> your help ?
>>
>>    I am attaching a unified patch which I think contains all of the 
>> changes that you suggested, along with a little bit of code tidying. 
>> Please could you try applying them to a set of binutils sources (from 
>> the mainline of the CVS repository) and testing them to see if they 
>> produce working binaries ?
>>
>>    One thing I am quite worried about is whether partial linking will 
>> work.  (ie using the "ld -r ...." file to create an object file that is 
>> an amalgam of several other object files).  I suspect that there might 
>> be problems with the -8 bias to branch relocations, but without a test 
>> environment I cannot tell for sure.
>>
>>    Thanks very much for perserving with your work, and assuming that you 
>> can confirm that the patch works, I will be happy to check it in with 
>> the ChangeLogs below.
>>
>> Cheers
>>    Nick
>>
>> bfd/ChangeLog
>> 2006-05-10  Pedro Alves  <pedro_alves@portugalmail.pt>
>>
>> 	* coff-arm.c (ARM_26D, ARM_32, ARM_RVA_32, ARM_SECTION,
>>          ARM_SECREL): Mark WinCE versions of these relocs as partial
>> 	inplace.
>> 	(coff_arm_relocate_section): Adjust addend for WinCE.
>>
>> gas/ChangeLog
>> 2006-05-10  Pedro Alves  <pedro_alves@portugalmail.pt>
>>
>> 	* config/tc-arm.c (md_pcrel_from_section): Force a bias for	 	relocs 
>> against external symbols for WinCE targets.
>> 	(md_apply_fix): Likewise.
>>
>> ld/ChangeLog
>> 2006-05-10  Pedro Alves  <pedro_alves@portugalmail.pt>
>>
>> 	* pe-dll.c (autofilter_symbollist): Add Dllmain, 		
>> 	DllMainCRTStartup, _DllMainCRTStartup and .text.
>> 	(autofilter_liblist): Add libcegcc.
>> 	(autofilter_symbolprefixlist): Add __imp_ and .idata$.
>> 	(generate_reloc): Do not skip sections without a SEC_LOAD flag, 	
>> 	they can still contain relocs that need processing.
>> 	Skip the .idata$6 section.
>> 	(jmp_arm_bytes): New array: Contains byte codes for an ARM jump.
>> 	(make_one): Use the new array.
>> 	(make_import_fixup_entry): Use .idata$2 instead of .idata$3.
>> 	* emultempl/pe.em (MajorSubsystemVersion): Set to 3 for armpe.
>>
>>
>>     



More information about the Binutils mailing list