[Info-vax] ada archives and debug
johnwallace4 at yahoo.co.uk
johnwallace4 at yahoo.co.uk
Sat Jan 20 06:34:47 EST 2018
On Saturday, 20 January 2018 07:13:16 UTC, Tristan Gingold wrote:
> Johnny Billquist <bqt at softjar.se> writes:
>
> > On 2018-01-18 19:44, Simon Clubley wrote:
> >> On 2018-01-18, gérard Calliet <gerard.calliet at pia-sofer.fr> wrote:
> >>>
> >>> Now customers demand debug. I'm in the beginning of evalution of this
> >>> facility.
> >>>
> >>> For what I know, Adacore didn't give debug (in VMS style), and they say
> >>> HP didn't "cooperate" on that. I'm wondering if there are been effort
> >>> for that anywhere.
> >>>
> >>
> >> What's wrong with simply using gdb or are you saying that it wasn't
> >> possible for you to build gdb for a VMS target ?
> >
> > I seriously doubt that gdb will work on VMS, unless someone have
> > ported gdb. And this requires a more complex form of porting than just
> > getting the compiler to accept the source, and the libraries to be
> > available with the right functions.
> >
> > gdb, but its very nature, requires to understand more of the internal
> > plumbing of VMS. Or else how do you expect it to know how to force a
> > program to stop at some breakpoint, examine different threads, resume
> > execution, install trap vectors for different issues, catch those
> > traps and do something, possibly attach to other processes, single
> > step code... The list goes on. This is a way different level of
> > porting than most other things.
>
> Have a look at:
>
> https://sourceware.org/git/gitweb.cgi?p=binutils-gdb.git;a=blob_plain;f=gdb/stubs/ia64vms-stub.c;hb=HEAD
Welcome to comp.os.vms, thank you for joining in.
I was actually thinking of mentioning the gdb stub
concept (not necessarily in the IA64 context, just
in the context of splitting "host" from "target").
However, my own gdb stub experience is deep in the
mists of time, you're probably a bit more up to date ;)
The other thing I might mention while you're here
relates to John Reagan's recent comment that
DWARF is DWARF.
That is true in so far as it goes, but my GNATty
experience (almost a decade ago) was that DWARF
rules and formats were used, but in a way that wasn't
helpful to the outsider wishing to develop their own
tools that relied solely on debug info from DWARF.
For example back then there would be some 'spurious'
symbols in the DWARF-from-Ada which were existing symbol
names which had been mangled to encode various attributes
which couldn't have been done in DWARF's predecessor, STABs.
The attribute encoding (array bounds etc?) could often
have been done in pure DWARF without the manglecoding.
Without a magic decoder ring or years of reverse
engineering, these manglecoded things were a hindrance
rather than a help for my needs at the time (which,
strangely enough, related to debug and test tools), and
the readily availabe source for bits of gdb and gcc/gnat
wasn't all that helpful to me.
So, back to John Reagan's comment: for the current
implementation, is a magic decoder ring still needed,
or is pure DWARF pretty much sufficient?
Once again, thank you, and welcome to comp.os.vms
Have a lot of fun.
More information about the Info-vax
mailing list