From 393fd4c3768e4babdc112fded0bde4aedd40925e Mon Sep 17 00:00:00 2001 From: Yao Qi Date: Wed, 10 Apr 2013 09:42:57 +0000 Subject: gdb/ 2013-04-10 Hui Zhu Yao Qi * configure.ac: Check libbabeltrace is installed. * config.in: Regenerate. * configure: Regenerate. * Makefile.in (LIBBABELTRACE): New. (CLIBS): Add LIBBABELTRACE. * ctf.c: Include "exec.h". (CTF_EVENT_ID_STATUS, CTF_EVENT_ID_TSV_DEF): New macros. (CTF_EVENT_ID_TP_DEF, ctf_save_write_int32): New macros. (ctf_save_metadata_header): Define new type aliases in metadata. (ctf_write_header): Define event type "tsv_def" and "tp_def" in metadata. Start a new faked packet for trace status. (ctf_write_status): Write trace status to CTF. (ctf_write_uploaded_tsv): Write TSV to CTF. (ctf_write_uploaded_tp): Write tracepoint definition to CTF. (ctf_write_definition_end): End the faked packet. (ctx, ctf_iter, trace_dirname): New. (start_pos): New variable. (ctf_destroy, ctf_open_dir, ctf_open): New. (SET_INT32_FIELD, SET_ARRAY_FIELD, SET_STRING_FIELD): New macros. (ctf_read_tsv, ctf_read_tp, ctf_close, ctf_files_info): New. (ctf_fetch_registers, ctf_xfer_partial): New. (ctf_get_trace_state_variable_value): New. (ctf_get_tpnum_from_frame_event): New. (ctf_get_traceframe_address): New. (ctf_trace_find, ctf_has_stack): New. (ctf_has_registers, ctf_traceframe_info, init_ctf_ops): New. (ctf_get_trace_status, ctf_read_status): New. (_initialize_ctf): New. * tracepoint.c (get_tracepoint_number): New (get_uploaded_tsv): Remove 'static'. (struct traceframe_info, trace_regblock_size): Move it to ... * tracepoint.h: ... here. (get_tracepoint_number): Declare it. (get_uploaded_tsv): Declare it. * NEWS: Mention new configure option. gdb/doc/ 2013-04-10 Yao Qi * gdb.texinfo (Trace Files): Add "target ctf". gdb/testsuite/ 2013-04-10 Yao Qi * gdb.trace/actions.exp: Save trace data to CTF. Change to ctf target if GDB supports, read CTF data in ctf target, and check the actions of tracepoints. * gdb.trace/while-stepping.exp: Likewise. * gdb.trace/report.exp: Test GDB saves trace data to CTF format and read CTF trace file if GDB supports. * gdb.trace/tstatus.exp: Save trace data to CTF. If ctf target is supported, change to ctf target, read trace data and check output of command "tstatus". * gdb.trace/tsv.exp: Save trace frame to CTF. If GDB supports, read CTF data by target ctf and call check_tsv. --- gdb/testsuite/gdb.trace/report.exp | 14 ++++++++++++++ 1 file changed, 14 insertions(+) (limited to 'gdb/testsuite/gdb.trace/report.exp') diff --git a/gdb/testsuite/gdb.trace/report.exp b/gdb/testsuite/gdb.trace/report.exp index 3c3025d..8bb71e4 100644 --- a/gdb/testsuite/gdb.trace/report.exp +++ b/gdb/testsuite/gdb.trace/report.exp @@ -412,6 +412,11 @@ gdb_test "tsave ${tracefile}.tf" \ "Trace data saved to file '${tracefile}.tf'.*" \ "save tfile trace file" +# Save trace frames to ctf. +gdb_test "tsave -ctf ${tracefile}.ctf" \ + "Trace data saved to directory '${tracefile}.ctf'.*" \ + "save ctf trace file" + # Change target to tfile. set test "change to tfile target" gdb_test_multiple "target tfile ${tracefile}.tf" "$test" { @@ -425,3 +430,12 @@ gdb_test_multiple "target tfile ${tracefile}.tf" "$test" { } # Test the collected trace frames from tfile. use_collected_data "tfile" + +# Try to read ctf data if GDB supports. +gdb_test_multiple "target ctf ${tracefile}.ctf" "" { + -re "Undefined target command: \"ctf ${tracefile}.ctf\"\. Try \"help target\"\.\r\n$gdb_prompt $" { + } + -re ".*\r\n$gdb_prompt $" { + use_collected_data "ctf" + } +} -- cgit v1.1