diff options
author | Pedro Alves <pedro@palves.net> | 2022-05-06 23:11:34 +0100 |
---|---|---|
committer | Pedro Alves <pedro@palves.net> | 2022-05-20 20:41:00 +0100 |
commit | ff733ec228e3f4f1c1607fe50aeb944505105fde (patch) | |
tree | b6f5ae051a9aa5b251a7c012b10b9f696dd2834d /gdb/breakpoint.h | |
parent | b925bf21e073f0d9531385e8cfc3a825887c0778 (diff) | |
download | gdb-ff733ec228e3f4f1c1607fe50aeb944505105fde.zip gdb-ff733ec228e3f4f1c1607fe50aeb944505105fde.tar.gz gdb-ff733ec228e3f4f1c1607fe50aeb944505105fde.tar.bz2 |
Make a few functions work with base_breakpoint instead of breakpoint
This makes tracepoints inherit from base_breakpoint, since their
locations are code locations. If we do that, then we can eliminate
tracepoint::re_set and tracepoint::decode_location, as they are doing
the same as the base_breakpoint implementations.
With this, all breakpoint types created by new_breakpoint_from_type
are code breakpoints, i.e., base_breakpoint subclasses, and thus we
can make it return a base_breakpoint pointer.
Finally, init_breakpoint_sal can take a base_breakpoint pointer as
"self" pointer too. This will let us convert this function to a
base_breakpoint ctor in a following patch.
Change-Id: I3a4073ff1a4c865f525588095c18dc42b744cb54
Diffstat (limited to 'gdb/breakpoint.h')
-rw-r--r-- | gdb/breakpoint.h | 9 |
1 files changed, 2 insertions, 7 deletions
diff --git a/gdb/breakpoint.h b/gdb/breakpoint.h index b7e3b4d..48cecea 100644 --- a/gdb/breakpoint.h +++ b/gdb/breakpoint.h @@ -974,21 +974,16 @@ extern bool is_exception_catchpoint (breakpoint *bp); /* An instance of this type is used to represent all kinds of tracepoints. */ -struct tracepoint : public breakpoint +struct tracepoint : public base_breakpoint { - using breakpoint::breakpoint; + using base_breakpoint::base_breakpoint; - void re_set () override; int breakpoint_hit (const struct bp_location *bl, const address_space *aspace, CORE_ADDR bp_addr, const target_waitstatus &ws) override; void print_one_detail (struct ui_out *uiout) const override; void print_mention () const override; void print_recreate (struct ui_file *fp) const override; - std::vector<symtab_and_line> decode_location - (struct event_location *location, - struct program_space *search_pspace) override; - /* Number of times this tracepoint should single-step and collect additional data. */ |