aboutsummaryrefslogtreecommitdiff
path: root/gdb/tracefile.c
diff options
context:
space:
mode:
Diffstat (limited to 'gdb/tracefile.c')
-rw-r--r--gdb/tracefile.c122
1 files changed, 56 insertions, 66 deletions
diff --git a/gdb/tracefile.c b/gdb/tracefile.c
index b4543c9..ce1e8ed 100644
--- a/gdb/tracefile.c
+++ b/gdb/tracefile.c
@@ -28,15 +28,13 @@
/* Helper macros. */
-#define TRACE_WRITE_R_BLOCK(writer, buf, size) \
+#define TRACE_WRITE_R_BLOCK(writer, buf, size) \
writer->ops->frame_ops->write_r_block ((writer), (buf), (size))
-#define TRACE_WRITE_M_BLOCK_HEADER(writer, addr, size) \
- writer->ops->frame_ops->write_m_block_header ((writer), (addr), \
- (size))
-#define TRACE_WRITE_M_BLOCK_MEMORY(writer, buf, size) \
- writer->ops->frame_ops->write_m_block_memory ((writer), (buf), \
- (size))
-#define TRACE_WRITE_V_BLOCK(writer, num, val) \
+#define TRACE_WRITE_M_BLOCK_HEADER(writer, addr, size) \
+ writer->ops->frame_ops->write_m_block_header ((writer), (addr), (size))
+#define TRACE_WRITE_M_BLOCK_MEMORY(writer, buf, size) \
+ writer->ops->frame_ops->write_m_block_memory ((writer), (buf), (size))
+#define TRACE_WRITE_V_BLOCK(writer, num, val) \
writer->ops->frame_ops->write_v_block ((writer), (num), (val))
/* A unique pointer policy class for trace_file_writer. */
@@ -53,7 +51,7 @@ struct trace_file_writer_deleter
/* A unique_ptr specialization for trace_file_writer. */
typedef std::unique_ptr<trace_file_writer, trace_file_writer_deleter>
- trace_file_writer_up;
+ trace_file_writer_up;
/* Save tracepoint data to file named FILENAME through WRITER. WRITER
determines the trace file format. If TARGET_DOES_SAVE is non-zero,
@@ -78,8 +76,7 @@ trace_save (const char *filename, struct trace_file_writer *writer,
if (target_does_save)
{
if (!writer->ops->target_save (writer, filename))
- error (_("Target failed to save trace data to '%s'."),
- filename);
+ error (_ ("Target failed to save trace data to '%s'."), filename);
return;
}
@@ -150,7 +147,7 @@ trace_save (const char *filename, struct trace_file_writer *writer,
gotten = target_get_raw_trace_data (buf.data (), offset,
MAX_TRACE_UPLOAD);
if (gotten < 0)
- error (_("Failure to get requested trace buffer data"));
+ error (_ ("Failure to get requested trace buffer data"));
/* No more data is forthcoming, we're done. */
if (gotten == 0)
break;
@@ -173,11 +170,11 @@ trace_save (const char *filename, struct trace_file_writer *writer,
/* Read the first six bytes in, which is the tracepoint
number and trace frame size. */
- tp_num = (uint16_t)
- extract_unsigned_integer (&((buf.data ())[0]), 2, byte_order);
+ tp_num = (uint16_t) extract_unsigned_integer (&((buf.data ())[0]), 2,
+ byte_order);
- tf_size = (uint32_t)
- extract_unsigned_integer (&((buf.data ())[2]), 4, byte_order);
+ tf_size = (uint32_t) extract_unsigned_integer (&((buf.data ())[2]),
+ 4, byte_order);
writer->ops->frame_ops->start (writer, tp_num);
gotten = 6;
@@ -188,17 +185,16 @@ trace_save (const char *filename, struct trace_file_writer *writer,
offset += 6;
- for (block = 0; block < tf_size; )
+ for (block = 0; block < tf_size;)
{
gdb_byte block_type;
/* We'll fetch one block each time, in order to
handle the extremely large 'M' block. We first
fetch one byte to get the type of the block. */
- gotten = target_get_raw_trace_data (buf.data (),
- offset, 1);
+ gotten = target_get_raw_trace_data (buf.data (), offset, 1);
if (gotten < 1)
- error (_("Failure to get requested trace buffer data"));
+ error (_ ("Failure to get requested trace buffer data"));
gotten = 1;
block += 1;
@@ -208,12 +204,11 @@ trace_save (const char *filename, struct trace_file_writer *writer,
switch (block_type)
{
case 'R':
- gotten
- = target_get_raw_trace_data (buf.data (), offset,
- trace_regblock_size);
+ gotten = target_get_raw_trace_data (buf.data (), offset,
+ trace_regblock_size);
if (gotten < trace_regblock_size)
- error (_("Failure to get requested trace"
- " buffer data"));
+ error (_ ("Failure to get requested trace"
+ " buffer data"));
TRACE_WRITE_R_BLOCK (writer, buf.data (),
trace_regblock_size);
@@ -225,30 +220,29 @@ trace_save (const char *filename, struct trace_file_writer *writer,
LONGEST t;
int j;
- t = target_get_raw_trace_data (buf.data (),
- offset, 10);
+ t = target_get_raw_trace_data (buf.data (), offset,
+ 10);
if (t < 10)
- error (_("Failure to get requested trace"
- " buffer data"));
+ error (_ ("Failure to get requested trace"
+ " buffer data"));
offset += 10;
block += 10;
gotten = 0;
- addr = (ULONGEST)
- extract_unsigned_integer (buf.data (), 8,
- byte_order);
- mlen = (unsigned short)
- extract_unsigned_integer (&((buf.data ())[8]), 2,
- byte_order);
+ addr
+ = (ULONGEST) extract_unsigned_integer (buf.data (),
+ 8,
+ byte_order);
+ mlen = (unsigned short) extract_unsigned_integer (
+ &((buf.data ())[8]), 2, byte_order);
- TRACE_WRITE_M_BLOCK_HEADER (writer, addr,
- mlen);
+ TRACE_WRITE_M_BLOCK_HEADER (writer, addr, mlen);
/* The memory contents in 'M' block may be
very large. Fetch the data from the target
and write them into file one by one. */
- for (j = 0; j < mlen; )
+ for (j = 0; j < mlen;)
{
unsigned int read_length;
@@ -261,11 +255,10 @@ trace_save (const char *filename, struct trace_file_writer *writer,
offset + j,
read_length);
if (t < read_length)
- error (_("Failure to get requested"
- " trace buffer data"));
+ error (_ ("Failure to get requested"
+ " trace buffer data"));
- TRACE_WRITE_M_BLOCK_MEMORY (writer,
- buf.data (),
+ TRACE_WRITE_M_BLOCK_MEMORY (writer, buf.data (),
read_length);
j += read_length;
@@ -279,26 +272,23 @@ trace_save (const char *filename, struct trace_file_writer *writer,
int vnum;
LONGEST val;
- gotten
- = target_get_raw_trace_data (buf.data (),
- offset, 12);
+ gotten = target_get_raw_trace_data (buf.data (),
+ offset, 12);
if (gotten < 12)
- error (_("Failure to get requested"
- " trace buffer data"));
+ error (_ ("Failure to get requested"
+ " trace buffer data"));
- vnum = (int) extract_signed_integer (buf.data (),
- 4,
- byte_order);
- val
- = extract_signed_integer (&((buf.data ())[4]),
- 8, byte_order);
+ vnum = (int) extract_signed_integer (buf.data (), 4,
+ byte_order);
+ val = extract_signed_integer (&((buf.data ())[4]), 8,
+ byte_order);
TRACE_WRITE_V_BLOCK (writer, vnum, val);
}
break;
default:
- error (_("Unknown block type '%c' (0x%x) in"
- " trace frame"),
+ error (_ ("Unknown block type '%c' (0x%x) in"
+ " trace frame"),
block_type, block_type);
}
@@ -325,7 +315,7 @@ tsave_command (const char *args, int from_tty)
int generate_ctf = 0;
if (args == NULL)
- error_no_arg (_("file in which to save trace data"));
+ error_no_arg (_ ("file in which to save trace data"));
gdb_argv built_argv (args);
argv = built_argv.get ();
@@ -337,13 +327,13 @@ tsave_command (const char *args, int from_tty)
else if (strcmp (*argv, "-ctf") == 0)
generate_ctf = 1;
else if (**argv == '-')
- error (_("unknown option `%s'"), *argv);
+ error (_ ("unknown option `%s'"), *argv);
else
filename = *argv;
}
if (!filename)
- error_no_arg (_("file in which to save trace data"));
+ error_no_arg (_ ("file in which to save trace data"));
if (generate_ctf)
trace_save_ctf (filename, target_does_save);
@@ -351,7 +341,7 @@ tsave_command (const char *args, int from_tty)
trace_save_tfile (filename, target_does_save);
if (from_tty)
- gdb_printf (_("Trace data saved to %s '%s'.\n"),
+ gdb_printf (_ ("Trace data saved to %s '%s'.\n"),
generate_ctf ? "directory" : "file", filename);
}
@@ -396,23 +386,22 @@ tracefile_fetch_registers (struct regcache *regcache, int regno)
/* But don't try to guess if tracepoint is multi-location... */
if (tp->loc->next)
{
- warning (_("Tracepoint %d has multiple "
- "locations, cannot infer $pc"),
+ warning (_ ("Tracepoint %d has multiple "
+ "locations, cannot infer $pc"),
tp->number);
return;
}
/* ... or does while-stepping. */
else if (tp->step_count > 0)
{
- warning (_("Tracepoint %d does while-stepping, "
- "cannot infer $pc"),
+ warning (_ ("Tracepoint %d does while-stepping, "
+ "cannot infer $pc"),
tp->number);
return;
}
/* Guess what we can from the tracepoint location. */
- gdbarch_guess_tracepoint_registers (gdbarch, regcache,
- tp->loc->address);
+ gdbarch_guess_tracepoint_registers (gdbarch, regcache, tp->loc->address);
}
/* This is the implementation of target_ops method to_has_all_memory. */
@@ -473,10 +462,11 @@ tracefile_target::get_trace_status (struct trace_status *ts)
}
void _initialize_tracefile ();
+
void
_initialize_tracefile ()
{
- add_com ("tsave", class_trace, tsave_command, _("\
+ add_com ("tsave", class_trace, tsave_command, _ ("\
Save the trace data to a file.\n\
Use the '-ctf' option to save the data to CTF format.\n\
Use the '-r' option to direct the target to save directly to the file,\n\