aboutsummaryrefslogtreecommitdiff
path: root/gdbserver/regcache.cc
diff options
context:
space:
mode:
authorTankut Baris Aktemur <tankut.baris.aktemur@intel.com>2020-02-17 16:11:59 +0100
committerTankut Baris Aktemur <tankut.baris.aktemur@intel.com>2020-02-20 17:35:13 +0100
commit770d8f6a51200bb4bf1228eba928e24e5d7fff86 (patch)
tree2d1be67399c4a8f7a1dad98ac92a0c0d1a7c3b43 /gdbserver/regcache.cc
parent290732bfb3805dd31fa640d022481dbb5d436988 (diff)
downloadgdb-770d8f6a51200bb4bf1228eba928e24e5d7fff86.zip
gdb-770d8f6a51200bb4bf1228eba928e24e5d7fff86.tar.gz
gdb-770d8f6a51200bb4bf1228eba928e24e5d7fff86.tar.bz2
gdbserver: turn target ops 'read_pc' and 'write_pc' into methods
gdbserver/ChangeLog: 2020-02-20 Tankut Baris Aktemur <tankut.baris.aktemur@intel.com> Turn process_stratum_target's read_pc and write_pc ops into methods of process_target. * target.h (struct process_stratum_target): Remove the target ops. (class process_target): Add the target ops. * target.cc (process_target::read_pc): Define. (process_target::write_pc): Define. Update the derived classes and callers below. * regcache.cc (regcache_read_pc): Update. (regcache_write_pc): Update. * linux-low.cc (linux_target_ops): Update. (linux_read_pc): Turn into ... (linux_process_target::read_pc): ... this. (linux_write_pc): Turn into ... (linux_process_target::write_pc): ... this. * linux-low.h (class linux_process_target): Update. * lynx-low.cc (lynx_target_ops): Update. * nto-low.cc (nto_target_ops): Update. * win32-low.cc (win32_target_ops): Update.
Diffstat (limited to 'gdbserver/regcache.cc')
-rw-r--r--gdbserver/regcache.cc16
1 files changed, 2 insertions, 14 deletions
diff --git a/gdbserver/regcache.cc b/gdbserver/regcache.cc
index f634633..ec9d70d 100644
--- a/gdbserver/regcache.cc
+++ b/gdbserver/regcache.cc
@@ -477,25 +477,13 @@ collect_register_by_name (struct regcache *regcache,
CORE_ADDR
regcache_read_pc (struct regcache *regcache)
{
- CORE_ADDR pc_val;
-
- if (the_target->read_pc)
- pc_val = the_target->read_pc (regcache);
- else
- internal_error (__FILE__, __LINE__,
- "regcache_read_pc: Unable to find PC");
-
- return pc_val;
+ return the_target->pt->read_pc (regcache);
}
void
regcache_write_pc (struct regcache *regcache, CORE_ADDR pc)
{
- if (the_target->write_pc)
- the_target->write_pc (regcache, pc);
- else
- internal_error (__FILE__, __LINE__,
- "regcache_write_pc: Unable to update PC");
+ the_target->pt->write_pc (regcache, pc);
}
#endif