From: Mike Frysinger <vapier@gentoo.org>
To: gdb-patches@sourceware.org
Subject: [PATCH] sim: add --model-info helper option
Date: Fri, 16 Apr 2010 07:32:00 -0000 [thread overview]
Message-ID: <1271403092-21679-1-git-send-email-vapier@gentoo.org> (raw)
There is an architecture-info flag for listing possible arch values, but
there is on equivalent for listing possible model values. So add the
equivalent for models.
Signed-off-by: Mike Frysinger <vapier@gentoo.org>
2010-04-16 Mike Frysinger <vapier@gentoo.org>
* sim-model.c (OPTION_MODEL): Convert to enum.
(OPTION_MODEL_INFO): New enum.
(model_options): Add model-info/info-model entries.
(model_option_handler): Handle OPTION_MODEL_INFO.
---
sim/common/sim-model.c | 29 ++++++++++++++++++++++++++++-
1 files changed, 28 insertions(+), 1 deletions(-)
diff --git a/sim/common/sim-model.c b/sim/common/sim-model.c
index ddcb2de..5e7284c 100644
--- a/sim/common/sim-model.c
+++ b/sim/common/sim-model.c
@@ -32,12 +32,23 @@ static DECLARE_OPTION_HANDLER (model_option_handler);
static MODULE_INIT_FN sim_model_init;
-#define OPTION_MODEL (OPTION_START + 0)
+enum {
+ OPTION_MODEL = OPTION_START,
+ OPTION_MODEL_INFO,
+};
static const OPTION model_options[] = {
{ {"model", required_argument, NULL, OPTION_MODEL},
'\0', "MODEL", "Specify model to simulate",
model_option_handler, NULL },
+
+ { {"model-info", no_argument, NULL, OPTION_MODEL_INFO},
+ '\0', NULL, "List selectable models",
+ model_option_handler, NULL },
+ { {"info-model", no_argument, NULL, OPTION_MODEL_INFO},
+ '\0', NULL, "List selectable models",
+ model_option_handler, NULL },
+
{ {NULL, no_argument, NULL, 0}, '\0', NULL, NULL, NULL, NULL }
};
@@ -58,6 +69,22 @@ model_option_handler (SIM_DESC sd, sim_cpu *cpu, int opt,
sim_model_set (sd, cpu, model);
break;
}
+
+ case OPTION_MODEL_INFO :
+ {
+ const MACH **machp;
+ const MODEL *model;
+ for (machp = & sim_machs[0]; *machp != NULL; ++machp)
+ {
+ sim_io_printf (sd, "Models for architecture `%s':\n",
+ MACH_NAME (*machp));
+ for (model = MACH_MODELS (*machp); MODEL_NAME (model) != NULL;
+ ++model)
+ sim_io_printf (sd, " %s", MODEL_NAME (model));
+ }
+ sim_io_printf (sd, "\n");
+ break;
+ }
}
return SIM_RC_OK;
--
1.7.0.2
next reply other threads:[~2010-04-16 7:32 UTC|newest]
Thread overview: 3+ messages / expand[flat|nested] mbox.gz Atom feed top
2010-04-16 7:32 Mike Frysinger [this message]
2010-04-18 7:47 ` Doug Evans
2010-04-19 18:41 ` Mike Frysinger
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=1271403092-21679-1-git-send-email-vapier@gentoo.org \
--to=vapier@gentoo.org \
--cc=gdb-patches@sourceware.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox