Page MenuHomeFreeBSD

Avoid .debug_str lookups.
ClosedPublic

Authored by markj on Jun 25 2019, 4:24 PM.
Tags
None
Referenced Files
F149823542: D20759.id59013.diff
Fri, Mar 27, 9:25 AM
Unknown Object (File)
Thu, Mar 26, 4:46 PM
Unknown Object (File)
Wed, Mar 25, 2:13 AM
Unknown Object (File)
Mon, Mar 23, 5:33 PM
Unknown Object (File)
Wed, Mar 18, 3:11 AM
Unknown Object (File)
Tue, Mar 17, 5:38 PM
Unknown Object (File)
Tue, Mar 17, 3:55 PM
Unknown Object (File)
Mon, Mar 9, 9:02 AM
Subscribers

Details

Summary

libdwarf caches a string table handle, use that instead. This provides
a noticeable speedup when iterating through DIEs, since we would
otherwise do a linear search of all of the DWARF sections looking for
".debug_str" using strcmp().

Diff Detail

Lint
No Lint Coverage
Unit
No Test Coverage
Build Status
Buildable 25039
Build 23753: arc lint + arc unit

Event Timeline

Presumably _dwarf_strtab_init is guaranteed to be called?

Presumably _dwarf_strtab_init is guaranteed to be called?

The only way it won't be called is if an earlier error occurs during initialization. If there is no string table, then the assertion in the removed code would fail.

This revision is now accepted and ready to land.Jun 25 2019, 7:58 PM