sim: bfin: move option inits to respective modules

Now that modules can self declare their own init funcs, change the mmu
and mach logic to use it.  We don't need to export the option symbols
or specifically call this logic from the sim_open function anymore.
This commit is contained in:
Mike Frysinger
2016-01-02 10:54:42 -05:00
parent e4821e2f5f
commit d89a87ba3c
4 changed files with 30 additions and 13 deletions
+8
View File
@@ -1,3 +1,11 @@
2021-05-01 Mike Frysinger <vapier@gentoo.org>
* dv-bfin_mmu.c (bfin_mmu_options): Mark static.
(sim_install_bfin_mmu): New function & prototype.
* interp.c (e_sim_add_option_table): Delete.
* machs.c (bfin_mach_options): Mark static.
(sim_install_bfin_mach): New function & prototype.
2021-05-01 Mike Frysinger <vapier@gentoo.org>
* config.in, configure: Regenerate.
+11 -1
View File
@@ -277,7 +277,7 @@ enum {
OPTION_MMU_SKIP_TABLES = OPTION_START,
};
const OPTION bfin_mmu_options[] =
static const OPTION bfin_mmu_options[] =
{
{ {"mmu-skip-cplbs", no_argument, NULL, OPTION_MMU_SKIP_TABLES },
'\0', NULL, "Skip parsing of CPLB tables (big speed increase)",
@@ -301,6 +301,16 @@ bfin_mmu_option_handler (SIM_DESC sd, sim_cpu *current_cpu, int opt,
return SIM_RC_FAIL;
}
}
/* Provide a prototype to silence -Wmissing-prototypes. */
extern MODULE_INIT_FN sim_install_bfin_mmu;
SIM_RC
sim_install_bfin_mmu (SIM_DESC sd)
{
SIM_ASSERT (STATE_MAGIC (sd) == SIM_MAGIC_NUMBER);
return sim_add_option_table (sd, NULL, bfin_mmu_options);
}
#define MMU_STATE(cpu) DV_STATE_CACHED (cpu, mmu)
-11
View File
@@ -735,17 +735,6 @@ sim_open (SIM_OPEN_KIND kind, host_callback *callback,
if (STATE_ENVIRONMENT (sd) == ALL_ENVIRONMENT)
STATE_ENVIRONMENT (sd) = VIRTUAL_ENVIRONMENT;
/* These options override any module options.
Obviously ambiguity should be avoided, however the caller may wish to
augment the meaning of an option. */
#define e_sim_add_option_table(sd, options) \
do { \
extern const OPTION options[]; \
sim_add_option_table (sd, NULL, options); \
} while (0)
e_sim_add_option_table (sd, bfin_mmu_options);
e_sim_add_option_table (sd, bfin_mach_options);
/* The parser will print an error message for us, so we silently return. */
if (sim_parse_args (sd, argv) != SIM_RC_OK)
{
+11 -1
View File
@@ -1976,7 +1976,7 @@ enum {
OPTION_MACH_HW_BOARD_FILE,
};
const OPTION bfin_mach_options[] =
static const OPTION bfin_mach_options[] =
{
{ {"sirev", required_argument, NULL, OPTION_MACH_SIREV },
'\0', "NUMBER", "Set CPU silicon revision",
@@ -2019,3 +2019,13 @@ bfin_mach_option_handler (SIM_DESC sd, sim_cpu *current_cpu, int opt,
return SIM_RC_FAIL;
}
}
/* Provide a prototype to silence -Wmissing-prototypes. */
extern MODULE_INIT_FN sim_install_bfin_mach;
SIM_RC
sim_install_bfin_mach (SIM_DESC sd)
{
SIM_ASSERT (STATE_MAGIC (sd) == SIM_MAGIC_NUMBER);
return sim_add_option_table (sd, NULL, bfin_mach_options);
}