mirror of
https://github.com/espressif/binutils-gdb.git
synced 2025-06-19 17:18:24 +08:00
probe: Replace VEC(probe_ops_cp) with std::vector
This patch replaces the usage of VEC to store pointers to probe_ops with an std::vector. The sole usage of that vector type is one global variable that holds the ops for the various kinds of probes, so this is pretty straightforward (no allocation/deallocation issues). gdb/ChangeLog: * probe.h (probe_ops_cp): Remove typedef. (DEF_VEC_P (probe_ops_cp)): Remove. (all_probe_ops): Change type to std::vector. * probe.c (info_probes_for_ops): Adjust to vector change. (probe_linespec_to_ops): Likewise. (all_probe_ops): Change type to std::vector. (_initialize_probe): Adjust to vector change. * dtrace-probe.c (_initialize_dtrace_probe): Likewise. * elfread.c (elf_get_probes): Likewise. * stap-probe.c (_initialize_stap_probe): Likewise.
This commit is contained in:
@ -1319,15 +1319,12 @@ elf_get_probes (struct objfile *objfile)
|
||||
|
||||
if (probes_per_bfd == NULL)
|
||||
{
|
||||
int ix;
|
||||
const struct probe_ops *probe_ops;
|
||||
probes_per_bfd = new std::vector<probe *>;
|
||||
|
||||
/* Here we try to gather information about all types of probes from the
|
||||
objfile. */
|
||||
for (ix = 0; VEC_iterate (probe_ops_cp, all_probe_ops, ix, probe_ops);
|
||||
ix++)
|
||||
probe_ops->get_probes (probes_per_bfd, objfile);
|
||||
for (const probe_ops *ops : all_probe_ops)
|
||||
ops->get_probes (probes_per_bfd, objfile);
|
||||
|
||||
set_bfd_data (objfile->obfd, probe_key, probes_per_bfd);
|
||||
}
|
||||
|
Reference in New Issue
Block a user