V850, linker script problem
Erik Christiansen
erik@dd.nec.com.au
Wed May 10 10:28:00 GMT 2006
On Tue, May 09, 2006 at 10:35:32PM +0200, Torsten Mohr wrote (much
snipped):
>
> This brings up another question, to my understanding i need to place
> .sdata and .rosdata near together, else i can't chose a __gp that is
> within +- 0x8000 of all addresses of those two sections.
> What is the preferred way to do that? At the moment i have placed
> .rosdata _into_ .sdata, i did not find a location in ROM that is
> near enough to .sdata . But this can't be the preferred way,
> as .rosdata should be in ROM to my understanding.
Are you basing your work on any of the linker scripts that the v850e-gcc
build process ought to have squirrelled away in the general vicinity of
/usr/local/v850e/lib/ldscripts/ ? At least v850.x shows a suitable way
to handle .rosdata .
> At the moment there's another problem with this, i'll try to track
> that down next. But setting up "insight" as a simulator for v850 did
> not work...
Sorry I can't advise there. Having had the luxury of a real ICE, I
haven't tried gdb or similar.
> Regarding objdump -h: i took these informations from the linker map
> file, it shows basically the same info (it shows if there is a
> different load address).
The only reason for suggesting objdump is that it immediately shows how
the sections chain through memory, and one starting at a wrong address
often has a cause in its predecessor. YMMV
> Also, i tried readelf -S on the single object files to track the
> problem with .sdata and .tdata down. They are not contained in any of
> the object files.
Ah well, if no clues are being shaken loose, then perhaps you're right;
it's time to be satisfied that you have it working. :-)
Erik
More information about the Binutils
mailing list