X-Git-Url: https://review.openocd.org/gitweb?p=openocd.git;a=blobdiff_plain;f=src%2Ftarget%2Ftrace.c;h=9c2d3698cff5e2035be93f0ced3b2242d4cd70cf;hp=56a18a4f9fe3de5d1bc0baa6def514ef72e03168;hb=ae3baa9d5a09fa6b3ef23c74ea16f7a10b8a6406;hpb=b3bf1d12b2fdfba1c1cbee3e1afbfbb27cbd1a26 diff --git a/src/target/trace.c b/src/target/trace.c index 56a18a4f9f..9c2d3698cf 100644 --- a/src/target/trace.c +++ b/src/target/trace.c @@ -15,8 +15,9 @@ * You should have received a copy of the GNU General Public License * * along with this program; if not, write to the * * Free Software Foundation, Inc., * - * 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. * + * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. * ***************************************************************************/ + #ifdef HAVE_CONFIG_H #include "config.h" #endif @@ -34,11 +35,9 @@ int trace_point(struct target *target, uint32_t number) if (number < trace->num_trace_points) trace->trace_points[number].hit_counter++; - if (trace->trace_history_size) - { + if (trace->trace_history_size) { trace->trace_history[trace->trace_history_pos++] = number; - if (trace->trace_history_pos == trace->trace_history_size) - { + if (trace->trace_history_pos == trace->trace_history_size) { trace->trace_history_pos = 0; trace->trace_history_overflowed = 1; } @@ -52,12 +51,10 @@ COMMAND_HANDLER(handle_trace_point_command) struct target *target = get_current_target(CMD_CTX); struct trace *trace = target->trace_info; - if (CMD_ARGC == 0) - { + if (CMD_ARGC == 0) { uint32_t i; - for (i = 0; i < trace->num_trace_points; i++) - { + for (i = 0; i < trace->num_trace_points; i++) { command_print(CMD_CTX, "trace point 0x%8.8" PRIx32 " (%lld times hit)", trace->trace_points[i].address, (long long)trace->trace_points[i].hit_counter); @@ -66,10 +63,8 @@ COMMAND_HANDLER(handle_trace_point_command) return ERROR_OK; } - if (!strcmp(CMD_ARGV[0], "clear")) - { - if (trace->trace_points) - { + if (!strcmp(CMD_ARGV[0], "clear")) { + if (trace->trace_points) { free(trace->trace_points); trace->trace_points = NULL; } @@ -80,9 +75,9 @@ COMMAND_HANDLER(handle_trace_point_command) } /* resize array if necessary */ - if (!trace->trace_points || (trace->trace_points_size == trace->num_trace_points)) - { - trace->trace_points = realloc(trace->trace_points, sizeof(struct trace_point) * (trace->trace_points_size + 32)); + if (!trace->trace_points || (trace->trace_points_size == trace->num_trace_points)) { + trace->trace_points = realloc(trace->trace_points, + sizeof(struct trace_point) * (trace->trace_points_size + 32)); trace->trace_points_size += 32; } @@ -100,13 +95,11 @@ COMMAND_HANDLER(handle_trace_history_command) struct target *target = get_current_target(CMD_CTX); struct trace *trace = target->trace_info; - if (CMD_ARGC > 0) - { + if (CMD_ARGC > 0) { trace->trace_history_pos = 0; trace->trace_history_overflowed = 0; - if (!strcmp(CMD_ARGV[0], "clear")) - { + if (!strcmp(CMD_ARGV[0], "clear")) { /* clearing is implicit, we've just reset position anyway */ return ERROR_OK; } @@ -118,9 +111,7 @@ COMMAND_HANDLER(handle_trace_history_command) trace->trace_history = malloc(sizeof(uint32_t) * trace->trace_history_size); command_print(CMD_CTX, "new trace history size: %i", (int)(trace->trace_history_size)); - } - else - { + } else { uint32_t i; uint32_t first = 0; uint32_t last = trace->trace_history_pos; @@ -129,27 +120,22 @@ COMMAND_HANDLER(handle_trace_history_command) command_print(CMD_CTX, "trace history buffer is not allocated"); return ERROR_OK; } - if (trace->trace_history_overflowed) - { + + if (trace->trace_history_overflowed) { first = trace->trace_history_pos; last = trace->trace_history_pos - 1; } - for (i = first; (i % trace->trace_history_size) != last; i++) - { - if (trace->trace_history[i % trace->trace_history_size] < trace->num_trace_points) - { + for (i = first; (i % trace->trace_history_size) != last; i++) { + if (trace->trace_history[i % trace->trace_history_size] < trace->num_trace_points) { uint32_t address; address = trace->trace_points[trace->trace_history[i % trace->trace_history_size]].address; command_print(CMD_CTX, "trace point %i: 0x%8.8" PRIx32 "", - (int)(trace->trace_history[i % trace->trace_history_size]), - address); - } - - else - { - command_print(CMD_CTX, "trace point %i: -not defined-", (int)(trace->trace_history[i % trace->trace_history_size])); - } + (int)(trace->trace_history[i % trace->trace_history_size]), + address); + } else + command_print(CMD_CTX, "trace point %i: -not defined-", + (int)(trace->trace_history[i % trace->trace_history_size])); } } @@ -159,18 +145,18 @@ COMMAND_HANDLER(handle_trace_history_command) static const struct command_registration trace_exec_command_handlers[] = { { .name = "history", - .handler = &handle_trace_history_command, + .handler = handle_trace_history_command, .mode = COMMAND_EXEC, - .help = "display trace history, clear history or set [size]", - .usage = "[clear|]", + .help = "display trace history, clear history or set size", + .usage = "['clear'|size]", }, { .name = "point", - .handler = &handle_trace_point_command, + .handler = handle_trace_point_command, .mode = COMMAND_EXEC, .help = "display trace points, clear list of trace points, " - "or add new tracepoint at [address]", - .usage = "[clear|
]", + "or add new tracepoint at address", + .usage = "['clear'|address]", }, COMMAND_REGISTRATION_DONE }; @@ -179,6 +165,7 @@ static const struct command_registration trace_command_handlers[] = { .name = "trace", .mode = COMMAND_EXEC, .help = "trace command group", + .usage = "", .chain = trace_exec_command_handlers, }, COMMAND_REGISTRATION_DONE