gdb: Try searching for auto-load script using .gnu_debuglink
authorAaron Merey <amerey@redhat.com>
Tue, 8 Mar 2022 22:32:35 +0000 (17:32 -0500)
committerAaron Merey <amerey@redhat.com>
Wed, 9 Mar 2022 01:39:05 +0000 (20:39 -0500)
commit2e79bbf1e2a546a0686c61a1432d2c1afc24efce
tree2fc3a156d1fd5e8b72b9846d6160be448ef63f2a
parent2c5e3cf816be8d3b76b59069aa84606f7c706970
gdb: Try searching for auto-load script using .gnu_debuglink

If an auto-load script cannot be found and objfile is a separate
debuginfo whose filename does not match the name found in the parent
file's .gnu_debuglink section, then repeat the search using the
parent's filename where the last component is replaced with the
.gnu_debuglink name.

For example if the parent's filename is "/usr/lib/libxyz.so" and the
name in its .gnu_debuglink section is "libxyz.so.debug", then
if no auto-load script is otherwise found the search will be
repeated with the filename "/usr/lib/libxyz.so.debug".

This helps gdb locate auto-load scripts when debuginfo files do not have
the expected filename, such as when they are aquired from debuginfod.
gdb/auto-load.c