[RFA] sh-tdep.c: Define only the minimal register set in sh_generic_register_name

Corinna Vinschen
2004-02-12T17:29:20Z

Hi,

while looking into the sh_generic_register_name function, I began to wonder
why that function defines a register set, which is not exactly generic,
but instead gives a name to all 59 register entries. Many of them are
only correct on CPUs with FPU and/or register banks.

IMHO, the generic_name function should only define the maximum common
register set, which is the same as the one for the basic sh CPU variant.

Therefore I'd like to propose the following patch, which does exactly
that. An alternative approach would be, to remove the
sh_generic_register_name entirely and use sh_sh_register_name instead.

Thanks for considering,
Corinna

ChangeLog:

* sh-tdep.c (sh_generic_register_name): Only define the maximum
common register set.

Index: sh-tdep.c
===================================================================
RCS file: /cvs/src/src/gdb/sh-tdep.c,v
retrieving revision 1.158
diff -u -p -r1.158 sh-tdep.c
--- sh-tdep.c 11 Feb 2004 15:40:28 -0000 1.158
+++ sh-tdep.c 12 Feb 2004 17:28:22 -0000
@@ -81,12 +81,12 @@ sh_generic_register_name (int reg_nr)
"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",
- "fr0", "fr1", "fr2", "fr3", "fr4", "fr5", "fr6", "fr7",
- "fr8", "fr9", "fr10", "fr11", "fr12", "fr13", "fr14", "fr15",
- "ssr", "spc",
- "r0b0", "r1b0", "r2b0", "r3b0", "r4b0", "r5b0", "r6b0", "r7b0",
- "r0b1", "r1b1", "r2b1", "r3b1", "r4b1", "r5b1", "r6b1", "r7b1",
+ "", "",
+ "", "", "", "", "", "", "", "",
+ "", "", "", "", "", "", "", "",
+ "", "",
+ "", "", "", "", "", "", "", "",
+ "", "", "", "", "", "", "", "",
};
if (reg_nr < 0)
return NULL;

--
Corinna Vinschen
Cygwin Developer
Red Hat, Inc.