* [commit] oops, re-instate cris_register_size
@ 2004-08-03 4:00 Andrew Cagney
0 siblings, 0 replies; only message in thread
From: Andrew Cagney @ 2004-08-03 4:00 UTC (permalink / raw)
To: gdb-patches
[-- Attachment #1: Type: text/plain, Size: 81 bytes --]
I didn't notice a local call, picked up when doing re-builds.
committed,
Andrew
[-- Attachment #2: diffs --]
[-- Type: text/plain, Size: 1806 bytes --]
2004-08-02 Andrew Cagney <cagney@gnu.org>
* cris-tdep.c (cris_register_size): Restore function, still used
locally.
Index: cris-tdep.c
===================================================================
RCS file: /cvs/src/src/gdb/cris-tdep.c,v
retrieving revision 1.115
diff -p -u -r1.115 cris-tdep.c
--- cris-tdep.c 3 Aug 2004 03:09:32 -0000 1.115
+++ cris-tdep.c 3 Aug 2004 03:57:01 -0000
@@ -1096,6 +1096,45 @@ cris_spec_reg_applicable (struct cris_sp
}
}
+/* Returns the register size in unit byte. Returns 0 for an unimplemented
+ register, -1 for an invalid register. */
+
+static int
+cris_register_size (int regno)
+{
+ int i;
+ int spec_regno;
+
+ if (regno >= 0 && regno < NUM_GENREGS)
+ {
+ /* General registers (R0 - R15) are 32 bits. */
+ return 4;
+ }
+ else if (regno >= NUM_GENREGS && regno < NUM_REGS)
+ {
+ /* Special register (R16 - R31). cris_spec_regs is zero-based.
+ Adjust regno accordingly. */
+ spec_regno = regno - NUM_GENREGS;
+
+ /* The entries in cris_spec_regs are stored in register number order,
+ which means we can shortcut into the array when searching it. */
+ for (i = spec_regno; cris_spec_regs[i].name != NULL; i++)
+ {
+ if (cris_spec_regs[i].number == spec_regno
+ && cris_spec_reg_applicable (cris_spec_regs[i]))
+ /* Go with the first applicable register. */
+ return cris_spec_regs[i].reg_size;
+ }
+ /* Special register not applicable to this CRIS version. */
+ return 0;
+ }
+ else
+ {
+ /* Invalid register. */
+ return -1;
+ }
+}
+
/* Nonzero if regno should not be fetched from the target. This is the case
for unimplemented (size 0) and non-existant registers. */
^ permalink raw reply [flat|nested] only message in thread
only message in thread, other threads:[~2004-08-03 4:00 UTC | newest]
Thread overview: (only message) (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2004-08-03 4:00 [commit] oops, re-instate cris_register_size Andrew Cagney
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox