void ppcfbsd_fill_reg (char *regs, int regno) { struct gdbarch_tdep *tdep = gdbarch_tdep (current_gdbarch); int i; for (i = tdep->ppc_gp0_regnum; i <= tdep->ppc_gplast_regnum; i++) { if (regno == i || regno == -1) regcache_raw_collect (current_regcache, i, regs + REG_FIXREG_OFFSET (i - tdep->ppc_gp0_regnum)); } if (regno == tdep->ppc_lr_regnum || regno == -1) regcache_raw_collect (current_regcache, tdep->ppc_lr_regnum, regs + REG_LR_OFFSET); if (regno == tdep->ppc_cr_regnum || regno == -1) regcache_raw_collect (current_regcache, tdep->ppc_cr_regnum, regs + REG_CR_OFFSET); if (regno == tdep->ppc_xer_regnum || regno == -1) regcache_raw_collect (current_regcache, tdep->ppc_xer_regnum, regs + REG_XER_OFFSET); if (regno == tdep->ppc_ctr_regnum || regno == -1) regcache_raw_collect (current_regcache, tdep->ppc_ctr_regnum, regs + REG_CTR_OFFSET); if (regno == PC_REGNUM || regno == -1) regcache_raw_collect (current_regcache, PC_REGNUM, regs + REG_PC_OFFSET); }
void ppcnbsd_fill_reg (char *regs, int regno) { struct gdbarch_tdep *tdep = gdbarch_tdep (current_gdbarch); int i; for (i = 0; i <= 31; i++) { if (regno == i || regno == -1) regcache_collect (i, regs + REG_FIXREG_OFFSET (i)); } if (regno == tdep->ppc_lr_regnum || regno == -1) regcache_collect (tdep->ppc_lr_regnum, regs + REG_LR_OFFSET); if (regno == tdep->ppc_cr_regnum || regno == -1) regcache_collect (tdep->ppc_cr_regnum, regs + REG_CR_OFFSET); if (regno == tdep->ppc_xer_regnum || regno == -1) regcache_collect (tdep->ppc_xer_regnum, regs + REG_XER_OFFSET); if (regno == tdep->ppc_ctr_regnum || regno == -1) regcache_collect (tdep->ppc_ctr_regnum, regs + REG_CTR_OFFSET); if (regno == PC_REGNUM || regno == -1) regcache_collect (PC_REGNUM, regs + REG_PC_OFFSET); }
void ppcnbsd_supply_reg (char *regs, int regno) { struct gdbarch_tdep *tdep = gdbarch_tdep (current_gdbarch); int i; for (i = 0; i < ppc_num_gprs; i++) { if (regno == tdep->ppc_gp0_regnum + i || regno == -1) regcache_raw_supply (current_regcache, tdep->ppc_gp0_regnum + i, regs + REG_FIXREG_OFFSET (i)); } if (regno == tdep->ppc_lr_regnum || regno == -1) regcache_raw_supply (current_regcache, tdep->ppc_lr_regnum, regs + REG_LR_OFFSET); if (regno == tdep->ppc_cr_regnum || regno == -1) regcache_raw_supply (current_regcache, tdep->ppc_cr_regnum, regs + REG_CR_OFFSET); if (regno == tdep->ppc_xer_regnum || regno == -1) regcache_raw_supply (current_regcache, tdep->ppc_xer_regnum, regs + REG_XER_OFFSET); if (regno == tdep->ppc_ctr_regnum || regno == -1) regcache_raw_supply (current_regcache, tdep->ppc_ctr_regnum, regs + REG_CTR_OFFSET); if (regno == PC_REGNUM || regno == -1) regcache_raw_supply (current_regcache, PC_REGNUM, regs + REG_PC_OFFSET); }