summaryrefslogtreecommitdiff
path: root/gdb/config/sh/tm-sh.h
diff options
context:
space:
mode:
Diffstat (limited to 'gdb/config/sh/tm-sh.h')
-rw-r--r--gdb/config/sh/tm-sh.h23
1 files changed, 20 insertions, 3 deletions
diff --git a/gdb/config/sh/tm-sh.h b/gdb/config/sh/tm-sh.h
index a3367131180..47256ae9f2d 100644
--- a/gdb/config/sh/tm-sh.h
+++ b/gdb/config/sh/tm-sh.h
@@ -27,7 +27,7 @@ struct type;
#define GDB_TARGET_IS_SH
-#define IEEE_FLOAT 1
+#define IEEE_FLOAT (1)
/* Define the bit, byte, and word ordering of the machine. */
@@ -101,8 +101,10 @@ extern CORE_ADDR sh_skip_prologue PARAMS ((CORE_ADDR));
of data in register N. */
#define REGISTER_VIRTUAL_TYPE(N) \
- ((((N) >= FP0_REGNUM && (N) <= FP15_REGNUM) \
- || (N) == FPUL_REGNUM) \
+ (((((N) >= FP0_REGNUM && (N) <= FP15_REGNUM) \
+ || (N) == FPUL_REGNUM) \
+ && TARGET_ARCHITECTURE->mach != bfd_mach_sh_dsp \
+ && TARGET_ARCHITECTURE->mach != bfd_mach_sh3_dsp) \
? builtin_type_float : builtin_type_int)
/* Initializer for an array of names of registers.
@@ -135,12 +137,27 @@ extern char **sh_register_names;
#define SR_REGNUM 22
#define FPUL_REGNUM 23
#define FPSCR_REGNUM 24
+#define DSR_REGNUM 24
#define FP0_REGNUM 25
#define FP15_REGNUM 40
+#define A0G_REGNUM 25
+#define A0_REGNUM 26
+#define A1G_REGNUM 27
+#define A1_REGNUM 28
+#define M0_REGNUM 29
+#define M1_REGNUM 30
+#define X0_REGNUM 31
+#define X1_REGNUM 32
+#define Y0_REGNUM 33
+#define Y1_REGNUM 34
+#define MOD_REGNUM 40
#define SSR_REGNUM 41
#define SPC_REGNUM 42
#define R0B0_REGNUM 43
#define R0B1_REGNUM 51
+#define RS_REGNUM 43
+#define RE_REGNUM 44
+#define R0B_REGNUM 51
#define NUM_REALREGS 59