Re: [RFC v1 0/8] x86/init: Linux linker tables

From: Luis R. Rodriguez
Date: Thu Jan 21 2016 - 15:34:09 EST


On Thu, Jan 21, 2016 at 12:19 PM, H. Peter Anvin <hpa@xxxxxxxxx> wrote:
> On 12/17/15 20:40, H. Peter Anvin wrote:
>>>
>>> const struct
>>> foo__attribute__((used,section(".rodata.tbl.tablename.0"))) tablename[0];
>>>
>>> const struct
>>> foo__attribute__((used,section(".rodata.tbl.tablename.999")))
>>> tablename__end[0];
>>>
>
> (Over)thinking about this some more, I suggest using the empty string
> for the start and "~" for the end. And, yes, I did check that ~ works
> as part of a section name.

Sure, do we know if that ICC compatible? Do we care? There are a
series of ICC hacks put in place on ipxe's original solution which
I've folded in, it seems that works but if we care about ICC those
folks should perhaps help review as well.

> Something that confuses me is that gcc seems to give these sections the
> "aw" attributes which makes as complain. This might be a gcc bug.
> Worst case we have to use an assembly statement to create these
> sections; it isn't a big deal and shouldn't make it any more
> architecture-specific.

OK!

Luis