diff options
author | H.J. Lu <hjl.tools@gmail.com> | 2018-03-05 03:44:46 -0800 |
---|---|---|
committer | H.J. Lu <hjl.tools@gmail.com> | 2018-03-05 03:45:03 -0800 |
commit | 0e70b27ba900581df8e23cbbd4612176f869d796 (patch) | |
tree | 173a562711a6b01e802b7713eaa4c29700f09f0d /gdb/python/py-varobj.c | |
parent | 3dea1ef72c646d808e5b287e98253f3b8670c450 (diff) | |
download | gdb-0e70b27ba900581df8e23cbbd4612176f869d796.zip gdb-0e70b27ba900581df8e23cbbd4612176f869d796.tar.gz gdb-0e70b27ba900581df8e23cbbd4612176f869d796.tar.bz2 |
Use binary search on dynamic relocations
Replace linear search with binary search on dynamic relocations. After
finding a match, scan backward to the first matching relocation, then
scan forward for a matching relocation with non-absolute symbol.
On Fedora 27 x86-64, time for "objdump -d" on libxul.so from RHEL 7.4
x86-64 went from
134.46user 0.12system 2:15.03elapsed
to
8.49user 0.14system 0:08.64elapsed
PR binutils/22911
* objdump.c (is_significant_symbol_name): Return TRUE for all
.plt* sections.
(find_symbol_for_address): Replace linear search with binary
search on dynamic relocations.
Diffstat (limited to 'gdb/python/py-varobj.c')
0 files changed, 0 insertions, 0 deletions