forked from Imagelibrary/binutils-gdb
gdb: scope down registers_changed call in inferior::set_arch
inferior::set_arch calls registers_changed, which invalidates all regcaches. It would be enough to invalidate only regcaches of threads belonging to this inferior. Call registers_changed_ptid instead, with the proper process target / ptid. If the inferior does not have a process target, there should be no regcaches for that inferior, so no need to invalidate anything. Change-Id: Id8b5500acb7f373b01a534f16d3a7d028dc0d882 Reviewed-By: John Baldwin <jhb@FreeBSD.org> Approved-By: Andrew Burgess <aburgess@redhat.com>
This commit is contained in:
@@ -180,7 +180,10 @@ inferior::set_arch (gdbarch *arch)
|
||||
gdb_assert (gdbarch_initialized_p (arch));
|
||||
m_gdbarch = arch;
|
||||
gdb::observers::architecture_changed.notify (this, arch);
|
||||
registers_changed ();
|
||||
|
||||
process_stratum_target *proc_target = this->process_target ();
|
||||
if (proc_target != nullptr)
|
||||
registers_changed_ptid (proc_target, ptid_t (this->pid));
|
||||
}
|
||||
|
||||
void
|
||||
|
||||
Reference in New Issue
Block a user