This is the mail archive of the gdb-patches@sources.redhat.com mailing list for the GDB project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

[patch] Add new registers to h8300-sim interface


Exports the registers vbr, sbr, mach, and macl to gdb.

2003-06-05  Michael Snyder  <msnyder@redhat.com>

	* compile.c (sim_fetch_register): Handle SBR, VBR, MACH, MACL.
	(sim_store_register): Ditto.

Index: compile.c
===================================================================
RCS file: /cvs/src/src/sim/h8300/compile.c,v
retrieving revision 1.29
diff -p -r1.29 compile.c
*** compile.c	5 Jun 2003 02:18:01 -0000	1.29
--- compile.c	19 Jun 2003 00:47:15 -0000
*************** sim_store_register (SIM_DESC sd, int rn,
*** 4569,4577 ****
    init_pointers (sd);
    switch (rn)
      {
-     case PC_REGNUM:
-       h8_set_pc (sd, intval);
-       break;
      default:
        (*sim_callback->printf_filtered) (sim_callback, 
  					"sim_store_register: bad regnum %d.\n",
--- 4569,4574 ----
*************** sim_store_register (SIM_DESC sd, int rn,
*** 4586,4605 ****
      case R7_REGNUM:
        h8_set_reg (sd, rn, intval);
        break;
      case CCR_REGNUM:
        h8_set_ccr (sd, intval);
        break;
      case EXR_REGNUM:
        h8_set_exr (sd, intval);
        break;
      case CYCLE_REGNUM:
        h8_set_cycles (sd, longval);
        break;
- 
      case INST_REGNUM:
        h8_set_insts (sd, longval);
        break;
- 
      case TICK_REGNUM:
        h8_set_ticks (sd, longval);
        break;
--- 4583,4615 ----
      case R7_REGNUM:
        h8_set_reg (sd, rn, intval);
        break;
+     case PC_REGNUM:
+       h8_set_pc (sd, intval);
+       break;
      case CCR_REGNUM:
        h8_set_ccr (sd, intval);
        break;
      case EXR_REGNUM:
        h8_set_exr (sd, intval);
        break;
+     case SBR_REGNUM:
+       h8_set_sbr (sd, intval);
+       break;
+     case VBR_REGNUM:
+       h8_set_vbr (sd, intval);
+       break;
+     case MACH_REGNUM:
+       h8_set_mach (sd, intval);
+       break;
+     case MACL_REGNUM:
+       h8_set_macl (sd, intval);
+       break;
      case CYCLE_REGNUM:
        h8_set_cycles (sd, longval);
        break;
      case INST_REGNUM:
        h8_set_insts (sd, longval);
        break;
      case TICK_REGNUM:
        h8_set_ticks (sd, longval);
        break;
*************** sim_fetch_register (SIM_DESC sd, int rn,
*** 4633,4638 ****
--- 4643,4660 ----
        break;
      case PC_REGNUM:
        v = h8_get_pc (sd);
+       break;
+     case SBR_REGNUM:
+       v = h8_get_sbr (sd);
+       break;
+     case VBR_REGNUM:
+       v = h8_get_vbr (sd);
+       break;
+     case MACH_REGNUM:
+       v = h8_get_mach (sd);
+       break;
+     case MACL_REGNUM:
+       v = h8_get_macl (sd);
        break;
      case R0_REGNUM:
      case R1_REGNUM:

Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]