提交 afe67ef2 编写于 作者: L Luiz Capitulino 提交者: Anthony Liguori

monitor: Port handler_4 to use QDict

This commit ports command handlers that receive four arguments to use
the new monitor's dictionary.

Note that GET_TLONG() and GET_TPHYSADDR() macros are not used anymore.
Signed-off-by: NLuiz Capitulino <lcapitulino@redhat.com>
Signed-off-by: NAnthony Liguori <aliguori@us.ibm.com>
上级 1d4daa91
......@@ -859,11 +859,12 @@ static void do_print(Monitor *mon, int count, int format, int size,
monitor_printf(mon, "\n");
}
static void do_memory_save(Monitor *mon, unsigned int valh, unsigned int vall,
uint32_t size, const char *filename)
static void do_memory_save(Monitor *mon, const QDict *qdict)
{
FILE *f;
target_long addr = GET_TLONG(valh, vall);
uint32_t size = qdict_get_int(qdict, "size");
const char *filename = qdict_get_str(qdict, "filename");
target_long addr = qdict_get_int(qdict, "val");
uint32_t l;
CPUState *env;
uint8_t buf[1024];
......@@ -889,14 +890,14 @@ static void do_memory_save(Monitor *mon, unsigned int valh, unsigned int vall,
fclose(f);
}
static void do_physical_memory_save(Monitor *mon, unsigned int valh,
unsigned int vall, uint32_t size,
const char *filename)
static void do_physical_memory_save(Monitor *mon, const QDict *qdict)
{
FILE *f;
uint32_t l;
uint8_t buf[1024];
target_phys_addr_t addr = GET_TPHYSADDR(valh, vall);
uint32_t size = qdict_get_int(qdict, "size");
const char *filename = qdict_get_str(qdict, "filename");
target_phys_addr_t addr = qdict_get_int(qdict, "val");
f = fopen(filename, "wb");
if (!f) {
......@@ -2585,8 +2586,6 @@ static void monitor_handle_command(Monitor *mon, const char *cmdline)
void *str_allocated[MAX_ARGS];
void *args[MAX_ARGS];
void (*handler_d)(Monitor *mon, const QDict *qdict);
void (*handler_4)(Monitor *mon, void *arg0, void *arg1, void *arg2,
void *arg3);
void (*handler_5)(Monitor *mon, void *arg0, void *arg1, void *arg2,
void *arg3, void *arg4);
void (*handler_6)(Monitor *mon, void *arg0, void *arg1, void *arg2,
......@@ -2878,13 +2877,10 @@ static void monitor_handle_command(Monitor *mon, const char *cmdline)
case 1:
case 2:
case 3:
case 4:
handler_d = cmd->handler;
handler_d(mon, qdict);
break;
case 4:
handler_4 = cmd->handler;
handler_4(mon, args[0], args[1], args[2], args[3]);
break;
case 5:
handler_5 = cmd->handler;
handler_5(mon, args[0], args[1], args[2], args[3], args[4]);
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册