Remove vtable_breakpoint_ops
There's no need to have vtable_breakpoint_ops any more, so remove it in favor of base_breakpoint_ops.
This commit is contained in:
parent
c47614fef9
commit
a0cd5f080b
4 changed files with 34 additions and 67 deletions
|
@ -3346,7 +3346,7 @@ create_overlay_event_breakpoint (void)
|
||||||
addr = bp_objfile_data->overlay_msym.value_address ();
|
addr = bp_objfile_data->overlay_msym.value_address ();
|
||||||
b = create_internal_breakpoint (objfile->arch (), addr,
|
b = create_internal_breakpoint (objfile->arch (), addr,
|
||||||
bp_overlay_event,
|
bp_overlay_event,
|
||||||
&vtable_breakpoint_ops);
|
&base_breakpoint_ops);
|
||||||
initialize_explicit_location (&explicit_loc);
|
initialize_explicit_location (&explicit_loc);
|
||||||
explicit_loc.function_name = ASTRDUP (func_name);
|
explicit_loc.function_name = ASTRDUP (func_name);
|
||||||
b->location = new_explicit_location (&explicit_loc);
|
b->location = new_explicit_location (&explicit_loc);
|
||||||
|
@ -3406,7 +3406,7 @@ create_longjmp_master_breakpoint_probe (objfile *objfile)
|
||||||
b = create_internal_breakpoint (gdbarch,
|
b = create_internal_breakpoint (gdbarch,
|
||||||
p->get_relocated_address (objfile),
|
p->get_relocated_address (objfile),
|
||||||
bp_longjmp_master,
|
bp_longjmp_master,
|
||||||
&vtable_breakpoint_ops);
|
&base_breakpoint_ops);
|
||||||
b->location = new_probe_location ("-probe-stap libc:longjmp");
|
b->location = new_probe_location ("-probe-stap libc:longjmp");
|
||||||
b->enable_state = bp_disabled;
|
b->enable_state = bp_disabled;
|
||||||
}
|
}
|
||||||
|
@ -3455,7 +3455,7 @@ create_longjmp_master_breakpoint_names (objfile *objfile)
|
||||||
|
|
||||||
addr = bp_objfile_data->longjmp_msym[i].value_address ();
|
addr = bp_objfile_data->longjmp_msym[i].value_address ();
|
||||||
b = create_internal_breakpoint (gdbarch, addr, bp_longjmp_master,
|
b = create_internal_breakpoint (gdbarch, addr, bp_longjmp_master,
|
||||||
&vtable_breakpoint_ops);
|
&base_breakpoint_ops);
|
||||||
initialize_explicit_location (&explicit_loc);
|
initialize_explicit_location (&explicit_loc);
|
||||||
explicit_loc.function_name = ASTRDUP (func_name);
|
explicit_loc.function_name = ASTRDUP (func_name);
|
||||||
b->location = new_explicit_location (&explicit_loc);
|
b->location = new_explicit_location (&explicit_loc);
|
||||||
|
@ -3539,7 +3539,7 @@ create_std_terminate_master_breakpoint (void)
|
||||||
addr = bp_objfile_data->terminate_msym.value_address ();
|
addr = bp_objfile_data->terminate_msym.value_address ();
|
||||||
b = create_internal_breakpoint (objfile->arch (), addr,
|
b = create_internal_breakpoint (objfile->arch (), addr,
|
||||||
bp_std_terminate_master,
|
bp_std_terminate_master,
|
||||||
&vtable_breakpoint_ops);
|
&base_breakpoint_ops);
|
||||||
initialize_explicit_location (&explicit_loc);
|
initialize_explicit_location (&explicit_loc);
|
||||||
explicit_loc.function_name = ASTRDUP (func_name);
|
explicit_loc.function_name = ASTRDUP (func_name);
|
||||||
b->location = new_explicit_location (&explicit_loc);
|
b->location = new_explicit_location (&explicit_loc);
|
||||||
|
@ -3592,7 +3592,7 @@ create_exception_master_breakpoint_probe (objfile *objfile)
|
||||||
b = create_internal_breakpoint (gdbarch,
|
b = create_internal_breakpoint (gdbarch,
|
||||||
p->get_relocated_address (objfile),
|
p->get_relocated_address (objfile),
|
||||||
bp_exception_master,
|
bp_exception_master,
|
||||||
&vtable_breakpoint_ops);
|
&base_breakpoint_ops);
|
||||||
b->location = new_probe_location ("-probe-stap libgcc:unwind");
|
b->location = new_probe_location ("-probe-stap libgcc:unwind");
|
||||||
b->enable_state = bp_disabled;
|
b->enable_state = bp_disabled;
|
||||||
}
|
}
|
||||||
|
@ -3638,7 +3638,7 @@ create_exception_master_breakpoint_hook (objfile *objfile)
|
||||||
addr = gdbarch_convert_from_func_ptr_addr
|
addr = gdbarch_convert_from_func_ptr_addr
|
||||||
(gdbarch, addr, current_inferior ()->top_target ());
|
(gdbarch, addr, current_inferior ()->top_target ());
|
||||||
b = create_internal_breakpoint (gdbarch, addr, bp_exception_master,
|
b = create_internal_breakpoint (gdbarch, addr, bp_exception_master,
|
||||||
&vtable_breakpoint_ops);
|
&base_breakpoint_ops);
|
||||||
initialize_explicit_location (&explicit_loc);
|
initialize_explicit_location (&explicit_loc);
|
||||||
explicit_loc.function_name = ASTRDUP (func_name);
|
explicit_loc.function_name = ASTRDUP (func_name);
|
||||||
b->location = new_explicit_location (&explicit_loc);
|
b->location = new_explicit_location (&explicit_loc);
|
||||||
|
@ -7376,7 +7376,7 @@ set_longjmp_breakpoint (struct thread_info *tp, struct frame_id frame)
|
||||||
/* longjmp_breakpoint_ops ensures INITIATING_FRAME is cleared again
|
/* longjmp_breakpoint_ops ensures INITIATING_FRAME is cleared again
|
||||||
after their removal. */
|
after their removal. */
|
||||||
clone = momentary_breakpoint_from_master (b, type,
|
clone = momentary_breakpoint_from_master (b, type,
|
||||||
&vtable_breakpoint_ops, 1);
|
&base_breakpoint_ops, 1);
|
||||||
clone->thread = thread;
|
clone->thread = thread;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -7422,7 +7422,7 @@ set_longjmp_breakpoint_for_call_dummy (void)
|
||||||
struct breakpoint *new_b;
|
struct breakpoint *new_b;
|
||||||
|
|
||||||
new_b = momentary_breakpoint_from_master (b, bp_longjmp_call_dummy,
|
new_b = momentary_breakpoint_from_master (b, bp_longjmp_call_dummy,
|
||||||
&vtable_breakpoint_ops,
|
&base_breakpoint_ops,
|
||||||
1);
|
1);
|
||||||
new_b->thread = inferior_thread ()->global_num;
|
new_b->thread = inferior_thread ()->global_num;
|
||||||
|
|
||||||
|
@ -7554,7 +7554,7 @@ set_std_terminate_breakpoint (void)
|
||||||
&& b->type == bp_std_terminate_master)
|
&& b->type == bp_std_terminate_master)
|
||||||
{
|
{
|
||||||
momentary_breakpoint_from_master (b, bp_std_terminate,
|
momentary_breakpoint_from_master (b, bp_std_terminate,
|
||||||
&vtable_breakpoint_ops, 1);
|
&base_breakpoint_ops, 1);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -7573,7 +7573,7 @@ create_thread_event_breakpoint (struct gdbarch *gdbarch, CORE_ADDR address)
|
||||||
struct breakpoint *b;
|
struct breakpoint *b;
|
||||||
|
|
||||||
b = create_internal_breakpoint (gdbarch, address, bp_thread_event,
|
b = create_internal_breakpoint (gdbarch, address, bp_thread_event,
|
||||||
&vtable_breakpoint_ops);
|
&base_breakpoint_ops);
|
||||||
|
|
||||||
b->enable_state = bp_enabled;
|
b->enable_state = bp_enabled;
|
||||||
/* location has to be used or breakpoint_re_set will delete me. */
|
/* location has to be used or breakpoint_re_set will delete me. */
|
||||||
|
@ -7596,7 +7596,7 @@ struct breakpoint *
|
||||||
create_jit_event_breakpoint (struct gdbarch *gdbarch, CORE_ADDR address)
|
create_jit_event_breakpoint (struct gdbarch *gdbarch, CORE_ADDR address)
|
||||||
{
|
{
|
||||||
return create_internal_breakpoint (gdbarch, address, bp_jit_event,
|
return create_internal_breakpoint (gdbarch, address, bp_jit_event,
|
||||||
&vtable_breakpoint_ops);
|
&base_breakpoint_ops);
|
||||||
}
|
}
|
||||||
|
|
||||||
/* Remove JIT code registration and unregistration breakpoint(s). */
|
/* Remove JIT code registration and unregistration breakpoint(s). */
|
||||||
|
@ -7641,7 +7641,7 @@ create_solib_event_breakpoint_1 (struct gdbarch *gdbarch, CORE_ADDR address,
|
||||||
struct breakpoint *b;
|
struct breakpoint *b;
|
||||||
|
|
||||||
b = create_internal_breakpoint (gdbarch, address, bp_shlib_event,
|
b = create_internal_breakpoint (gdbarch, address, bp_shlib_event,
|
||||||
&vtable_breakpoint_ops);
|
&base_breakpoint_ops);
|
||||||
update_global_location_list_nothrow (insert_mode);
|
update_global_location_list_nothrow (insert_mode);
|
||||||
return b;
|
return b;
|
||||||
}
|
}
|
||||||
|
@ -7826,7 +7826,7 @@ init_catchpoint (struct breakpoint *b,
|
||||||
sal.pspace = current_program_space;
|
sal.pspace = current_program_space;
|
||||||
|
|
||||||
init_raw_breakpoint (b, gdbarch, sal, bp_catchpoint,
|
init_raw_breakpoint (b, gdbarch, sal, bp_catchpoint,
|
||||||
&vtable_breakpoint_ops);
|
&base_breakpoint_ops);
|
||||||
|
|
||||||
if (cond_string == nullptr)
|
if (cond_string == nullptr)
|
||||||
b->cond_string.reset ();
|
b->cond_string.reset ();
|
||||||
|
@ -7961,7 +7961,7 @@ new_single_step_breakpoint (int thread, struct gdbarch *gdbarch)
|
||||||
std::unique_ptr<breakpoint> b (new momentary_breakpoint ());
|
std::unique_ptr<breakpoint> b (new momentary_breakpoint ());
|
||||||
|
|
||||||
init_raw_breakpoint_without_location (b.get (), gdbarch, bp_single_step,
|
init_raw_breakpoint_without_location (b.get (), gdbarch, bp_single_step,
|
||||||
&vtable_breakpoint_ops);
|
&base_breakpoint_ops);
|
||||||
|
|
||||||
b->disposition = disp_donttouch;
|
b->disposition = disp_donttouch;
|
||||||
b->frame_id = null_frame_id;
|
b->frame_id = null_frame_id;
|
||||||
|
@ -7986,7 +7986,7 @@ set_momentary_breakpoint (struct gdbarch *gdbarch, struct symtab_and_line sal,
|
||||||
tail-called one. */
|
tail-called one. */
|
||||||
gdb_assert (!frame_id_artificial_p (frame_id));
|
gdb_assert (!frame_id_artificial_p (frame_id));
|
||||||
|
|
||||||
b = set_raw_breakpoint (gdbarch, sal, type, &vtable_breakpoint_ops);
|
b = set_raw_breakpoint (gdbarch, sal, type, &base_breakpoint_ops);
|
||||||
b->enable_state = bp_enabled;
|
b->enable_state = bp_enabled;
|
||||||
b->disposition = disp_donttouch;
|
b->disposition = disp_donttouch;
|
||||||
b->frame_id = frame_id;
|
b->frame_id = frame_id;
|
||||||
|
@ -8045,7 +8045,7 @@ clone_momentary_breakpoint (struct breakpoint *orig)
|
||||||
if (orig == NULL)
|
if (orig == NULL)
|
||||||
return NULL;
|
return NULL;
|
||||||
|
|
||||||
gdb_assert (orig->ops == &vtable_breakpoint_ops);
|
gdb_assert (orig->ops == &base_breakpoint_ops);
|
||||||
return momentary_breakpoint_from_master (orig, orig->type, orig->ops, 0);
|
return momentary_breakpoint_from_master (orig, orig->type, orig->ops, 0);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -8828,14 +8828,14 @@ breakpoint_ops_for_event_location_type (enum event_location_type location_type,
|
||||||
if (location_type == PROBE_LOCATION)
|
if (location_type == PROBE_LOCATION)
|
||||||
return &tracepoint_probe_breakpoint_ops;
|
return &tracepoint_probe_breakpoint_ops;
|
||||||
else
|
else
|
||||||
return &vtable_breakpoint_ops;
|
return &base_breakpoint_ops;
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
if (location_type == PROBE_LOCATION)
|
if (location_type == PROBE_LOCATION)
|
||||||
return &bkpt_probe_breakpoint_ops;
|
return &bkpt_probe_breakpoint_ops;
|
||||||
else
|
else
|
||||||
return &vtable_breakpoint_ops;
|
return &base_breakpoint_ops;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -8848,7 +8848,7 @@ breakpoint_ops_for_event_location (const struct event_location *location,
|
||||||
if (location != nullptr)
|
if (location != nullptr)
|
||||||
return breakpoint_ops_for_event_location_type
|
return breakpoint_ops_for_event_location_type
|
||||||
(event_location_type (location), is_tracepoint);
|
(event_location_type (location), is_tracepoint);
|
||||||
return &vtable_breakpoint_ops;
|
return &base_breakpoint_ops;
|
||||||
}
|
}
|
||||||
|
|
||||||
/* See breakpoint.h. */
|
/* See breakpoint.h. */
|
||||||
|
@ -9184,7 +9184,7 @@ dprintf_command (const char *arg, int from_tty)
|
||||||
0, bp_dprintf,
|
0, bp_dprintf,
|
||||||
0 /* Ignore count */,
|
0 /* Ignore count */,
|
||||||
pending_break_support,
|
pending_break_support,
|
||||||
&vtable_breakpoint_ops,
|
&base_breakpoint_ops,
|
||||||
from_tty,
|
from_tty,
|
||||||
1 /* enabled */,
|
1 /* enabled */,
|
||||||
0 /* internal */,
|
0 /* internal */,
|
||||||
|
@ -9452,7 +9452,7 @@ break_range_command (const char *arg, int from_tty)
|
||||||
std::unique_ptr<breakpoint> br (new ranged_breakpoint ());
|
std::unique_ptr<breakpoint> br (new ranged_breakpoint ());
|
||||||
init_raw_breakpoint (br.get (), get_current_arch (),
|
init_raw_breakpoint (br.get (), get_current_arch (),
|
||||||
sal_start, bp_hardware_breakpoint,
|
sal_start, bp_hardware_breakpoint,
|
||||||
&vtable_breakpoint_ops);
|
&base_breakpoint_ops);
|
||||||
b = add_to_breakpoint_chain (std::move (br));
|
b = add_to_breakpoint_chain (std::move (br));
|
||||||
|
|
||||||
set_breakpoint_count (breakpoint_count + 1);
|
set_breakpoint_count (breakpoint_count + 1);
|
||||||
|
@ -10146,7 +10146,7 @@ watch_command_1 (const char *arg, int accessflag, int from_tty,
|
||||||
scope_breakpoint
|
scope_breakpoint
|
||||||
= create_internal_breakpoint (caller_arch, caller_pc,
|
= create_internal_breakpoint (caller_arch, caller_pc,
|
||||||
bp_watchpoint_scope,
|
bp_watchpoint_scope,
|
||||||
&vtable_breakpoint_ops);
|
&base_breakpoint_ops);
|
||||||
|
|
||||||
/* create_internal_breakpoint could invalidate WP_FRAME. */
|
/* create_internal_breakpoint could invalidate WP_FRAME. */
|
||||||
wp_frame = NULL;
|
wp_frame = NULL;
|
||||||
|
@ -10187,7 +10187,7 @@ watch_command_1 (const char *arg, int accessflag, int from_tty,
|
||||||
else
|
else
|
||||||
w.reset (new watchpoint ());
|
w.reset (new watchpoint ());
|
||||||
init_raw_breakpoint_without_location (w.get (), nullptr, bp_type,
|
init_raw_breakpoint_without_location (w.get (), nullptr, bp_type,
|
||||||
&vtable_breakpoint_ops);
|
&base_breakpoint_ops);
|
||||||
|
|
||||||
w->thread = thread;
|
w->thread = thread;
|
||||||
w->task = task;
|
w->task = task;
|
||||||
|
@ -10641,7 +10641,7 @@ init_ada_exception_breakpoint (struct breakpoint *b,
|
||||||
}
|
}
|
||||||
|
|
||||||
init_raw_breakpoint (b, gdbarch, sal, bp_catchpoint,
|
init_raw_breakpoint (b, gdbarch, sal, bp_catchpoint,
|
||||||
&vtable_breakpoint_ops);
|
&base_breakpoint_ops);
|
||||||
|
|
||||||
b->enable_state = enabled ? bp_enabled : bp_disabled;
|
b->enable_state = enabled ? bp_enabled : bp_disabled;
|
||||||
b->disposition = tempflag ? disp_del : disp_donttouch;
|
b->disposition = tempflag ? disp_del : disp_donttouch;
|
||||||
|
@ -11601,31 +11601,6 @@ breakpoint::print_recreate (struct ui_file *fp)
|
||||||
internal_error_pure_virtual_called ();
|
internal_error_pure_virtual_called ();
|
||||||
}
|
}
|
||||||
|
|
||||||
static void
|
|
||||||
base_breakpoint_create_sals_from_location
|
|
||||||
(struct event_location *location,
|
|
||||||
struct linespec_result *canonical,
|
|
||||||
enum bptype type_wanted)
|
|
||||||
{
|
|
||||||
internal_error_pure_virtual_called ();
|
|
||||||
}
|
|
||||||
|
|
||||||
static void
|
|
||||||
base_breakpoint_create_breakpoints_sal (struct gdbarch *gdbarch,
|
|
||||||
struct linespec_result *c,
|
|
||||||
gdb::unique_xmalloc_ptr<char> cond_string,
|
|
||||||
gdb::unique_xmalloc_ptr<char> extra_string,
|
|
||||||
enum bptype type_wanted,
|
|
||||||
enum bpdisp disposition,
|
|
||||||
int thread,
|
|
||||||
int task, int ignore_count,
|
|
||||||
const struct breakpoint_ops *o,
|
|
||||||
int from_tty, int enabled,
|
|
||||||
int internal, unsigned flags)
|
|
||||||
{
|
|
||||||
internal_error_pure_virtual_called ();
|
|
||||||
}
|
|
||||||
|
|
||||||
std::vector<symtab_and_line>
|
std::vector<symtab_and_line>
|
||||||
breakpoint::decode_location (struct event_location *location,
|
breakpoint::decode_location (struct event_location *location,
|
||||||
struct program_space *search_pspace)
|
struct program_space *search_pspace)
|
||||||
|
@ -11634,12 +11609,6 @@ breakpoint::decode_location (struct event_location *location,
|
||||||
}
|
}
|
||||||
|
|
||||||
struct breakpoint_ops base_breakpoint_ops =
|
struct breakpoint_ops base_breakpoint_ops =
|
||||||
{
|
|
||||||
base_breakpoint_create_sals_from_location,
|
|
||||||
base_breakpoint_create_breakpoints_sal,
|
|
||||||
};
|
|
||||||
|
|
||||||
struct breakpoint_ops vtable_breakpoint_ops =
|
|
||||||
{
|
{
|
||||||
create_sals_from_location_default,
|
create_sals_from_location_default,
|
||||||
create_breakpoints_sal_default,
|
create_breakpoints_sal_default,
|
||||||
|
@ -13733,7 +13702,7 @@ ftrace_command (const char *arg, int from_tty)
|
||||||
bp_fast_tracepoint /* type_wanted */,
|
bp_fast_tracepoint /* type_wanted */,
|
||||||
0 /* Ignore count */,
|
0 /* Ignore count */,
|
||||||
pending_break_support,
|
pending_break_support,
|
||||||
&vtable_breakpoint_ops,
|
&base_breakpoint_ops,
|
||||||
from_tty,
|
from_tty,
|
||||||
1 /* enabled */,
|
1 /* enabled */,
|
||||||
0 /* internal */, 0);
|
0 /* internal */, 0);
|
||||||
|
@ -13758,7 +13727,7 @@ strace_command (const char *arg, int from_tty)
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
ops = &vtable_breakpoint_ops;
|
ops = &base_breakpoint_ops;
|
||||||
location = string_to_event_location (&arg, current_language);
|
location = string_to_event_location (&arg, current_language);
|
||||||
type = bp_static_tracepoint;
|
type = bp_static_tracepoint;
|
||||||
}
|
}
|
||||||
|
@ -13841,7 +13810,7 @@ create_tracepoint_from_upload (struct uploaded_tp *utp)
|
||||||
utp->type /* type_wanted */,
|
utp->type /* type_wanted */,
|
||||||
0 /* Ignore count */,
|
0 /* Ignore count */,
|
||||||
pending_break_support,
|
pending_break_support,
|
||||||
&vtable_breakpoint_ops,
|
&base_breakpoint_ops,
|
||||||
0 /* from_tty */,
|
0 /* from_tty */,
|
||||||
utp->enabled /* enabled */,
|
utp->enabled /* enabled */,
|
||||||
0 /* internal */,
|
0 /* internal */,
|
||||||
|
@ -14388,17 +14357,17 @@ initialize_breakpoint_ops (void)
|
||||||
|
|
||||||
/* Probe breakpoints. */
|
/* Probe breakpoints. */
|
||||||
ops = &bkpt_probe_breakpoint_ops;
|
ops = &bkpt_probe_breakpoint_ops;
|
||||||
*ops = vtable_breakpoint_ops;
|
*ops = base_breakpoint_ops;
|
||||||
ops->create_sals_from_location = bkpt_probe_create_sals_from_location;
|
ops->create_sals_from_location = bkpt_probe_create_sals_from_location;
|
||||||
|
|
||||||
/* Probe tracepoints. */
|
/* Probe tracepoints. */
|
||||||
ops = &tracepoint_probe_breakpoint_ops;
|
ops = &tracepoint_probe_breakpoint_ops;
|
||||||
*ops = vtable_breakpoint_ops;
|
*ops = base_breakpoint_ops;
|
||||||
ops->create_sals_from_location = tracepoint_probe_create_sals_from_location;
|
ops->create_sals_from_location = tracepoint_probe_create_sals_from_location;
|
||||||
|
|
||||||
/* Static tracepoints with marker (`-m'). */
|
/* Static tracepoints with marker (`-m'). */
|
||||||
ops = &strace_marker_breakpoint_ops;
|
ops = &strace_marker_breakpoint_ops;
|
||||||
*ops = vtable_breakpoint_ops;
|
*ops = base_breakpoint_ops;
|
||||||
ops->create_sals_from_location = strace_marker_create_sals_from_location;
|
ops->create_sals_from_location = strace_marker_create_sals_from_location;
|
||||||
ops->create_breakpoints_sal = strace_marker_create_breakpoints_sal;
|
ops->create_breakpoints_sal = strace_marker_create_breakpoints_sal;
|
||||||
}
|
}
|
||||||
|
|
|
@ -1399,7 +1399,6 @@ extern void rwatch_command_wrapper (const char *, int, bool);
|
||||||
extern void tbreak_command (const char *, int);
|
extern void tbreak_command (const char *, int);
|
||||||
|
|
||||||
extern struct breakpoint_ops base_breakpoint_ops;
|
extern struct breakpoint_ops base_breakpoint_ops;
|
||||||
extern struct breakpoint_ops vtable_breakpoint_ops;
|
|
||||||
|
|
||||||
extern void initialize_breakpoint_ops (void);
|
extern void initialize_breakpoint_ops (void);
|
||||||
|
|
||||||
|
@ -1449,8 +1448,7 @@ extern void install_breakpoint (int internal, std::unique_ptr<breakpoint> &&b,
|
||||||
/* Returns the breakpoint ops appropriate for use with with LOCATION and
|
/* Returns the breakpoint ops appropriate for use with with LOCATION and
|
||||||
according to IS_TRACEPOINT. Use this to ensure, for example, that you pass
|
according to IS_TRACEPOINT. Use this to ensure, for example, that you pass
|
||||||
the correct ops to create_breakpoint for probe locations. If LOCATION is
|
the correct ops to create_breakpoint for probe locations. If LOCATION is
|
||||||
NULL, returns bkpt_breakpoint_ops (or vtable_breakpoint_ops, if
|
NULL, returns base_breakpoint_ops. */
|
||||||
IS_TRACEPOINT is true). */
|
|
||||||
|
|
||||||
extern const struct breakpoint_ops *breakpoint_ops_for_event_location
|
extern const struct breakpoint_ops *breakpoint_ops_for_event_location
|
||||||
(const struct event_location *location, bool is_tracepoint);
|
(const struct event_location *location, bool is_tracepoint);
|
||||||
|
|
|
@ -327,12 +327,12 @@ mi_cmd_break_insert_1 (int dprintf, const char *command, char **argv, int argc)
|
||||||
else if (dprintf)
|
else if (dprintf)
|
||||||
{
|
{
|
||||||
type_wanted = bp_dprintf;
|
type_wanted = bp_dprintf;
|
||||||
ops = &vtable_breakpoint_ops;
|
ops = &base_breakpoint_ops;
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
type_wanted = hardware ? bp_hardware_breakpoint : bp_breakpoint;
|
type_wanted = hardware ? bp_hardware_breakpoint : bp_breakpoint;
|
||||||
ops = &vtable_breakpoint_ops;
|
ops = &base_breakpoint_ops;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (is_explicit)
|
if (is_explicit)
|
||||||
|
|
|
@ -305,7 +305,7 @@ bpfinishpy_init (PyObject *self, PyObject *args, PyObject *kwargs)
|
||||||
bp_breakpoint,
|
bp_breakpoint,
|
||||||
0,
|
0,
|
||||||
AUTO_BOOLEAN_TRUE,
|
AUTO_BOOLEAN_TRUE,
|
||||||
&vtable_breakpoint_ops,
|
&base_breakpoint_ops,
|
||||||
0, 1, internal_bp, 0);
|
0, 1, internal_bp, 0);
|
||||||
}
|
}
|
||||||
catch (const gdb_exception &except)
|
catch (const gdb_exception &except)
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue