2009-07-09 Hui Zhu <teawater@gmail.com>

* solib.c (solib_bfd_open): Output a warning if solib's
	architecture is not compatible with inferior's architecture.
This commit is contained in:
Hui Zhu 2009-07-09 13:39:17 +00:00
parent 3a8f7b070d
commit 378d2b72b6
2 changed files with 13 additions and 0 deletions

View File

@ -1,3 +1,8 @@
2009-07-09 Hui Zhu <teawater@gmail.com>
* solib.c (solib_bfd_open): Output a warning if solib's
architecture is not compatible with inferior's architecture.
2009-07-09 Ulrich Weigand <uweigand@de.ibm.com>
Jan Kratochvil <jan.kratochvil@redhat.com>

View File

@ -289,6 +289,7 @@ solib_bfd_open (char *pathname)
char *found_pathname;
int found_file;
bfd *abfd;
const struct bfd_arch_info *b;
/* Use target-specific override if present. */
if (ops->bfd_open)
@ -311,6 +312,13 @@ solib_bfd_open (char *pathname)
found_pathname, bfd_errmsg (bfd_get_error ()));
}
/* Check bfd arch. */
b = gdbarch_bfd_arch_info (target_gdbarch);
if (b->compatible (b, bfd_get_arch_info (abfd)) != b)
warning (_("`%s': Shared library architecture %s is not compatible "
"with target architecture %s."), found_pathname,
bfd_get_arch_info (abfd)->printable_name, b->printable_name);
return abfd;
}