Mirror of the gdb-patches mailing list
 help / color / mirror / Atom feed
From: Greg Watson <g.watson@computer.org>
To: Daniel Jacobowitz <drow@false.org>
Cc: Frederic RISS <frederic.riss@st.com>,
	 Vladimir Prus <vladimir@codesourcery.com>,
	 gdb-patches@sources.redhat.com
Subject: Re: MI: frozen variable objects
Date: Fri, 17 Nov 2006 15:21:00 -0000	[thread overview]
Message-ID: <7D296C56-6885-454D-9469-6F18F67DE6B6@computer.org> (raw)
In-Reply-To: <20061116155504.GA11539@nevyn.them.org>


On Nov 16, 2006, at 8:55 AM, Daniel Jacobowitz wrote:

> On Thu, Nov 16, 2006 at 04:24:58PM +0100, Frederic RISS wrote:
>> On Thu, 2006-11-16 at 06:58 -0700, Greg Watson wrote:
>>> I don't really understand the motivation for putting this kind of
>>> functionality into gdb. Any GUI that is more than just a front-end
>>> for gdb will most likely have an internal data structure  
>>> representing
>>> the value of the variable, and can retain or manage access to the
>>> value if required. It seems to me that adding functionality like  
>>> this
>>> to gdb just adds to bloat when it is really a GUI function anyway.
>
> Disclaimer: I've already talked with Vladimir about this at length and
> if I remember right he's the one who persuaded me that GDB was the
> right place to do it.  After this I'll let him speak for himself.
>
> Why should the GUI have a separate data structure for the value in a
> manipulatable form?  I suspect that some GUIs only keep it around as a
> string, for display.  Then if the user wants a radix switch, the
> easiest way is to tell GDB (-var-set-format).

I guess this is ok for GUI's that are just a front-end for gdb. The  
trend seems to be to provide the more sophisticated debugger  
functionality in the GUI and use gdb for lower-level debug  
operations, accessing symbols, etc. This is the case for two parallel  
debuggers I know about, and I suspect we'll see it used more for  
multicore architectures. Ultimately I think there will be  
functionality that can only be provided by the GUI. For example,  
comparing values from programs executing on different cores. I guess  
the trade-off here is the work required in the GUI vs. gdb bloat.

>
> The overall utility of -var-update * is somewhat suspect, I think,
> since it can take so long to run; to make it practical you'd have to
> delete varobjs for things not currently on-screen.  But as long as  
> that
> functionality exists, we figured it would be nice to not break it.

And buggy :-). But I agree. We're moving away from '-var-update *' to  
checking only the variables that are of interest.

>
> The read-sensitive values that Vladimir alluded to are our ultimate
> goal here and you'll be seeing rather more of them in the next
> few weeks.  Whenever we've suggested to a customer that our Eclipse
> ought to pop up a window that shows all of their target's peripheral
> I/O registers, the response has been jumping-up-and-down enthusiastic.
> But without some solution for this problem we just can't do it.   
> Having
> that window pop open, acknowledge all your pending interrupts, and
> steal one byte from each serial port FIFO, would be a real downer.

Adding a varobj attribute to provide this information would  
definitely be a cool addition.

Regards,

Greg


  parent reply	other threads:[~2006-11-17 15:21 UTC|newest]

Thread overview: 32+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2006-11-16 12:48 Vladimir Prus
2006-11-16 13:58 ` Greg Watson
2006-11-16 15:25   ` Frederic RISS
2006-11-16 15:55     ` Daniel Jacobowitz
2006-11-16 16:26       ` Frederic RISS
2006-11-16 16:34         ` Daniel Jacobowitz
2006-11-17 15:21       ` Greg Watson [this message]
2006-11-16 18:55     ` Vladimir Prus
2006-11-16 21:36       ` Frédéric Riss
2006-11-17  6:17         ` Vladimir Prus
2006-11-17  8:54           ` Frederic RISS
2006-11-16 18:47   ` Vladimir Prus
2006-11-17 15:09     ` Greg Watson
2006-11-17 15:15       ` Daniel Jacobowitz
2006-11-17 15:26         ` Greg Watson
2006-11-17 15:33           ` Daniel Jacobowitz
2006-11-17 15:41             ` Greg Watson
2006-11-17 15:45               ` Daniel Jacobowitz
2006-11-17 18:16               ` Daniel Jacobowitz
2006-11-17 15:35         ` Greg Watson
2006-11-17 15:27       ` Vladimir Prus
2006-11-16 21:53 Nick Roberts
2006-11-16 22:00 ` Daniel Jacobowitz
2006-11-16 23:07   ` Nick Roberts
2006-11-17 15:19     ` Daniel Jacobowitz
2006-11-17 20:52       ` Nick Roberts
2006-11-17 21:05         ` Daniel Jacobowitz
2006-11-17 23:12           ` Nick Roberts
2006-11-18 11:00           ` Eli Zaretskii
2006-11-17  6:25 ` Vladimir Prus
2006-11-17 18:14 ` Daniel Jacobowitz
2006-11-18  6:59 Nick Roberts

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=7D296C56-6885-454D-9469-6F18F67DE6B6@computer.org \
    --to=g.watson@computer.org \
    --cc=drow@false.org \
    --cc=frederic.riss@st.com \
    --cc=gdb-patches@sources.redhat.com \
    --cc=vladimir@codesourcery.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