Mirror of the gdb mailing list
 help / color / mirror / Atom feed
From: phi gcc <phi.gcc@gmail.com>
To: Tom Tromey <tromey@redhat.com>
Cc: gdb@sourceware.org
Subject: Re: deprecated_print_frame_info_listing_hook
Date: Thu, 31 Jul 2014 06:55:00 -0000	[thread overview]
Message-ID: <CADieKzvg70v+teWQmr0oivy=7-_arPN=aUC=DQ8dtuO2tiTdUw@mail.gmail.com> (raw)
In-Reply-To: <87ppgyscy8.fsf@fleche.redhat.com>

Hi Tom,

Sorry for the reply delay, I was on vacations.

I use my own gdb hack, basically I use an HPTERM as terminal. HPTERM
has a very anciant feature called "memory lock". In a nuttshell, it
allow to display things on the top end of the display, drow a line at
a given line number (starting form top) locking the top of the
display, then all subsequent output are flowing in the lower part of
the terminal.

This feature was extensivly used by old debuggers like XDB, or
DEBUG/1000 ( a 16 bit machine).

I made a hack in GDB to do the same on HPTERM, so I have my own kind
of TUI. When GDB gets the control, I can figure out what src line we
stoped on, my pretty printer evaluate if the line we are stoped on is
displayed already, just placing the '>' marker on the line, if
completly new source must be displayed (or scrolled) I redisplay the
source, and indeed set the memory lock on the display.

This mean that when target is run, it can use all the output flow with
out destroying the top source display.

The actual TUI with ncurse can't even come close to this in term of
perf and fluidity of display. On slow line the memorylock is a big
saver, and it is still a very light wait protocol, I would say it is a
green protocol :)

Now one could say we don't have HPTERM on linux, well I got my own
hybrid xterm, one that reconise the vt100 escape sequence and identify
itself as vt100 for common work on linux vt100, but as more escape
sequence, like an additional identify that reply it is an hybrid vt100
+ hpterm, then accept the hpterm sequence, and then I implemented the
memory lock.

Another way to get an HPTERM is to work on HPUX systems :)

My GDB hack via identify escape sequance can figure out if it run on
pure HPTERM, hybrid VT100+HPTERM, or pure vt100, in the later it
reject the run and say go use the std GDB .

So basically I port my hacks to GDB each time a new GDB is needed with
a given linux version, i.e as long as *trace() are compatible I work
with the current hack 'old' gdb, when incompatibilites occurs it is
time forward port my hacks, and most of the time it is smooth...

Until C++ come into the dance, I fear I will have to keep an old GDB
fork from there, and adpat to new linux as it come.

And indeed, I depend on deprecated_print_frame_info_listing_hook() not
that much though because when it disapear, I can simply hook my code
in the right place instead of using GDB infrastructure to register
functions.

That was my question, will it be removed ? the answer can be 'wait and see'  :)


Cheers,
Phi


      reply	other threads:[~2014-07-31  6:55 UTC|newest]

Thread overview: 4+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2014-07-20  8:46 deprecated_print_frame_info_listing_hook phi gcc
2014-07-20  9:12 ` deprecated_print_frame_info_listing_hook phi gcc
2014-07-21 19:56   ` deprecated_print_frame_info_listing_hook Tom Tromey
2014-07-31  6:55     ` phi gcc [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='CADieKzvg70v+teWQmr0oivy=7-_arPN=aUC=DQ8dtuO2tiTdUw@mail.gmail.com' \
    --to=phi.gcc@gmail.com \
    --cc=gdb@sourceware.org \
    --cc=tromey@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