fix bug with loadaddr and load regions

Nathan Sidwell nathan@codesourcery.com
Tue Aug 29 14:56:00 GMT 2006


Nathan Sidwell wrote:
> Alan Modra wrote:
>> On Fri, Aug 25, 2006 at 11:52:18AM +0100, Nathan Sidwell wrote:
>>> I fell over a problem with using a load region and loadaddr, to 
>>> create a romable image.  With
>>>     .data { data_load = LOADADDR(.data); ... } >ram AT>rom
>>> I found that data_load's value became load address + execution 
>>> address, because it was interpreted as a data-relative value.  The 
>>> same problem didn't manifest with
>>>     .data : AT(EXPR) { data_load = LOADADDR(.data); ...} >ram
>>> but of course here I have to calculate EXPR myself.
>>
>> I think this has been fixed by my 2006-08-23 fold_name change.
> 
> I'm not sure that it will have been.  Your change altered the 
> !os->load_base case, but with AT> we explicitly set os->load_base to an 
> integer expression.

ah, found an earlier patch of yours that is also needed.
	2006-07-26  Alan Modra  <amodra@bigpond.net.au>

so it I think we're good.

nathan

-- 
Nathan Sidwell    ::   http://www.codesourcery.com   ::         CodeSourcery
nathan@codesourcery.com    ::     http://www.planetfall.pwp.blueyonder.co.uk



More information about the Binutils mailing list