Re: [patch] Discontiguous PSYMTABs [Re: [patch] Parse DW_AT_ranges into PSYMTABS (for childless CU, for vDSO32)]

Daniel Jacobowitz
2007-12-17T01:02:36Z

On Sun, Dec 16, 2007 at 07:56:41PM -0500, Daniel Jacobowitz wrote:
> On Sun, Dec 09, 2007 at 09:31:38PM +0100, Jan Kratochvil wrote:
> > Attaching the fix for discontiguous psymtabs based on the addrmap framework.
> >
> > This one is a conservative one - it tries to just fix it with minimal changes.
> > It is bidirectionally compatible:
> > * Producer (dwarf2read.c) still tries to set the bounds TEXTLOW and TEXTHIGH.
> > * Consumer (symtab.c) deals with both set and unset PSYMTABS_ADDRMAP.
>
> This looks OK to me. Thanks for doing it!

Oops, maybe not. I've just thought of another case where we might
have trouble. What if one file contains DW_AT_ranges and another file
only contains stabs?

If we trust the addrmap, will we still find the file with stabs? We
may need to fall through.

I'm sure there are some old versions of GCC which generated
DW_AT_high_pc / DW_AT_low_pc when they should have generated
DW_AT_ranges. Hopefully we do not need to cater to that. However,
stabs has no way to represent range information.

--
Daniel Jacobowitz
CodeSourcery