[PATCH 3/3] lib + libdw: Add and use a concurrent version of the dynamic-size hash table.
Mon Oct 28 20:12:00 GMT 2019
On Sun, 2019-10-27 at 17:13 +0100, Mark Wielaard wrote:
> On Fri, 2019-10-25 at 23:11 -0500, Jonathon Anderson wrote:
> > A quick grep -r shows that ITERATE and REVERSE are used for the
> > asm_symbol_tab. If iteration and insertion are not concurrent we can
> > easily add bidirectional iteration (using the same Treiber stack-like
> > structure as used for the memory management). Also COMPARE is not
> > defined to be (0) in this instance.
> Yes. We would need some other solution for the libasm code. But I think
> we can use the concurrent table for everything in libdw.
And everything in libdw besides the abbrev hash is the sig8 hash.
And adopting the concurrent dynamic size hash for that is almost
trivial. See attached.
I only tested it lightly because I don't have any large projects build
with -fdebug-types-dection. But it seems to work as intended.
-------------- next part --------------
A non-text attachment was scrubbed...
Size: 2662 bytes
Desc: not available
More information about the Elfutils-devel