Mirror of the gdb-patches mailing list
 help / color / mirror / Atom feed
From: Daniel Jacobowitz <drow@false.org>
To: Jan Kratochvil <jan.kratochvil@redhat.com>
Cc: gdb-patches@sourceware.org
Subject: Re: [FYI] Inlining support, rough patch [break-by-function-name]
Date: Thu, 03 Jul 2008 16:01:00 -0000	[thread overview]
Message-ID: <20080703160102.GA24817@caradoc.them.org> (raw)
In-Reply-To: <20080703112148.GA30899@host0.dyn.jankratochvil.net>

On Thu, Jul 03, 2008 at 01:21:48PM +0200, Jan Kratochvil wrote:
> On Wed, 02 Jul 2008 21:14:38 +0200, Daniel Jacobowitz wrote:
> ...
> > Let's wait on that until the rest of the patch is ready, though.
> > I'm making good progress.
> 
> That would be great, while discussing the uncommitted patches here is one on
> top of it to make `break inlined_function' work with the multi-PC breakpoints.
> As you have to be aware of such solution it may have some drawbacks.
> 
> (It does not solve the multiple minimal symbols with the same name as was in:
> 	http://sourceware.org/ml/gdb-patches/2008-05/msg00190.html
> )

I can't see how this works, unless you're getting lucky.  For instance
here:
> @@ -5692,7 +5692,7 @@ resolve_sal_pc (struct symtab_and_line *
>        bv = blockvector_for_pc_sect (sal->pc, 0, &b, sal->symtab);
>        if (bv != NULL)
>  	{
> -	  sym = block_linkage_function (b);
> +	  sym = block_function (b);
>  	  if (sym != NULL)
>  	    {
>  	      fixup_symbol_section (sym, sal->symtab->objfile);

fixup_symbol_section is a symbol lookup.  There has to be a real
function in the ELF symbol table with the same name, and here that
may be in a different section entirely.

I think Apple kept a list of inlined instances attached to the main
symbol entry for the function.  That's probably the way to go, but it
requires support for functions in the symbol table that don't have any
associated block (in case no copy is emitted out of line).  I tried
that once and got tangled up; crashes everywhere.

-- 
Daniel Jacobowitz
CodeSourcery


  reply	other threads:[~2008-07-03 16:01 UTC|newest]

Thread overview: 38+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2008-06-13 19:39 [FYI] Inlining support, rough patch Daniel Jacobowitz
2008-06-13 19:43 ` Daniel Jacobowitz
2008-06-23 12:03 ` Jan Kratochvil
2008-06-23 14:23   ` Daniel Jacobowitz
2008-07-02 19:15   ` Daniel Jacobowitz
2008-07-03 11:22     ` [FYI] Inlining support, rough patch [break-by-function-name] Jan Kratochvil
2008-07-03 16:01       ` Daniel Jacobowitz [this message]
2008-07-12  7:41         ` Jan Kratochvil
2008-07-08  0:12     ` [FYI] Inlining support, rough patch Daniel Jacobowitz
2008-07-15 19:21 ` Daniel Jacobowitz
2008-07-17 23:53   ` Mark Kettenis
2008-07-18 13:03     ` Daniel Jacobowitz
     [not found]       ` <200807251446.m6PEkfwc027635@brahms.sibelius.xs4all.nl>
2008-07-25 17:47         ` Daniel Jacobowitz
2009-03-31  3:06           ` Tom Tromey
2009-03-31 20:49             ` Mark Kettenis
2009-03-31 22:13               ` Daniel Jacobowitz
2009-04-20 15:49               ` Daniel Jacobowitz
2009-04-20 15:54                 ` Jan Kratochvil
2009-06-27 18:01                   ` Daniel Jacobowitz
2009-06-28 10:16                     ` Jan Kratochvil
2009-06-28 13:35                       ` Daniel Jacobowitz
2009-06-30 16:11                       ` Tom Tromey
2009-06-30 16:50                         ` Jan Kratochvil
2009-04-22 22:04                 ` Mark Kettenis
2009-04-23  3:17                   ` Eli Zaretskii
2009-04-23  5:56                   ` Stan Shebs
2009-04-23 12:48                   ` Daniel Jacobowitz
2009-06-18 17:55                     ` Tom Tromey
2009-06-20  9:57                       ` Mark Kettenis
2009-06-20 19:28                         ` Samuel Bronson
2009-04-24 21:44                   ` Thiago Jung Bauermann
2008-07-18  2:02   ` Paul Pluzhnikov
2008-07-18  3:07     ` Daniel Jacobowitz
2008-07-20 14:41   ` Eli Zaretskii
2008-07-25 13:54   ` Eli Zaretskii
2008-07-25 14:26     ` Daniel Jacobowitz
2008-07-25 16:11       ` Daniel Jacobowitz
2008-07-26  5:58       ` Eli Zaretskii

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20080703160102.GA24817@caradoc.them.org \
    --to=drow@false.org \
    --cc=gdb-patches@sourceware.org \
    --cc=jan.kratochvil@redhat.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox