This is the mail archive of the
binutils@sources.redhat.com
mailing list for the binutils project.
Re: arm-wince-pe support resurrection
- From: Nick Clifton <nickc at redhat dot com>
- To: <Dmitry dot Semyonov at oktet dot ru>
- Cc: <binutils at sources dot redhat dot com>
- Date: Tue, 16 Dec 2003 16:59:32 +0000
- Subject: Re: arm-wince-pe support resurrection
- References: <Pine.LNX.4.33.0312151828150.21273-100000@mail.oktet.ru>
Hi Dmitry,
> Note that my hack with pc adjustment, and the switched off one apply
> to mutually exclusive cases (based on the info->relocatable field).
True - I had not spotted that.
> As I understand, in my case, the relocation is resolved during
> creation of object files with GNU as. So the code is not further
> affected by WinCE tools.
Ok - that makes sense. But now I have just noticed another bit of
your patch that I think might be a bigger problem:
--- binutils-031118/bfd/reloc.c Sun Nov 23 21:33:24 2003
*************** _bfd_final_link_relocate (reloc_howto_ty
*** 1353,1358 ****
--- 1353,1361 ----
if (address > input_section->_raw_size)
return bfd_reloc_outofrange;
+ if (!howto->partial_inplace)
+ return bfd_reloc_ok; /* Do not modify "inplace" data, if not requested. */
+
This looks wrong to me. First of all you are modifying a generic
routine which is used by all ports, not just the arm-wince-pe, so any
change has to be reviewed carefully.
Secondly this patch appears to be preventing _bfd_final_link_relocate
from performing any relocation for which partial_inplace is FALSE.
This would include all ELF ports which use RELA relocations, which
cannot be right.
What was the purpose of this part of the patch ? Were you trying to
stop the ARM_26D reloc from being processed any further ? If so then
it would probably be easier to change a different field, eg the
bitsize.
Cheers
Nick