This is the mail archive of the
gdb-patches@sourceware.org
mailing list for the GDB project.
Re: [patch 3/3] bpstat_what removal
On Friday 07 May 2010 17:33:18, Jan Kratochvil wrote:
> This is one of the reasons of my patch. This was/is the problem of PR 9436
> that BPSTAT_WHAT_CHECK_SHLIBS overrides other breakpoint types.
>
> If these actions will no longer be executed immediately in infrun.c there will
> have to be more boolean perform_* flags to specify delayed execution of
> actions depending on the bp_* types. There is now only perform_shlib (for
> former BPSTAT_WHAT_CHECK_SHLIBS) but there will be also perform_jit (and for
> ifunc or next-over-throw more such flags). stepping_over_breakpoint setting
> may need more abstraction or also just another
> perform_stepping_over_breakpoint flag, not sure now.
(assume I mean both shlib events and jit events below)
Why does infrun have to know about checking solib events at
all? Checking for new loaded solibs looks like a detail of this
internal breakpoint. There's not much of inferior run control
related to it. It would seem to me that breakpoint.c could handle
it instead; for example, II have a feeling it should be possible to add
a new breakpoint_ops for shlib_events, similar to the "catch catch"
implementation. And with enough breakpoint_ops abstraction we could
even get rid of the shlib_event breakpoint type, and move the whole
shlib breakpoint definition to solib.c, like ada-lang.c handles
its catchpoints.
--
Pedro Alves