This is the mail archive of the
binutils@sourceware.org
mailing list for the binutils project.
No error for Linker Section Overlapping
- From: "Deepen Mantri" <Deepen dot Mantri at kpitcummins dot com>
- To: <binutils at sources dot redhat dot com>
- Cc: "Deepen Mantri" <Deepen dot Mantri at kpitcummins dot com>
- Date: Thu, 12 Apr 2007 18:51:26 +0530
- Subject: No error for Linker Section Overlapping
Hi,
Following is my observation regarding the modified LMA assignment done
in the
binutils 2.17:
Now whenever the VMAs of sections overlap, it is assumed that
these are overlay sections. Different LMAs are assigned to them instead
of
reporting any section overlapping error as done in previous versions of
binutils.
Following are the relevant lines from my linker script.The size of
".data"
section is 0x334 bytes which is observed from the map file. So VMAs of
".data"
and ".bss" sections are overlapping.
////////////////////////////////////////////////////////////////////////
/////
.data 0x00FFFA10 : AT (_mdata)
{
_data = .;
*(.data)
*(.data.*)
_edata = .;
}
.gcc_exc :
{
*(.gcc_exc)
}
.bss 0x00FFFA20 :
{
_bss = .;
*(.bss)
*(COMMON)
_ebss = .;
_end = .;
}
////////////////////////////////////////////////////////////////////////
//////
The VMA overlapping error should have been generated.
Instead, ".bss" section which is a nonloadable section, is assigned a
LMA
under the same assumption that ".data" and ".bss" are overlay sections.
(LMA of .bss section) = (LMA of .data section) + (size of .data
section).
Following lines from the generated map file exhibits the same.
////////////////////////////////////////////////////////////////////////
/////
.data 0x00fffa10 0x334 load address 0x000007ba
0x00fffa10 _data = .
. . .
. . .
. . .
*(.data.*) 0x00fffd44 _edata = .
.gcc_exc
*(.gcc_exc)
.bss 0x00fffa20 0x6 load address 0x00000aee
0x00fffa20 _bss = .
. . .
. . .
. . .
////////////////////////////////////////////////////////////////////////
/////
What is the benefit of assigning distinct LMAs to the non-overlay
sections
having overlapped VMAs?
Is there any way to generate an overlapping error for
non-overlay/non-loadable
sections (such as .bss section),if there VMAs get overlapped?
Regards,
Deepen Mantri
KPIT Cummins InfoSystems Ltd.
Pune, India
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Free download of GNU based tool-chains for Renesas' SH, H8, R8C, M16C
and M32C Series. The following site also offers free technical support
to its users. Visit http://www.kpitgnutools.com for details.
Latest versions of KPIT GNU tools were released on February 6, 2007.
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~