This is the mail archive of the
binutils@sourceware.org
mailing list for the binutils project.
Re: Section (.sdata2) being omitted but SIZEOF(.sdata2) is not zero?
- From: Alan Modra <amodra at gmail dot com>
- To: Douglas Graham <douglas dot graham at ericsson dot com>
- Cc: "binutils at sourceware dot org" <binutils at sourceware dot org>
- Date: Tue, 21 Jan 2014 18:33:19 +1030
- Subject: Re: Section (.sdata2) being omitted but SIZEOF(.sdata2) is not zero?
- Authentication-results: sourceware.org; auth=none
- References: <E36F5062C1BCFC48B8230995895548DF02C35784 at eusaamb109 dot ericsson dot se> <E36F5062C1BCFC48B8230995895548DF02C357A9 at eusaamb109 dot ericsson dot se> <20140119092749 dot GJ5390 at bubble dot grove dot modra dot org> <E36F5062C1BCFC48B8230995895548DF02C359DC at eusaamb109 dot ericsson dot se> <E36F5062C1BCFC48B8230995895548DF02C359F8 at eusaamb109 dot ericsson dot se> <20140120045856 dot GL5390 at bubble dot grove dot modra dot org> <E36F5062C1BCFC48B8230995895548DF02C36026 at eusaamb109 dot ericsson dot se>
On Tue, Jan 21, 2014 at 05:36:00AM +0000, Douglas Graham wrote:
> I think the reason that the dot used for some of the expression calculations in .sdata is seemingly incorrect (0x1c80000 instead of closer to 0x1c7a000) is that the size computed for the preceding .text output section via calls to size_input_section() uses the "unrelaxed" sizes of .eh_frame sections from various object files.
Yes, I think you've nailed it (a nice debugging effort!). We strip
sections early based on their sizes before relaxation. Your .sdata2
section is empty except for the padding, and the layout before
relaxation just happens to need no padding. After relaxation you need
padding but the section with the padding has gone. :-(
--
Alan Modra
Australia Development Lab, IBM