mirror of
https://github.com/espressif/binutils-gdb.git
synced 2025-06-19 09:14:14 +08:00
Remove VEC(tsv_s), use std::vector instead
This patch removes VEC(tsv_s), using an std::vector instead. I C++ified trace_state_variable a bit in the process, using std::string for the name. I also thought it would be nicer to pass a const reference to target_download_trace_state_variable, since we know it will never be NULL. This highlighted that the make-target-delegates script didn't handle references well, so I adjusted this as well. It will surely be useful in the future. gdb/ChangeLog: * tracepoint.h (struct trace_state_variable): Add constructor. <name>: Change type to std::string. * tracepoint.c (tsv_s): Remove. (DEF_VEC_O(tsv_s)): Remove. (tvariables): Change to std::vector. (create_trace_state_variable): Adjust to std::vector. (find_trace_state_variable): Likewise. (find_trace_state_variable_by_number): Likewise. (delete_trace_state_variable): Likewise. (trace_variable_command): Adjust to std::string. (delete_trace_variable_command): Likewise. (tvariables_info_1): Adjust to std::vector. (save_trace_state_variables): Likewise. (start_tracing): Likewise. (merge_uploaded_trace_state_variables): Adjust to std::vector and std::string. * target.h (struct target_ops) <to_download_trace_state_variable>: Pass reference to trace_state_variable. * target-debug.h (target_debug_print_const_trace_state_variable_r): New. * target-delegates.c: Re-generate. * mi/mi-interp.c (mi_tsv_created): Adjust to std::string. (mi_tsv_deleted): Likewise. * mi/mi-main.c (mi_cmd_trace_frame_collected): Likewise. * remote.c (remote_download_trace_state_variable): Change pointer to reference and adjust. * make-target-delegates (parse_argtypes): Handle references. (write_function_header): Likewise. (munge_type): Likewise.
This commit is contained in:

committed by
Simon Marchi

parent
c9638d2669
commit
c252925ccc
@ -47,29 +47,33 @@ typedef std::unique_ptr<traceframe_info> traceframe_info_up;
|
||||
tracepoints. */
|
||||
|
||||
struct trace_state_variable
|
||||
{
|
||||
/* The variable's name. The user has to prefix with a dollar sign,
|
||||
but we don't store that internally. */
|
||||
const char *name;
|
||||
{
|
||||
trace_state_variable (std::string &&name_, int number_)
|
||||
: name (name_), number (number_)
|
||||
{}
|
||||
|
||||
/* An id number assigned by GDB, and transmitted to targets. */
|
||||
int number;
|
||||
/* The variable's name. The user has to prefix with a dollar sign,
|
||||
but we don't store that internally. */
|
||||
std::string name;
|
||||
|
||||
/* The initial value of a variable is a 64-bit signed integer. */
|
||||
LONGEST initial_value;
|
||||
/* An id number assigned by GDB, and transmitted to targets. */
|
||||
int number = 0;
|
||||
|
||||
/* 1 if the value is known, else 0. The value is known during a
|
||||
trace run, or in tfind mode if the variable was collected into
|
||||
the current trace frame. */
|
||||
int value_known;
|
||||
/* The initial value of a variable is a 64-bit signed integer. */
|
||||
LONGEST initial_value = 0;
|
||||
|
||||
/* The value of a variable is a 64-bit signed integer. */
|
||||
LONGEST value;
|
||||
/* 1 if the value is known, else 0. The value is known during a
|
||||
trace run, or in tfind mode if the variable was collected into
|
||||
the current trace frame. */
|
||||
int value_known = 0;
|
||||
|
||||
/* This is true for variables that are predefined and built into
|
||||
the target. */
|
||||
int builtin;
|
||||
};
|
||||
/* The value of a variable is a 64-bit signed integer. */
|
||||
LONGEST value = 0;
|
||||
|
||||
/* This is true for variables that are predefined and built into
|
||||
the target. */
|
||||
int builtin = 0;
|
||||
};
|
||||
|
||||
/* The trace status encompasses various info about the general state
|
||||
of the tracing run. */
|
||||
|
Reference in New Issue
Block a user