From 8710b7097e6564969c5e417007a438d8f4ab710e Mon Sep 17 00:00:00 2001 From: Markus Metzger Date: Thu, 18 Apr 2013 10:58:05 +0200 Subject: record-btrace: optionally indent function call history Add a new modifier /c to the "record function-call-history" command to indent the function name based on its depth in the call stack. Also reorder the optional fields to have the indentation at the very beginning. Prefix the insn range (/i modifier) with "inst ". Prefix the source line (/l modifier) with "at ". Change the range syntax from "begin-end" to "begin,end" to allow copy&paste to the "record instruction-history" and "list" commands. Adjust the respective tests and add new tests for the /c modifier. 2014-01-16 Markus Metzger * record.h (enum record_print_flag) : New. * record.c (get_call_history_modifiers): Recognize /c modifier. (_initialize_record): Document /c modifier. * record-btrace.c (btrace_call_history): Add btinfo parameter. Reorder fields. Optionally indent the function name. Update all users. * NEWS: Announce changes. testsuite/ * gdb.btrace/function_call_history.exp: Fix expected field order for "record function-call-history". Add new tests for "record function-call-history /c". * gdb.btrace/exception.cc: New. * gdb.btrace/exception.exp: New. * gdb.btrace/tailcall.exp: New. * gdb.btrace/x86-tailcall.S: New. * gdb.btrace/x86-tailcall.c: New. * gdb.btrace/unknown_functions.c: New. * gdb.btrace/unknown_functions.exp: New. * gdb.btrace/Makefile.in (EXECUTABLES): Add new. doc/ * gdb.texinfo (Process Record and Replay): Document new /c modifier accepted by "record function-call-history". Add /i modifier to "record function-call-history" example. --- gdb/record.h | 3 +++ 1 file changed, 3 insertions(+) (limited to 'gdb/record.h') diff --git a/gdb/record.h b/gdb/record.h index 962e382..17d1772 100644 --- a/gdb/record.h +++ b/gdb/record.h @@ -38,6 +38,9 @@ enum record_print_flag /* Print the instruction number range (if applicable). */ RECORD_PRINT_INSN_RANGE = (1 << 1), + + /* Indent based on call stack depth (if applicable). */ + RECORD_PRINT_INDENT_CALLS = (1 << 2) }; /* Wrapper for target_read_memory that prints a debug message if -- cgit v1.1