Author: gonzo
Date: Sun Nov  7 20:56:41 2010
New Revision: 214952
URL: http://svn.freebsd.org/changeset/base/214952

Log:
  - Use proper constant for accessing PCB intead of hardcoded numbers
  - Minor clean-up

Modified:
  head/gnu/usr.bin/gdb/kgdb/trgt_mips.c

Modified: head/gnu/usr.bin/gdb/kgdb/trgt_mips.c
==============================================================================
--- head/gnu/usr.bin/gdb/kgdb/trgt_mips.c       Sun Nov  7 20:53:19 2010        
(r214951)
+++ head/gnu/usr.bin/gdb/kgdb/trgt_mips.c       Sun Nov  7 20:56:41 2010        
(r214952)
@@ -46,6 +46,8 @@ __FBSDID("$FreeBSD$");
 #include <frame-unwind.h>
 #include <mips-tdep.h>
 
+#include <machine/pcb.h>
+
 #include "kgdb.h"
 
 void
@@ -61,24 +63,26 @@ kgdb_trgt_fetch_registers(int regno __un
                warnx("kvm_read: %s", kvm_geterr(kvm));
                memset(&pcb, 0, sizeof(pcb));
        }
-       supply_register(MIPS_S0_REGNUM, (char *)&pcb.pcb_context[0]);
-       supply_register(MIPS_S1_REGNUM, (char *)&pcb.pcb_context[1]);
-       supply_register(MIPS_S2_REGNUM, (char *)&pcb.pcb_context[2]);
-       supply_register(MIPS_S3_REGNUM, (char *)&pcb.pcb_context[3]);
-       supply_register(MIPS_S4_REGNUM, (char *)&pcb.pcb_context[4]);
-       supply_register(MIPS_S5_REGNUM, (char *)&pcb.pcb_context[5]);
-       supply_register(MIPS_S6_REGNUM, (char *)&pcb.pcb_context[6]);
-       supply_register(MIPS_S7_REGNUM, (char *)&pcb.pcb_context[7]);
-       supply_register(MIPS_SP_REGNUM, (char *)&pcb.pcb_context[8]);
-       supply_register(MIPS_FP_REGNUM, (char *)&pcb.pcb_context[9]);
-       supply_register(MIPS_RA_REGNUM, (char *)&pcb.pcb_context[10]);
+
+       supply_register(MIPS_S0_REGNUM, (char *)&pcb.pcb_context[PCB_REG_S0]);
+       supply_register(MIPS_S1_REGNUM, (char *)&pcb.pcb_context[PCB_REG_S1]);
+       supply_register(MIPS_S2_REGNUM, (char *)&pcb.pcb_context[PCB_REG_S2]);
+       supply_register(MIPS_S3_REGNUM, (char *)&pcb.pcb_context[PCB_REG_S3]);
+       supply_register(MIPS_S4_REGNUM, (char *)&pcb.pcb_context[PCB_REG_S4]);
+       supply_register(MIPS_S5_REGNUM, (char *)&pcb.pcb_context[PCB_REG_S5]);
+       supply_register(MIPS_S6_REGNUM, (char *)&pcb.pcb_context[PCB_REG_S6]);
+       supply_register(MIPS_S7_REGNUM, (char *)&pcb.pcb_context[PCB_REG_S7]);
+       supply_register(MIPS_SP_REGNUM, (char *)&pcb.pcb_context[PCB_REG_SP]);
+       supply_register(MIPS_FP_REGNUM, (char *)&pcb.pcb_context[PCB_REG_GP]);
+       supply_register(MIPS_RA_REGNUM, (char *)&pcb.pcb_context[PCB_REG_RA]);
+       supply_register(MIPS_EMBED_PC_REGNUM, (char 
*)&pcb.pcb_context[PCB_REG_PC]);
 }
 
 void
 kgdb_trgt_store_registers(int regno __unused)
 {
 
-       fprintf_unfiltered(gdb_stderr, "XXX: %s\n", __func__);
+       fprintf_unfiltered(gdb_stderr, "Unimplemented function: %s\n", 
__func__);
 }
 
 void
@@ -127,7 +131,7 @@ static int kgdb_trgt_frame_offset[] = {
 };
 
 static struct kgdb_frame_cache *
-kgdb_trgt_frame_cache(struct frame_info *next_frame __unused, void 
**this_cache __unused)
+kgdb_trgt_frame_cache(struct frame_info *next_frame, void **this_cache)
 {
        char buf[MAX_REGISTER_SIZE];
        struct kgdb_frame_cache *cache;
@@ -192,7 +196,7 @@ static const struct frame_unwind kgdb_tr
 };
 
 const struct frame_unwind *
-kgdb_trgt_trapframe_sniffer(struct frame_info *next_frame __unused)
+kgdb_trgt_trapframe_sniffer(struct frame_info *next_frame)
 {
        char *pname;
        CORE_ADDR pc;
@@ -207,6 +211,5 @@ kgdb_trgt_trapframe_sniffer(struct frame
            (strcmp(pname, "MipsUserIntr") == 0) ||
            (strcmp(pname, "MipsUserGenException") == 0))
                return (&kgdb_trgt_trapframe_unwind);
-       /* printf("%s: %llx =%s\n", __func__, pc, pname); */
        return (NULL);
 }
_______________________________________________
svn-src-head@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/svn-src-head
To unsubscribe, send any mail to "svn-src-head-unsubscr...@freebsd.org"

Reply via email to