All these registers are already provided by via gdbstub parsed XML and handler by the gdb_get_register() helper in the monitor/hmp.c file. Remove as now unreachable code.
Signed-off-by: Philippe Mathieu-Daudé <[email protected]> --- target/ppc/ppc-qmp-cmds.c | 132 -------------------------------------- 1 file changed, 132 deletions(-) diff --git a/target/ppc/ppc-qmp-cmds.c b/target/ppc/ppc-qmp-cmds.c index 7022564604f..66c3bcb2c38 100644 --- a/target/ppc/ppc-qmp-cmds.c +++ b/target/ppc/ppc-qmp-cmds.c @@ -33,54 +33,6 @@ #include "cpu-models.h" #include "cpu-qom.h" -static target_long monitor_get_ccr(Monitor *mon, const struct MonitorDef *md, - int val) -{ - CPUArchState *env = mon_get_cpu_env(mon); - unsigned int u; - - u = ppc_get_cr(env); - - return u; -} - -static target_long monitor_get_xer(Monitor *mon, const struct MonitorDef *md, - int val) -{ - CPUArchState *env = mon_get_cpu_env(mon); - return cpu_read_xer(env); -} - -static target_long monitor_get_decr(Monitor *mon, const struct MonitorDef *md, - int val) -{ - CPUArchState *env = mon_get_cpu_env(mon); - if (!env->tb_env) { - return 0; - } - return cpu_ppc_load_decr(env); -} - -static target_long monitor_get_tbu(Monitor *mon, const struct MonitorDef *md, - int val) -{ - CPUArchState *env = mon_get_cpu_env(mon); - if (!env->tb_env) { - return 0; - } - return cpu_ppc_load_tbu(env); -} - -static target_long monitor_get_tbl(Monitor *mon, const struct MonitorDef *md, - int val) -{ - CPUArchState *env = mon_get_cpu_env(mon); - if (!env->tb_env) { - return 0; - } - return cpu_ppc_load_tbl(env); -} - void hmp_info_tlb(Monitor *mon, const QDict *qdict) { CPUArchState *env1 = mon_get_cpu_env(mon); @@ -92,90 +44,6 @@ void hmp_info_tlb(Monitor *mon, const QDict *qdict) dump_mmu(env1); } -const MonitorDef monitor_defs[] = { - { "fpscr", offsetof(CPUPPCState, fpscr) }, - /* Next instruction pointer */ - { "nip|pc", offsetof(CPUPPCState, nip) }, - { "lr", offsetof(CPUPPCState, lr) }, - { "ctr", offsetof(CPUPPCState, ctr) }, - { "decr", 0, &monitor_get_decr, }, - { "ccr|cr", 0, &monitor_get_ccr, }, - /* Machine state register */ - { "xer", 0, &monitor_get_xer }, - { "msr", offsetof(CPUPPCState, msr) }, - { "tbu", 0, &monitor_get_tbu, }, -#if defined(TARGET_PPC64) - { "tb", 0, &monitor_get_tbl, }, -#else - { "tbl", 0, &monitor_get_tbl, }, -#endif - { NULL }, -}; - -const MonitorDef *target_monitor_defs(void) -{ - return monitor_defs; -} - -static int ppc_cpu_get_reg_num(const char *numstr, int maxnum, int *pregnum) -{ - int regnum; - char *endptr = NULL; - - if (!*numstr) { - return false; - } - - regnum = strtoul(numstr, &endptr, 10); - if (*endptr || (regnum >= maxnum)) { - return false; - } - *pregnum = regnum; - - return true; -} - -int target_get_monitor_def(CPUState *cs, const char *name, uint64_t *pval) -{ - int i, regnum; - CPUPPCState *env = cpu_env(cs); - - /* General purpose registers */ - if ((qemu_tolower(name[0]) == 'r') && - ppc_cpu_get_reg_num(name + 1, ARRAY_SIZE(env->gpr), ®num)) { - *pval = env->gpr[regnum]; - return 0; - } - - /* Floating point registers */ - if ((qemu_tolower(name[0]) == 'f') && - ppc_cpu_get_reg_num(name + 1, 32, ®num)) { - *pval = *cpu_fpr_ptr(env, regnum); - return 0; - } - - /* Special purpose registers */ - for (i = 0; i < ARRAY_SIZE(env->spr_cb); ++i) { - ppc_spr_t *spr = &env->spr_cb[i]; - - if (spr->name && (strcasecmp(name, spr->name) == 0)) { - *pval = env->spr[i]; - return 0; - } - } - - /* Segment registers */ -#if !defined(CONFIG_USER_ONLY) - if ((strncasecmp(name, "sr", 2) == 0) && - ppc_cpu_get_reg_num(name + 2, ARRAY_SIZE(env->sr), ®num)) { - *pval = env->sr[regnum]; - return 0; - } -#endif - - return -EINVAL; -} - CpuModelExpansionInfo * qmp_query_cpu_model_expansion(CpuModelExpansionType type, CpuModelInfo *model, -- 2.52.0
