aboutsummaryrefslogtreecommitdiff
path: root/gdb/sh-tdep.c
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/sh-tdep.c
parent048668d355f4b148c6d926361803cf84bf624017 (diff)
downloadgdb-05535e79e9697bdc703d101039f767ea2faa211f.zip
gdb-05535e79e9697bdc703d101039f767ea2faa211f.tar.gz
gdb-05535e79e9697bdc703d101039f767ea2faa211f.tar.bz2
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/sh-tdep.c')
-rw-r--r--gdb/sh-tdep.c23
1 files changed, 19 insertions, 4 deletions
diff --git a/gdb/sh-tdep.c b/gdb/sh-tdep.c
index 20885ec..e9f2d4b 100644
--- a/gdb/sh-tdep.c
+++ b/gdb/sh-tdep.c
@@ -51,9 +51,10 @@ char *sh_reg_names[] = {
"r0", "r1", "r2", "r3", "r4", "r5", "r6", "r7",
"r8", "r9", "r10", "r11", "r12", "r13", "r14", "r15",
"pc", "pr", "gbr", "vbr", "mach","macl", "sr",
- "fpul", "fpscr",
+ "", "",
"", "", "", "", "", "", "", "",
"", "", "", "", "", "", "", "",
+ "","",
"", "", "", "", "", "", "", "",
"", "", "", "", "", "", "", ""
};
@@ -62,11 +63,24 @@ char *sh3_reg_names[] = {
"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",
+ "", "",
+ "", "", "", "", "", "", "", "",
+ "", "", "", "", "", "", "", ""
+};
+
+char *sh3e_reg_names[] = {
+ "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"
};
struct {
@@ -75,6 +89,7 @@ struct {
} sh_processor_type_table[] = {
{ "sh", sh_reg_names },
{ "sh3", sh3_reg_names },
+ { "sh3e", sh3e_reg_names },
{ NULL, NULL }
};