[PATCH] Add a trie to map quickly from address range to compilation unit.
Nick Clifton
nickc@redhat.com
Wed Mar 23 14:14:31 GMT 2022
Hi Steinar,
> Add a radix-256 trie over the address space to quickly map address to
> compilation unit spaces; for content_shell, which is 1.6 GB when some
> (but not full) debug information turned is on, we go from 6 ms to
> 0.006 ms (6 µs) for each lookup from address to compilation unit, a 1000x
> speedup. There is still a slow part left in mapping to symbol name,
> but this at least gets us halfway there.
This patch appears to introduce some new failures into the various testsuites.
For example with a toolchain targeted at x86_64-pc-linux-gnu I see:
GAS REGRESSION: DWARF2 debugging information 2
GAS REGRESSION: DWARF2 debugging information 2 with SHF_COMPRESS
GAS REGRESSION: 64bit DWARF2 debugging information 2
GAS REGRESSION: 64bit DWARF2 debugging information 2 with SHF_COMPRESS
LD REGRESSION: Dump pr21978.so
BIN REGRESSION: build-id-debuglink (grepping for source file name is disassembly output)
These all appear to be due to lack of line number information. For example
the gas tests are failing because they are expecting to see a line like this:
./dw2-compress-2.c:6
But instead they are being given:
./dw2-compress-2.c:?
There are similar explanations for the other failures too.
Please could you look into this ?
Cheers
Nick
More information about the Binutils
mailing list