mirror of
https://github.com/espressif/binutils-gdb.git
synced 2025-06-23 03:29:47 +08:00
Merge probe and ordinary tracepoints
Right now, probe tracepoints are handled by a separate ops object. However, they differ only in a small way from ordinary tracepoints, and furthermore can be distinguished by their event location. This patch merges the two cases, just as was done for breakpoints.
This commit is contained in:
@ -12273,6 +12273,9 @@ std::vector<symtab_and_line>
|
|||||||
tracepoint::decode_location (struct event_location *location,
|
tracepoint::decode_location (struct event_location *location,
|
||||||
struct program_space *search_pspace)
|
struct program_space *search_pspace)
|
||||||
{
|
{
|
||||||
|
if (event_location_type (location) == PROBE_LOCATION)
|
||||||
|
return bkpt_probe_decode_location (this, location, search_pspace);
|
||||||
|
|
||||||
return decode_location_default (this, location, search_pspace);
|
return decode_location_default (this, location, search_pspace);
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -12288,15 +12291,6 @@ tracepoint_probe_create_sals_from_location
|
|||||||
bkpt_probe_create_sals_from_location (location, canonical, type_wanted);
|
bkpt_probe_create_sals_from_location (location, canonical, type_wanted);
|
||||||
}
|
}
|
||||||
|
|
||||||
static std::vector<symtab_and_line>
|
|
||||||
tracepoint_probe_decode_location (struct breakpoint *b,
|
|
||||||
struct event_location *location,
|
|
||||||
struct program_space *search_pspace)
|
|
||||||
{
|
|
||||||
/* We use the same method for breakpoint on probes. */
|
|
||||||
return bkpt_probe_decode_location (b, location, search_pspace);
|
|
||||||
}
|
|
||||||
|
|
||||||
void
|
void
|
||||||
dprintf_breakpoint::re_set ()
|
dprintf_breakpoint::re_set ()
|
||||||
{
|
{
|
||||||
@ -14582,7 +14576,6 @@ initialize_breakpoint_ops (void)
|
|||||||
ops = &tracepoint_probe_breakpoint_ops;
|
ops = &tracepoint_probe_breakpoint_ops;
|
||||||
*ops = vtable_breakpoint_ops;
|
*ops = vtable_breakpoint_ops;
|
||||||
ops->create_sals_from_location = tracepoint_probe_create_sals_from_location;
|
ops->create_sals_from_location = tracepoint_probe_create_sals_from_location;
|
||||||
ops->decode_location = tracepoint_probe_decode_location;
|
|
||||||
|
|
||||||
/* Static tracepoints with marker (`-m'). */
|
/* Static tracepoints with marker (`-m'). */
|
||||||
ops = &strace_marker_breakpoint_ops;
|
ops = &strace_marker_breakpoint_ops;
|
||||||
|
Reference in New Issue
Block a user