This is the mail archive of the gdb-patches@sourceware.org mailing list for the GDB project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: [patch 04/12] entryval: Virtual tail call frames


>>>>> "Jan" == Jan Kratochvil <jan.kratochvil@redhat.com> writes:

Jan> +   Copyright (C) 2010, 2011 Free Software Foundation, Inc.

Diligent work!  Also I wanted to say that I think this series is
excellent, and I am really glad I picked the easier DWARF extensions ;-)

Jan> +/* Associated structure of the unwinder for call_site_chain.  */
Jan> +
Jan> +struct tailcall_cache
Jan> +{
Jan> +  /* It must be the first one of this struct.  It is the furthest callee.  */
Jan> +  struct frame_info *next_bottom_frame;

It was not obvious to me that the caching all works out correctly so
that it is ok to use a frame_info instead of a frame ID here.  I take
your word for it, of course, but a comment about how one would recognize
the correctness of this code would have been helpful.

Jan> +++ b/gdb/dwarf2-frame-tailcall.h

Should go in HFILES_NO_SRCDIR.

Jan> +/* Cleanup helper to free VEC (call_sitep) **.  */
Jan> +
Jan> +static void
Jan> +free_call_sitep_vecp (void *arg)

You can delete this function and just use 'VEC_cleanup (call_sitep)'.

Jan> +  add_setshow_zinteger_cmd ("tailcall", class_maintenance,
Jan> +			    &tailcall_debug,
Jan> +			    _("Set tail call frames debugging."),
Jan> +			    _("Show tail call frames debugging."),
Jan> +			    _("When non-zero, the process of determining tail "
Jan> +			      "call frames will be printed.  You may also want "
Jan> +			      "to `set verbose 1' for more info."),
Jan> +			    NULL,
Jan> +			    show_tailcall_debug,
Jan> +			    &setdebuglist, &showdebuglist);

Needs a doc patch.  (If it is in another patch in the series, ignore
this; I'm working through the patches in order.)

Jan> +  /* A virtual frame of a tail call - see dwarf2_tailcall_frame_unwind.  */
Jan> +  TAILCALL_FRAME,

This needs a Python API update and a corresponding doc patch.

Tom


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]