aboutsummaryrefslogtreecommitdiff
path: root/sim/rx/rx.c
diff options
context:
space:
mode:
authorNick Clifton <nickc@redhat.com>2010-09-29 15:47:45 +0000
committerNick Clifton <nickc@redhat.com>2010-09-29 15:47:45 +0000
commit5f79eb72c24bb79e981896542831374b54fb96ba (patch)
tree2f15111de7842c02b43dfc3f2b1d5d89beb0417a /sim/rx/rx.c
parentbb73df25a83c1040ab448374bf8820175b595f73 (diff)
downloadgdb-5f79eb72c24bb79e981896542831374b54fb96ba.zip
gdb-5f79eb72c24bb79e981896542831374b54fb96ba.tar.gz
gdb-5f79eb72c24bb79e981896542831374b54fb96ba.tar.bz2
* rx.c (decode_opcode: RXO_int): Only break out of the emulation
loop if rx_syscall() does not return a RX_STEPPED result.
Diffstat (limited to 'sim/rx/rx.c')
-rw-r--r--sim/rx/rx.c4
1 files changed, 3 insertions, 1 deletions
diff --git a/sim/rx/rx.c b/sim/rx/rx.c
index 17f5b46..247d624 100644
--- a/sim/rx/rx.c
+++ b/sim/rx/rx.c
@@ -1232,7 +1232,9 @@ decode_opcode ()
v = GS ();
if (v == 255)
{
- DO_RETURN (rx_syscall (regs.r[5]));
+ int rc = rx_syscall (regs.r[5]);
+ if (! RX_STEPPED (rc))
+ DO_RETURN (rc);
}
else
{