aboutsummaryrefslogtreecommitdiff
path: root/sim/mips
diff options
context:
space:
mode:
authorMike Frysinger <vapier@gentoo.org>2015-03-23 00:44:54 -0400
committerMike Frysinger <vapier@gentoo.org>2021-02-06 12:12:51 -0500
commit4c0d76b9c420bb29cb3365c5edc9c78c50d2b231 (patch)
tree1cbf362654cf185294337a5f27e6d3c94fdb9d65 /sim/mips
parentcd89c53f6d475cd05a1858b9195770e347fb2e9e (diff)
downloadfsf-binutils-gdb-4c0d76b9c420bb29cb3365c5edc9c78c50d2b231.zip
fsf-binutils-gdb-4c0d76b9c420bb29cb3365c5edc9c78c50d2b231.tar.gz
fsf-binutils-gdb-4c0d76b9c420bb29cb3365c5edc9c78c50d2b231.tar.bz2
sim: watchpoints: use common sim_pc_get
Few arches implement STATE_WATCHPOINTS()->pc while all of them implement sim_pc_get. Lets switch the sim-watch core for monitoring pc events to the sim_pc_get API so this module works for all ports, and then we can delete this old back channel of snooping in the port's cpu state -- the code needs the pointer to the pc storage so that it can read out bytes and compare them to the watchrange. This also fixes the logic on multi-cpu sims by removing the limitation of only being able to watch CPU0's state.
Diffstat (limited to 'sim/mips')
-rw-r--r--sim/mips/ChangeLog4
-rw-r--r--sim/mips/interp.c1
2 files changed, 4 insertions, 1 deletions
diff --git a/sim/mips/ChangeLog b/sim/mips/ChangeLog
index 1fb767c..b3da89b 100644
--- a/sim/mips/ChangeLog
+++ b/sim/mips/ChangeLog
@@ -1,5 +1,9 @@
2021-02-06 Mike Frysinger <vapier@gentoo.org>
+ * interp.c (sim_open): Delete call to STATE_WATCHPOINTS.
+
+2021-02-06 Mike Frysinger <vapier@gentoo.org>
+
* configure: Regenerate.
2021-01-30 Mike Frysinger <vapier@gentoo.org>
diff --git a/sim/mips/interp.c b/sim/mips/interp.c
index 852f362..fd93a12 100644
--- a/sim/mips/interp.c
+++ b/sim/mips/interp.c
@@ -355,7 +355,6 @@ sim_open (SIM_OPEN_KIND kind, host_callback *cb,
cpu = STATE_CPU (sd, 0); /* FIXME */
/* FIXME: watchpoints code shouldn't need this */
- STATE_WATCHPOINTS (sd)->pc = &(PC);
STATE_WATCHPOINTS (sd)->interrupt_handler = interrupt_event;
/* Initialize the mechanism for doing insn profiling. */