public inbox for gdb@sourceware.org
 help / color / mirror / Atom feed
From: Andrew Cagney <ac131313@redhat.com>
To: Andrew Cagney <ac131313@redhat.com>
Cc: gdb@sources.redhat.com
Subject: Re: Lazy get_frame_id()
Date: Thu, 20 Mar 2003 01:25:00 -0000	[thread overview]
Message-ID: <3E79187F.4010607@redhat.com> (raw)
In-Reply-To: <3E750857.50601@redhat.com>


> It opens up the possibility of, in WFI (infrun.c, et.al.), replacing the calls:
> - PC_IN_SIGTRAMP()
> - PC_IN_CALL_DUMMY()
> with the equivalent: get_frame_type (get_current_frame ()) == SIGTRAMP_FRAME et.al.  In fact, since the computation would be done once, this would be less load on the target.

So, I've got some raw GCOV data vis:

	new	lazy	main	func

         4092	4587	4587	gdbarch_pc_in_sigtramp
	9456	9246	9385	gdbarch_deprecated_pc_in_call_dummy
	3047	2837	2837	create_sentinel_frame
	3739	3739	3882	d10v_frame_this_id
	4296	4296	4331	d10v_frame_prev_register
	35754	35754	36281	gdbsim_xfer_inferior_memory
	24434	24434	24581	gdbsim_fetch_register

main=mainline
lazy=lazy id evaluation
new=lazy id evaluation + infrun using get_frame_type()

but am wondering how to interpret it.  Here's an attempt:

The create sentinel frame's went up slightly as it is creating more 
frames.  This would also cause the slight rise in pc_in_call_dummy calls 
(since that is always checked first).  The minor this_id, prev_register, 
and the gdbsim_XXX call reduction can be attributed entirely to the lazy 
id evaluation (the d10v sigtramp function doesn't do anything to the 
target).

The important one is pc-in-sigtramp and that was reduced by 10%.

So I guess this data indicates that all is ok ...  Any suggestions for 
what else to look at?  Mainline with infrun using get_prev_frame()?

Andrew

PS: There is also calls like:
PC_IN_SIGTRAMP (prev_pc, prev_func_name)
but I left them them be.

      parent reply	other threads:[~2003-03-20  1:25 UTC|newest]

Thread overview: 3+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2003-03-16 23:27 Andrew Cagney
2003-03-17  0:36 ` Daniel Jacobowitz
2003-03-20  1:25 ` Andrew Cagney [this message]

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=3E79187F.4010607@redhat.com \
    --to=ac131313@redhat.com \
    --cc=gdb@sources.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;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).