HP3000-L Archives

July 1998, Week 1

HP3000-L@RAVEN.UTC.EDU

Options: Use Monospaced Font
Show Text Part by Default
Show All Mail Headers

Message: [<< First] [< Prev] [Next >] [Last >>]
Topic: [<< First] [< Prev] [Next >] [Last >>]
Author: [<< First] [< Prev] [Next >] [Last >>]

Print Reply
Subject:
From:
Gavin Scott <[log in to unmask]>
Reply To:
Gavin Scott <[log in to unmask]>
Date:
Wed, 1 Jul 1998 12:32:13 -0700
Content-Type:
text/plain
Parts/Attachments:
text/plain (31 lines)
Jojhn writes:
> The main drawback with DEBUG is that in a code disassembly, the branch
> and link's do not show the target procedure name. With a little
> analysis, a good disassembler could show those targets. Or am I missing
> something?

Depends a bit on the language.  What you are seeing is that the branches
have been patched to point to an "import stub" which is necessary for
all inter-space procedure calls such as to an XL like XL.PUB.SYS or
NL.PUB.SYS (i.e. Intrinsics, language runtime libraries, and subsystems
like Image).  It's possible (though non trivial) to determine what the
actual target of the branch is, or you can simply run the program to
that point and step through the code to see where it ends up.  Local
procedure calls and GOTOs in your program should display the actual
address in most cases (unless the branch target is out of range in which
case you may see a branch to a long branch stub).

While annoying, I've not found this to be that big of a problem when
debugging.

I suspect this is one area where Avatar does a better job of showing you
what's actually being called, but again I'll defer to Stan for details.

We currently teach a three day class at HP entitled "PA-RISC Understanding
Code" which covers the PA-RISC instruction set and Procedure Calling
Conventions.  This is currently an internal-only class for HP engineers.
Out of curiosity, how many people would be interested in taking such a
class if it were offered by HP to customers?

G.

ATOM RSS1 RSS2