sim: arm/cr16/d10v/h8300/microblaze/sh: fill out sim-cpu pc fetch/store helpers
[deliverable/binutils-gdb.git] / sim / microblaze / interp.c
index 9e95e1ea725e4eb1cde8738f823fa690bd7ac8d4..aa8634e3d8809c614af8ca240329eda9d6c6be74 100644 (file)
@@ -633,6 +633,18 @@ sim_info (SIM_DESC sd, int verbose)
                             (CPU.cycles) ? CPU.cycles+2 : 0);
 }
 
+static sim_cia
+microblaze_pc_get (sim_cpu *cpu)
+{
+  return cpu->microblaze_cpu.spregs[0];
+}
+
+static void
+microblaze_pc_set (sim_cpu *cpu, sim_cia pc)
+{
+  cpu->microblaze_cpu.spregs[0] = pc;
+}
+
 static void
 free_state (SIM_DESC sd)
 {
@@ -706,6 +718,9 @@ sim_open (SIM_OPEN_KIND kind, host_callback *cb, struct bfd *abfd, char **argv)
       SIM_CPU *cpu = STATE_CPU (sd, i);
       int osize = sim_memory_size;
 
+      CPU_PC_FETCH (cpu) = microblaze_pc_get;
+      CPU_PC_STORE (cpu) = microblaze_pc_set;
+
       set_initial_gprs (cpu);
 
       /* Discard and reacquire memory -- start with a clean slate.  */
This page took 0.022931 seconds and 4 git commands to generate.