aboutsummaryrefslogtreecommitdiff
path: root/gdb/record.c
diff options
context:
space:
mode:
authorPedro Alves <palves@redhat.com>2017-09-04 18:23:22 +0100
committerPedro Alves <palves@redhat.com>2017-09-04 18:23:22 +0100
commit9a24775b97646827396073d0d7e510b9694331ab (patch)
treed360279777f8163d750f17c01507fc671e24b4b6 /gdb/record.c
parent9521ecda6835b338d61b1b06e1a91706711b1d0b (diff)
downloadgdb-9a24775b97646827396073d0d7e510b9694331ab.zip
gdb-9a24775b97646827396073d0d7e510b9694331ab.tar.gz
gdb-9a24775b97646827396073d0d7e510b9694331ab.tar.bz2
Introduce gdb_disassembly_flags
For some reason I ended up staring at some of the "int flags" in btrace-related code, and I got confused because I had no clue what the flags where supposed to indicate. Fix that by using enum_flags, so that: #1 - it's clear from the type what the flags are about, and #2 - the compiler can catch mismatching mistakes gdb/ChangeLog: 2017-09-04 Pedro Alves <palves@redhat.com> * cli/cli-cmds.c (print_disassembly, disassemble_current_function) (disassemble_command): Use gdb_disassembly_flags instead of bare int. * disasm.c (gdb_pretty_print_disassembler::pretty_print_insn) (dump_insns, do_mixed_source_and_assembly_deprecated) (do_mixed_source_and_assembly, do_assembly_only, gdb_disassembly): Use gdb_disassembly_flags instead of bare int. * disasm.h (DISASSEMBLY_SOURCE_DEPRECATED, DISASSEMBLY_RAW_INSN) (DISASSEMBLY_OMIT_FNAME, DISASSEMBLY_FILENAME) (DISASSEMBLY_OMIT_PC, DISASSEMBLY_SOURCE) (DISASSEMBLY_SPECULATIVE): No longer macros. Instead they're... (enum gdb_disassembly_flag): ... values of this new enumeration. (gdb_disassembly_flags): Define. (gdb_disassembly) (gdb_pretty_print_disassembler::pretty_print_insn): Use it. * mi/mi-cmd-disas.c (mi_cmd_disassemble): Use gdb_disassembly_flags instead of bare int. * record-btrace.c (btrace_insn_history) (record_btrace_insn_history, record_btrace_insn_history_range) (record_btrace_insn_history_from): Use gdb_disassembly_flags instead of bare int. * record.c (get_insn_history_modifiers, cmd_record_insn_history): Use gdb_disassembly_flags instead of bare int. * target-debug.h (target_debug_print_gdb_disassembly_flags): Define. * target-delegates.c: Regenerate. * target.c (target_insn_history, target_insn_history_from) (target_insn_history_range): Use gdb_disassembly_flags instead of bare int. * target.h: Include "disasm.h". (struct target_ops) <to_insn_history, to_insn_history_from, to_insn_history_range>: Use gdb_disassembly_flags instead of bare int. (target_insn_history, target_insn_history_from) (target_insn_history_range): Use gdb_disassembly_flags instead of bare int.
Diffstat (limited to 'gdb/record.c')
-rw-r--r--gdb/record.c10
1 files changed, 4 insertions, 6 deletions
diff --git a/gdb/record.c b/gdb/record.c
index 16e5b03..9ee3560 100644
--- a/gdb/record.c
+++ b/gdb/record.c
@@ -470,10 +470,10 @@ no_chunk (char *arg)
/* Read instruction-history modifiers from an argument string. */
-static int
+static gdb_disassembly_flags
get_insn_history_modifiers (char **arg)
{
- int modifiers;
+ gdb_disassembly_flags modifiers;
char *args;
modifiers = 0;
@@ -551,13 +551,11 @@ command_size_to_target_size (unsigned int size)
static void
cmd_record_insn_history (char *arg, int from_tty)
{
- int flags, size;
-
require_record_target ();
- flags = get_insn_history_modifiers (&arg);
+ gdb_disassembly_flags flags = get_insn_history_modifiers (&arg);
- size = command_size_to_target_size (record_insn_history_size);
+ int size = command_size_to_target_size (record_insn_history_size);
if (arg == NULL || *arg == 0 || strcmp (arg, "+") == 0)
target_insn_history (size, flags);