aboutsummaryrefslogtreecommitdiff
path: root/gdb/solib.c
diff options
context:
space:
mode:
Diffstat (limited to 'gdb/solib.c')
-rw-r--r--gdb/solib.c37
1 files changed, 18 insertions, 19 deletions
diff --git a/gdb/solib.c b/gdb/solib.c
index 5280e5f..a2a8a03 100644
--- a/gdb/solib.c
+++ b/gdb/solib.c
@@ -111,7 +111,7 @@ show_solib_search_path (struct ui_file *file, int from_tty,
static gdb::unique_xmalloc_ptr<char>
solib_find_1 (const char *in_pathname, int *fd, bool is_solib)
{
- const struct target_so_ops *ops = gdbarch_so_ops (target_gdbarch ());
+ const target_so_ops *ops = gdbarch_so_ops (current_inferior ()->arch ());
int found_file = -1;
gdb::unique_xmalloc_ptr<char> temp_pathname;
const char *fskind = effective_target_file_system_kind ();
@@ -384,7 +384,7 @@ gdb::unique_xmalloc_ptr<char>
solib_find (const char *in_pathname, int *fd)
{
const char *solib_symbols_extension
- = gdbarch_solib_symbols_extension (target_gdbarch ());
+ = gdbarch_solib_symbols_extension (current_inferior ()->arch ());
/* If solib_symbols_extension is set, replace the file's
extension. */
@@ -464,7 +464,7 @@ solib_bfd_open (const char *pathname)
bfd_get_filename (abfd.get ()), bfd_errmsg (bfd_get_error ()));
/* Check bfd arch. */
- b = gdbarch_bfd_arch_info (target_gdbarch ());
+ b = gdbarch_bfd_arch_info (current_inferior ()->arch ());
if (!b->compatible (b, bfd_get_arch_info (abfd.get ())))
error (_("`%s': Shared library architecture %s is not compatible "
"with target architecture %s."), bfd_get_filename (abfd.get ()),
@@ -539,7 +539,7 @@ get_cbfd_soname_build_id (gdb_bfd_ref_ptr abfd, const char *soname)
static int
solib_map_sections (struct so_list *so)
{
- const struct target_so_ops *ops = gdbarch_so_ops (target_gdbarch ());
+ const target_so_ops *ops = gdbarch_so_ops (current_inferior ()->arch ());
gdb::unique_xmalloc_ptr<char> filename (tilde_expand (so->so_name));
gdb_bfd_ref_ptr abfd (ops->bfd_open (filename.get ()));
@@ -633,7 +633,7 @@ solib_map_sections (struct so_list *so)
static void
clear_so (struct so_list *so)
{
- const struct target_so_ops *ops = gdbarch_so_ops (target_gdbarch ());
+ const target_so_ops *ops = gdbarch_so_ops (current_inferior ()->arch ());
delete so->sections;
so->sections = NULL;
@@ -670,7 +670,7 @@ clear_so (struct so_list *so)
void
free_so (struct so_list *so)
{
- const struct target_so_ops *ops = gdbarch_so_ops (target_gdbarch ());
+ const target_so_ops *ops = gdbarch_so_ops (current_inferior ()->arch ());
clear_so (so);
ops->free_so (so);
@@ -774,7 +774,7 @@ notify_solib_unloaded (program_space *pspace, so_list *so)
void
update_solib_list (int from_tty)
{
- const struct target_so_ops *ops = gdbarch_so_ops (target_gdbarch ());
+ const target_so_ops *ops = gdbarch_so_ops (current_inferior ()->arch ());
struct so_list *inferior = ops->current_sos();
struct so_list *gdb, **gdb_link;
@@ -1077,7 +1077,7 @@ info_sharedlibrary_command (const char *pattern, int from_tty)
bool so_missing_debug_info = false;
int addr_width;
int nr_libs;
- struct gdbarch *gdbarch = target_gdbarch ();
+ gdbarch *gdbarch = current_inferior ()->arch ();
struct ui_out *uiout = current_uiout;
if (pattern)
@@ -1213,7 +1213,7 @@ solib_name_from_address (struct program_space *pspace, CORE_ADDR address)
bool
solib_keep_data_in_core (CORE_ADDR vaddr, unsigned long size)
{
- const struct target_so_ops *ops = gdbarch_so_ops (target_gdbarch ());
+ const target_so_ops *ops = gdbarch_so_ops (current_inferior ()->arch ());
if (ops->keep_data_in_core)
return ops->keep_data_in_core (vaddr, size) != 0;
@@ -1226,7 +1226,7 @@ solib_keep_data_in_core (CORE_ADDR vaddr, unsigned long size)
void
clear_solib (void)
{
- const struct target_so_ops *ops = gdbarch_so_ops (target_gdbarch ());
+ const target_so_ops *ops = gdbarch_so_ops (current_inferior ()->arch ());
disable_breakpoints_in_shlibs ();
@@ -1251,7 +1251,7 @@ clear_solib (void)
void
solib_create_inferior_hook (int from_tty)
{
- const struct target_so_ops *ops = gdbarch_so_ops (target_gdbarch ());
+ const target_so_ops *ops = gdbarch_so_ops (current_inferior ()->arch ());
ops->solib_create_inferior_hook (from_tty);
}
@@ -1261,7 +1261,7 @@ solib_create_inferior_hook (int from_tty)
bool
in_solib_dynsym_resolve_code (CORE_ADDR pc)
{
- const struct target_so_ops *ops = gdbarch_so_ops (target_gdbarch ());
+ const target_so_ops *ops = gdbarch_so_ops (current_inferior ()->arch ());
return ops->in_dynsym_resolve_code (pc) != 0;
}
@@ -1297,7 +1297,7 @@ no_shared_libraries (const char *ignored, int from_tty)
void
update_solib_breakpoints (void)
{
- const struct target_so_ops *ops = gdbarch_so_ops (target_gdbarch ());
+ const target_so_ops *ops = gdbarch_so_ops (current_inferior ()->arch ());
if (ops->update_breakpoints != NULL)
ops->update_breakpoints ();
@@ -1308,7 +1308,7 @@ update_solib_breakpoints (void)
void
handle_solib_event (void)
{
- const struct target_so_ops *ops = gdbarch_so_ops (target_gdbarch ());
+ const target_so_ops *ops = gdbarch_so_ops (current_inferior ()->arch ());
if (ops->handle_event != NULL)
ops->handle_event ();
@@ -1392,11 +1392,9 @@ static void
reload_shared_libraries (const char *ignored, int from_tty,
struct cmd_list_element *e)
{
- const struct target_so_ops *ops;
-
reload_shared_libraries_1 (from_tty);
- ops = gdbarch_so_ops (target_gdbarch ());
+ const target_so_ops *ops = gdbarch_so_ops (current_inferior ()->arch ());
/* Creating inferior hooks here has two purposes. First, if we reload
shared libraries then the address of solib breakpoint we've computed
@@ -1506,7 +1504,7 @@ gdb_bfd_lookup_symbol_from_symtab
if (match_sym (sym))
{
- struct gdbarch *gdbarch = target_gdbarch ();
+ gdbarch *gdbarch = current_inferior ()->arch ();
symaddr = sym->value;
/* Some ELF targets fiddle with addresses of symbols they
@@ -1622,7 +1620,8 @@ gdb_bfd_scan_elf_dyntag (const int desired_dyntag, bfd *abfd, CORE_ADDR *ptr,
gdb_byte ptr_buf[8];
CORE_ADDR ptr_addr_1;
- ptr_type = builtin_type (target_gdbarch ())->builtin_data_ptr;
+ ptr_type
+ = builtin_type (current_inferior ()->arch ())->builtin_data_ptr;
ptr_addr_1 = dyn_addr + (buf - bufstart) + arch_size / 8;
if (target_read_memory (ptr_addr_1, ptr_buf, arch_size / 8) == 0)
dyn_ptr = extract_typed_address (ptr_buf, ptr_type);