/* Fetch inferior registers. */
static void
-spu_fetch_registers (int regno)
+spu_fetch_registers (struct regcache *regcache, int regno)
{
int fd;
CORE_ADDR addr;
/* The ID register holds the spufs file handle. */
if (regno == -1 || regno == SPU_ID_REGNUM)
- supply_register (SPU_ID_REGNUM, (char *)&fd);
+ supply_register (regcache, SPU_ID_REGNUM, (char *)&fd);
/* The NPC register is found at ADDR. */
if (regno == -1 || regno == SPU_PC_REGNUM)
{
char buf[4];
if (fetch_ppc_memory (addr, buf, 4) == 0)
- supply_register (SPU_PC_REGNUM, buf);
+ supply_register (regcache, SPU_PC_REGNUM, buf);
}
/* The GPRs are found in the "regs" spufs file. */
sprintf (annex, "%d/regs", fd);
if (spu_proc_xfer_spu (annex, buf, NULL, 0, sizeof buf) == sizeof buf)
for (i = 0; i < SPU_NUM_CORE_REGS; i++)
- supply_register (i, buf + i*16);
+ supply_register (regcache, i, buf + i*16);
}
}
/* Store inferior registers. */
static void
-spu_store_registers (int regno)
+spu_store_registers (struct regcache *regcache, int regno)
{
int fd;
CORE_ADDR addr;
if (regno == -1 || regno == SPU_PC_REGNUM)
{
char buf[4];
- collect_register (SPU_PC_REGNUM, buf);
+ collect_register (regcache, SPU_PC_REGNUM, buf);
store_ppc_memory (addr, buf, 4);
}
int i;
for (i = 0; i < SPU_NUM_CORE_REGS; i++)
- collect_register (i, buf + i*16);
+ collect_register (regcache, i, buf + i*16);
sprintf (annex, "%d/regs", fd);
spu_proc_xfer_spu (annex, NULL, buf, 0, sizeof buf);