This is the mail archive of the newlib@sourceware.org mailing list for the newlib 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: linker script for V850?


Hi Torsten,

First of all, this question should be asked on the binutils mailing list (binutils@sourceware.org) since it concerns the linker and linker scripts and not the newlib mailing list since it does not concern the newlib C library. I am adding a CC to the the binutils list and I suggest that future respondents remove the CC to newlib.

Second of all, it really helps if you can provide a *small* reproducible example when you encounter a problem like this. It lets us investigate the problem on our own machines, often leading to a much speedier answer.

Also you do not mention which version of the linker you are using, nor whether you have checked to see if this problem still exists with the sources in the mainline binutils CVS repository. (It may be that there is an actual bug in the linker that you are using and that this bug has now been fixed).

So i tried to split it into two sections ".tdata_ram" and
".tdata_rom":

  .tdata_ram ALIGN (4) :
  {
        PROVIDE (__ep = .);
        *(.tbyte)
        *(.tcommon_byte)
        *(.tbss)
        *(.tcommon)
  } >ram

  .tdata_rom ALIGN (4) :
  {
        *(.tdata)
  } >ram AT>rom

In theory this looks like the right way to solve your problem.


But this also fails.  I expected this to work, as i really separate
RAM and ROM.  The error at linking is this:

v850e-unknown-elf-gcc -o hw2.elf \
        -Wl,-Map=hw2.map \
        -Wl,-Tv850.x \
        main.o vectors.o
c:\v850e\bin\..\lib\gcc\v850e-unknown-elf\3.4.6\..\..\..\..
\v850e-unknown-elf\bin\ld.exe: address 0x75ec of hw2.elf section .tdata is not within region ram

Have you tried separating the .tdata_ram and .tdata_rom sections so that the .tdata_rom section is near the beginning of the SECTIONS part of the linker script, with the other sections that are being placed into the rom memory region and the .tdata_ram section is near the end of the SECTIONS part of the script, with the other sections that are being placed into the ram memory region ?


Cheers
  Nick


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