/* Process record and replay target for GDB, the GNU debugger.
- Copyright (C) 2008-2014 Free Software Foundation, Inc.
+ Copyright (C) 2008-2016 Free Software Foundation, Inc.
This file is part of GDB.
target_kill ();
}
+/* See record.h. */
+
+int
+record_check_stopped_by_breakpoint (struct address_space *aspace, CORE_ADDR pc,
+ enum target_stop_reason *reason)
+{
+ if (breakpoint_inserted_here_p (aspace, pc))
+ {
+ if (hardware_breakpoint_inserted_here_p (aspace, pc))
+ *reason = TARGET_STOPPED_BY_HW_BREAKPOINT;
+ else
+ *reason = TARGET_STOPPED_BY_SW_BREAKPOINT;
+ return 1;
+ }
+
+ *reason = TARGET_STOPPED_BY_NO_REASON;
+ return 0;
+}
+
/* Implement "show record debug" command. */
static void
{
require_record_target ();
- if (!target_record_is_replaying ())
+ if (!target_record_is_replaying (inferior_ptid))
{
printf_unfiltered (_("Already at end of record list.\n"));
return;
}
printf_filtered (_("Active record target: %s\n"), t->to_shortname);
- if (t->to_info_record != NULL)
- t->to_info_record (t);
+ t->to_info_record (t);
}
/* The "record save" command. */
switch (*args)
{
case 'm':
+ case 's':
modifiers |= DISASSEMBLY_SOURCE;
modifiers |= DISASSEMBLY_FILENAME;
break;
add_cmd ("instruction-history", class_obscure, cmd_record_insn_history, _("\
Print disassembled instructions stored in the execution log.\n\
-With a /m modifier, source lines are included (if available).\n\
+With a /m or /s modifier, source lines are included (if available).\n\
With a /r modifier, raw instructions in hex are included.\n\
With a /f modifier, function names are omitted.\n\
With a /p modifier, current position markers are omitted.\n\