public inbox for insight@sourceware.org
 help / color / mirror / Atom feed
From: Duane Ellis <duane_ellis@franklin.com>
To: insight@sourceware.cygnus.com
Subject: Re: RFC: gdbtk/TODO file
Date: Wed, 11 Oct 2000 06:28:00 -0000	[thread overview]
Message-ID: <200010111326.JAA17321@mercury.franklin.com> (raw)
In-Reply-To: <39E3C346.F6AEFF4F@cygnus.com>

duane>  1) Better support for assembly language debugging.

fernado> That one is hard.  The problem is that we need a start point
	 for disassembly in several architectures...

You are right. This problem will have to be solved in the more general
case {see below}. It's expecially true of cpus with variable length
instructions. (ie: 99.9% of all CPUS out there). You don't know if you
are disassembling an opcode or an immediate operand contained in the
instruction stream, or random data. Most disassemblers, when they get
lost start inserting 'db' statements for invalid data.

fernado> This is possible.  Disassembly from memory at the PC as an
	 alternative view is in my wish list.

How about making this window some what "operator controled", in that
the operator could specify a the start/stop address to disassemble
from. You could use the PC and PC+500 as initial starting points.

In any case, this puts the onus on the operator for choosing a known
good starting point. Manytimes, I have choosen a starting address only
to find it is wrong. I then go back another 10 to 15 bytes and try
again, normally the disassmebler is albe to re-sync it self.

There are other problems, for instance in some architectures you may
well insert "switch statement" jump tables in the middle of the
function, where others may place this at the end of the function.

fernado> Another point is that we want to be able to mix it with
	 source code knowledge (for instance SourceNavigator's) to be
	 able to Code/Build/Debug in the same environment.  A good
	 reason to keep the file and function/method units.

Ok then, maybe the ablity to treat ASSEMBLY as source code when it
really is the source code. You only need to disable mouseover stuff in
the assembly view mode.

This comes down to knowledge of what is the minimally required set of
stabs/debug records you need to make quazi assembly source level
debugging work. Other problems with this approach mean dealing with
traditional macro expansion, vrs C preprocessor type expansion.

-Duane.

  reply	other threads:[~2000-10-11  6:28 UTC|newest]

Thread overview: 10+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2000-10-05 13:35 Fernando Nasser
2000-10-09 17:48 ` Mo DeJong
2000-10-10  8:02   ` Fernando Nasser
2000-10-10 15:29   ` Duane Ellis
2000-10-10 18:32     ` Fernando Nasser
2000-10-11  6:28       ` Duane Ellis [this message]
2000-10-11  9:47         ` Fernando Nasser
2000-10-11  9:58           ` Keith Seitz
2000-10-11 10:08             ` Fernando Nasser
2000-10-11 10:12             ` Duane Ellis

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=200010111326.JAA17321@mercury.franklin.com \
    --to=duane_ellis@franklin.com \
    --cc=insight@sourceware.cygnus.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).