RFC: Generating per-function DWARF line number sections
Alan Modra
amodra@gmail.com
Fri Apr 26 12:18:00 GMT 2013
On Fri, Apr 26, 2013 at 09:04:03AM +0100, nick clifton wrote:
> Hi Alan,
> >Is it worth supporting the old style of grouping by name?
>
> Umm, I am not quite sure what you mean here. Can you provide an example ?
.text.foo, .rodata.foo, .data.foo etc.
vs.
group foo
.text
.rodata
.data
> > Why not just support ELF section groups?
>
> This is the long term solution. It is a more invasive change
> however - requiring the cooperation of gcc as well as gas and ld.
> But, free time willing, this is the way that I intend to go.
OK.
> > Using names leads to eg. your
> >_bfd_elf_gc_mark_extra_sections change which is quadratic in number of
> >sections..
>
> Right - the current patch is not ideal, and I did consider
> constructing lists instead of the quadratic scan. But that is more
> complex, and I wanted to keep things simple for this first iteration
> of the patch, If it turns out that this scan is significant slow
> down for the linker then I can always come back and recode the loop
> later.
>
>
> >Also, why do this in gas? It seems to me that this sort of change
> >belongs in gcc.
>
> Because the .debug_line section for most ELF-based targets is now
> constructed by gas not gcc. Gcc emits .loc directives and gas
> converts them into .debug_line entries.
Ah, yes, fair enough. When you start looking at other debug sections
and .eh_frame I think you'll run into reloc problems, subtraction of
two symbols in different sections and suchlike. At least that's what
I recall from looking at this idea a number of years ago.
--
Alan Modra
Australia Development Lab, IBM
More information about the Binutils
mailing list