From 8de3a6e2afe21ac93d610fa46fbc579a81ea2277 Mon Sep 17 00:00:00 2001 From: Nick Clifton Date: Thu, 8 Feb 2018 12:29:07 +0000 Subject: [PATCH] Speed up readelf and objdump by not looking for DWO links unless the user has requested that they be displayed/followed. PR 22802 * dwarf.c (load_separate_debug_file): Return early if the user is not interested in debug links. --- binutils/ChangeLog | 6 ++++++ binutils/dwarf.c | 6 ++++++ 2 files changed, 12 insertions(+) diff --git a/binutils/ChangeLog b/binutils/ChangeLog index 1e7e581..5fe9d97 100644 --- a/binutils/ChangeLog +++ b/binutils/ChangeLog @@ -1,3 +1,9 @@ +2018-02-08 Nick Clifton + + PR 22802 + * dwarf.c (load_separate_debug_file): Return early if the user is + not interested in debug links. + 2018-02-06 Nick Clifton PR 22793 diff --git a/binutils/dwarf.c b/binutils/dwarf.c index 71fdf39..6aca9b7 100644 --- a/binutils/dwarf.c +++ b/binutils/dwarf.c @@ -9876,6 +9876,10 @@ load_dwo_file (const char * main_filename) void * load_separate_debug_file (void * file, const char * filename) { + /* Skip this operation if we are not interested in debug links. */ + if (! do_follow_links && ! do_debug_links) + return NULL; + /* See if there is a dwo link. */ if (load_debug_section (str, file) && load_debug_section (abbrev, file) @@ -9910,6 +9914,8 @@ load_separate_debug_file (void * file, const char * filename) } if (! do_follow_links) + /* The other debug links will be displayed by display_debug_links() + so we do not need to do any further processing here. */ return NULL; /* FIXME: We do not check for the presence of both link sections in the same file. */ -- 2.7.4