diff options
Diffstat (limited to 'gdb/gdb-events.c')
-rw-r--r-- | gdb/gdb-events.c | 33 |
1 files changed, 33 insertions, 0 deletions
diff --git a/gdb/gdb-events.c b/gdb/gdb-events.c index d688475..f24ece5 100644 --- a/gdb/gdb-events.c +++ b/gdb/gdb-events.c @@ -122,6 +122,18 @@ architecture_changed_event (void) current_event_hooks->architecture_changed (); } +// begin ARC +void +reg_architecture_changed_event (void) +{ + if (gdb_events_debug) + fprintf_unfiltered (gdb_stdlog, "reg_architecture_changed_event\n"); + if (!current_event_hooks->reg_architecture_changed) + return; + current_event_hooks->reg_architecture_changed (); +} +// end ARC + struct gdb_events * deprecated_set_gdb_event_hooks (struct gdb_events *vector) { @@ -148,6 +160,9 @@ enum gdb_event tracepoint_delete, tracepoint_modify, architecture_changed, +// begin ARC + reg_architecture_changed, +// end ARC nr_gdb_events }; @@ -271,6 +286,16 @@ queue_architecture_changed (void) append (event); } +// begin ARC +static void +queue_reg_architecture_changed (void) +{ + struct event *event = XMALLOC (struct event); + event->type = reg_architecture_changed; + append (event); +} +// end ARC + void gdb_events_deliver (struct gdb_events *vector) { @@ -319,6 +344,11 @@ gdb_events_deliver (struct gdb_events *vector) case architecture_changed: vector->architecture_changed (); break; +// begin ARC + case reg_architecture_changed: + vector->reg_architecture_changed (); + break; +// end ARC } delivering_events = event->next; xfree (event); @@ -337,6 +367,9 @@ _initialize_gdb_events (void) queue_event_hooks.tracepoint_delete = queue_tracepoint_delete; queue_event_hooks.tracepoint_modify = queue_tracepoint_modify; queue_event_hooks.architecture_changed = queue_architecture_changed; +// begin ARC + queue_event_hooks.reg_architecture_changed = queue_reg_architecture_changed; +// end ARC add_setshow_zinteger_cmd ("event", class_maintenance, &gdb_events_debug, _("\ |