#include <stdlib.h>
#endif
-#include <signal.h>
-
-
enum {
OPTION_WATCH_DELETE = OPTION_START,
do_watchpoint_delete (sd, point->ident, invalid_watchpoint);
if (point->interrupt_nr == watch->nr_interrupts)
- sim_engine_halt (sd, NULL, NULL, NULL_CIA, sim_stopped, SIGINT);
+ sim_engine_halt (sd, NULL, NULL, NULL_CIA, sim_stopped, SIM_SIGINT);
else
watch->interrupt_handler (sd, &watch->interrupt_names[interrupt_nr]);
}
static SIM_RC
-watchpoint_option_handler (sd, opt, arg, is_command)
- SIM_DESC sd;
- int opt;
- char *arg;
- int is_command;
+watchpoint_option_handler (SIM_DESC sd, sim_cpu *cpu, int opt,
+ char *arg, int is_command)
{
if (opt >= OPTION_WATCH_OP)
return do_watchpoint_create (sd, clock_watchpoint, opt, arg);
SIM_ASSERT (STATE_MAGIC (sd) == SIM_MAGIC_NUMBER);
/* the basic command set */
sim_module_add_init_fn (sd, sim_watchpoint_init);
- sim_add_option_table (sd, watchpoint_options);
+ sim_add_option_table (sd, NULL, watchpoint_options);
/* fill in some details */
if (watch->interrupt_names == NULL)
watch->interrupt_names = default_interrupt_names;
option->opt.val = type_to_option (sd, type, interrupt_nr);
option->doc = "";
option->doc_name = "";
+ option->handler = watchpoint_option_handler;
}
}
/* adjust first few entries so that they contain real
int_options[2].doc =
"Watch the clock, take ACTION after MILLISECONDS (`+' for every MILLISECONDS)";
- sim_add_option_table (sd, int_options);
+ sim_add_option_table (sd, NULL, int_options);
}
return SIM_RC_OK;
}