This is the mail archive of the
mailing list for the binutils project.
Re: Global array is at an offset from the top of the bss section, instead of being at the top
- From: Nagaraju Mekala <gnuuser dot raj at gmail dot com>
- To: Senthil Kumar Selvaraj <senthil_kumar dot selvaraj at atmel dot com>
- Cc: binutils at sourceware dot org
- Date: Mon, 23 Jun 2014 11:17:02 +0530
- Subject: Re: Global array is at an offset from the top of the bss section, instead of being at the top
- Authentication-results: sourceware.org; auth=none
- References: <CAKuVEhDa_iynMk1POSxTFw=BRcXnE-iyoaZNhgFDBEDpV3fBCg at mail dot gmail dot com> <20140620062155 dot GA978 at atmel dot com>
Thanks for the reply.
On Fri, Jun 20, 2014 at 11:51 AM, Senthil Kumar Selvaraj
> On Fri, Jun 20, 2014 at 11:20:49AM +0530, Nagaraju Mekala wrote:
>> I want to understand why few bytes are reserved in start of the bss section
>> I have an array defined on top of the source code as follow:
>> static int DestinationAddress[BUF_SIZE] ;
>> My expectation is the linker will put it on top of the .bss section.
>> However I notice there are always 28 bytes sitting in front of
>> DestinationAddress no matter what I do.
>> ffff0000 l .bss 00000000 completed.8489
>> ffff0004 l .bss 00000000 object.8494
>> ffff001c l O .bss 00007000 DestinationAddress
>> I was hoping the linker puts DestinationAddress at 0xffff0000. It is
>> not clear to me what these items (completed.8489, object.8494) are.
>> Can anyone please throw some light on it.
> Unless the linker itself put those two items, it must have come from
> some object file (and eventually some source file).
> If you link with -Wl,-Map=<some map filename>, the generated file will
> tell you which object file the two items came from. You can then go back
> to which source file from which the object file was generated.
> Hope that helps.
I got the required info. These 28 bytes are from crt files.
Thanks a lot,