[RFC][gdb/symtab] Lazy expansion of full symbol table

Tom Tromey tom@tromey.com
Fri Jun 18 02:30:58 GMT 2021


Tom> I did an overnight build and test with the updated branch (5bc56d745fd)
Tom> and ran into some trouble.  The first internal-error I investigated
Tom> happens when parsing the libstdc++ .debug package (so, it was not
Tom> specific to the test-case).  It seems the branch has some trouble with
Tom> the dwz layout where an abbrev entry is shared between different CUs:

Thank you for trying this, it uncovered several bugs.
As you can see I haven't gotten to the dwz testing yet... one of the
issues with DWARF, btw, is that there are just so many modes.
I.e., I haven't tried DWO or .debug_types yet either.

I pushed some patches to fix the crashes but the result is so fast that
I suspect it is incorrect:

    (gdb) file libstdc++.so.6.0.28-10.2.1+git583-lp152.4.1.x86_64.debug 
    2021-06-17 20:25:34.361 - command started
    Reading symbols from libstdc++.so.6.0.28-10.2.1+git583-lp152.4.1.x86_64.debug...
    2021-06-17 20:25:34.406 - command finished
    Command execution time: 0.075291 (cpu), 0.045521 (wall)

(Though /bin/gdb is also pretty fast here, maybe I'm doing something
else wrong.)

So, at least it doesn't crash, but more investigation is needed.
I'll probably add some code to make it easy to dump the index so it's
easier to see what the scanner recorded.

Tom


More information about the Gdb-patches mailing list