summaryrefslogtreecommitdiffstats
path: root/gdb/config/sh
diff options
context:
space:
mode:
authorStan Shebs <shebs@codesourcery.com>1996-05-13 18:34:09 +0000
committerStan Shebs <shebs@codesourcery.com>1996-05-13 18:34:09 +0000
commit05535e79e9697bdc703d101039f767ea2faa211f (patch)
tree6df74d7f8288b2da30dcccbf6d7c6c46f9360678 /gdb/config/sh
parent048668d355f4b148c6d926361803cf84bf624017 (diff)
downloadppe42-binutils-05535e79e9697bdc703d101039f767ea2faa211f.tar.gz
ppe42-binutils-05535e79e9697bdc703d101039f767ea2faa211f.zip
SH3-E support from Allan Tajii <atajii@hmsi.com>:
* sh-tdep.c (sh_reg_names, sh3_reg_names): Add empty names for float registers. (sh3e_reg_names): New register name array. (sh_processor_type_table): Add sh3e processor type. * config/sh/tm-sh.h (REGISTER_VIRTUAL_TYPE): Fix test. (REGISTER_NAMES, NUM_REGS, NUM_REALREGS, etc): Adjust for full set of registers. * remote-e7000.c (want_sh3, want_sh3_nopc): New globals. (e7000_fetch_registers, e7000_wait): Use them. * sh3-rom.c (sh3_regnames): Add float registers. (sh3e_cmds, sh3e_ops): New globals. (sh3e_open): New function. (_initialize_sh3_rom): Rename from _initialize_sh3, set up sh3e target vector. * gdbwin.c (reg_order) [TARGET_SH]: Update for SH3-E. * initfake.c: Call _initialize_sh3_rom instead of _initialize_sh3.
Diffstat (limited to 'gdb/config/sh')
-rw-r--r--gdb/config/sh/tm-sh.h19
1 files changed, 10 insertions, 9 deletions
diff --git a/gdb/config/sh/tm-sh.h b/gdb/config/sh/tm-sh.h
index 9152625381..d2d329a0dd 100644
--- a/gdb/config/sh/tm-sh.h
+++ b/gdb/config/sh/tm-sh.h
@@ -101,7 +101,7 @@ extern CORE_ADDR sh_skip_prologue ();
of data in register N. */
#define REGISTER_VIRTUAL_TYPE(N) \
- ((((N) >= FP0_REGNUM && (N) < FP15_REGNUM) \
+ ((((N) >= FP0_REGNUM && (N) <= FP15_REGNUM) \
|| (N) == FPUL_REGNUM) \
? builtin_type_float : builtin_type_int)
@@ -112,14 +112,15 @@ extern CORE_ADDR sh_skip_prologue ();
{"r0", "r1", "r2", "r3", "r4", "r5", "r6", "r7", \
"r8", "r9", "r10","r11","r12", "r13", "r14","r15",\
"pc", "pr", "gbr","vbr","mach","macl","sr", \
+ "ssr", "spc", \
+ "r0b0", "r1b0", "r2b0", "r3b0", "r4b0", "r5b0", "r6b0", "r7b0", \
+ "r0b1", "r1b1", "r2b1", "r3b1", "r4b1", "r5b1", "r6b1", "r7b1", \
"fpul","fpscr", \
"fr0", "fr1", "fr2", "fr3", "fr4", "fr5", "fr6", "fr7", \
- "fr8", "fr9", "fr10","fr11","fr12","fr13","fr14","fr15",\
- "r0b0", "r1b0", "r2b0", "r3b0", "r4b0", "r5b0", "r6b0", "r7b0", \
- "r0b1", "r1b1", "r2b1", "r3b1", "r4b1", "r5b1", "r6b1", "r7b1" \
+ "fr8", "fr9", "fr10","fr11","fr12","fr13","fr14","fr15"\
}
-#define NUM_REGS 57
+#define NUM_REGS 59
/* Register numbers of various important registers.
Note that some of these values are "real" register numbers,
@@ -139,11 +140,11 @@ extern CORE_ADDR sh_skip_prologue ();
#define MACL_REGNUM 21
#define SR_REGNUM 22
#define NUM_REALREGS 23
-#define FPUL_REGNUM 23
-#define FP0_REGNUM 25
-#define FP15_REGNUM 41
+#define FPUL_REGNUM 41
+#define FP0_REGNUM 43
+#define FP15_REGNUM 58
#undef NUM_REALREGS
-#define NUM_REALREGS 57
+#define NUM_REALREGS 59
/* Store the address of the place in which to copy the structure the
subroutine will return. This is called from call_function.
OpenPOWER on IntegriCloud