This is the mail archive of the
gdb@sources.redhat.com
mailing list for the GDB project.
LSI 33k ?
- From: Kevin Buettner <kevinb at redhat dot com>
- To: gdb at sources dot redhat dot com
- Date: Tue, 6 May 2003 05:34:27 -0700
- Subject: LSI 33k ?
Does anyone know anything about the LSI 33k? Okay, more specifically, did
support for this core ever actually work in GDB?
In mips-tdep.c, I see the following:
/* Names of LSI 33k registers. */
char *mips_lsi33k_reg_names[] = {
"epc", "hi", "lo", "sr", "cause","badvaddr",
"dcic", "bpc", "bda", "", "", "", "", "",
"", "", "", "", "", "", "", "",
...
With the exception of IRIX, the first line for all of the other regname
sets look like this:
"sr", "lo", "hi", "bad", "cause","pc",
I'm not concerned about IRIX, because BADVADDR_REGNUM, CAUSE_REGNUM,
PC_REGNUM, etc. are redefined in the appropriate tm-*.h file.
The LSI 33k rearranges these registers, apparently even the PC_REGNUM
value, but nowhere do I see a PC_REGNUM definition that's specific to
the LSI 33k. This is bad because if the LSI 33k registers are really
laid out as indicated by lsi33_reg_names[], then there's no way that
GDB is actually obtaining the correct PC value whenever it uses PC_REGNUM.
(It'll be using the "baddvaddr" value...)
I thought for a while that perhaps the LSI 33k was simply bit-rotted,
but after doing some digging in the old Cygnus CVS repository, I don't
see how it could have ever worked.
Does anyone know?
Kevin