aboutsummaryrefslogtreecommitdiff
path: root/sim/sh/interp.c
diff options
context:
space:
mode:
authorStu Grossman <grossman@cygnus>1995-09-15 02:36:10 +0000
committerStu Grossman <grossman@cygnus>1995-09-15 02:36:10 +0000
commit95295b419c04c19af670067a8750bb6bc271d9c4 (patch)
treea40e757c181e895376cb74b7cd59040355a9b64c /sim/sh/interp.c
parent0672384c2753e3b9d728450a84da4a51534b2f0b (diff)
downloadgdb-95295b419c04c19af670067a8750bb6bc271d9c4.zip
gdb-95295b419c04c19af670067a8750bb6bc271d9c4.tar.gz
gdb-95295b419c04c19af670067a8750bb6bc271d9c4.tar.bz2
* gencode.c: Back up PC by 2 for breakpoints.
* interp.c: Move fp regs beyond pc/pr/etc to avoid confusing GDB, which expect pc to immediatly follow regs[].
Diffstat (limited to 'sim/sh/interp.c')
-rw-r--r--sim/sh/interp.c17
1 files changed, 9 insertions, 8 deletions
diff --git a/sim/sh/interp.c b/sim/sh/interp.c
index 3c26526..1d22029 100644
--- a/sim/sh/interp.c
+++ b/sim/sh/interp.c
@@ -24,6 +24,10 @@
#include "remote-sim.h"
#include <sys/syscall.h>
+/* start-sanitize-sh3e */
+#include <math.h>
+/* end-sanitize-sh3e */
+
#if !defined (SYS_wait) && defined (SYS_wait4)
#define SYS_wait SYS_wait4 /* SunOS 4.1.3 for example */
#endif
@@ -120,9 +124,6 @@ typedef union
{
int regs[16];
-/* start-sanitize-sh3e */
- float fregs[16];
-/* end-sanitize-sh3e */
int pc;
int pr;
@@ -131,11 +132,6 @@ typedef union
int mach;
int macl;
-/* start-sanitize-sh3e */
- float fpscr;
- int fpul;
-/* end-sanitize-sh3e */
-
union
{
struct
@@ -160,6 +156,11 @@ typedef union
int prevlock;
int thislock;
+/* start-sanitize-sh3e */
+ float fregs[16];
+ float fpscr;
+ int fpul;
+/* end-sanitize-sh3e */
int exception;
int msize;
#define PROFILE_FREQ 1