HIDDEN int
tdep_access_reg (struct cursor *c, unw_regnum_t reg, unw_word_t *valp,
- int write)
+ int write)
{
dwarf_loc_t loc = DWARF_NULL_LOC;
break;
case UNW_MIPS_PC:
+ if (write)
+ c->dwarf.ip = *valp; /* update the IP cache */
loc = c->dwarf.loc[reg];
break;
HIDDEN int
tdep_access_fpreg (struct cursor *c, unw_regnum_t reg, unw_fpreg_t *valp,
- int write)
+ int write)
{
Debug (1, "bad register number %u\n", reg);
return -UNW_EBADREG;