Replace solib_global_lookup with gdbarch_iterate_over_objfiles_in_search_order
authorChristian Biesinger <cbiesinger@google.com>
Thu, 1 Aug 2019 16:53:03 +0000 (11:53 -0500)
committerChristian Biesinger <cbiesinger@google.com>
Sat, 21 Sep 2019 02:09:15 +0000 (21:09 -0500)
commit626ca2c06f7b5a5441d512ce334bb2daf5587259
tree723e3e58dfe155b25bd9cdab2830aee1ee976381
parent40c9c8deb94be6576f5729172dce117cbe155856
Replace solib_global_lookup with gdbarch_iterate_over_objfiles_in_search_order

All implementations of either function use it for the same purpose (except
Darwin, which is a no-op): to prefer a symbol in the current objfile over
symbols with the same name in other objfiles. There does not seem to be a
reason to have both mechanisms for that purpose.

gdb/ChangeLog:

2019-09-20  Christian Biesinger  <cbiesinger@google.com>

* solib-darwin.c (darwin_lookup_lib_symbol): Remove.
(_initialize_darwin_solib): Don't set
darwin_so_ops.lookup_lib_global_symbol.
* solib-svr4.c (set_solib_svr4_fetch_link_map_offsets): Call
set_gdbarch_iterate_over_objfiles_in_search_order.
(elf_lookup_lib_symbol): Rename to...
(svr4_iterate_over_objfiles_in_search_order): this, and update
to iterate semantics.
(_initialize_svr4_solib): Don't set lookup_lib_global_symbol.
* solib.c (solib_global_lookup): Remove.
* solist.h (struct target_so_ops): Remove lookup_lib_global_symbol.
(solib_global_lookup): Remove.
* symtab.c (lookup_global_or_static_symbol): Remove call to
solib_global_lookup.
gdb/ChangeLog
gdb/solib-darwin.c
gdb/solib-svr4.c
gdb/solib.c
gdb/solist.h
gdb/symtab.c