Mirror of the gdb-patches mailing list
 help / color / mirror / Atom feed
From: Pedro Alves <palves@redhat.com>
To: Tristan Gingold <gingold@adacore.com>
Cc: "gdb-patches@sourceware.org ml" <gdb-patches@sourceware.org>,
	       Rupp Douglas <rupp@adacore.com>
Subject: Re: RFA: New port: ia64-hp-openvms - the stub
Date: Tue, 14 Feb 2012 18:09:00 -0000	[thread overview]
Message-ID: <4F3AA334.8000409@redhat.com> (raw)
In-Reply-To: <35B93121-2F70-4E7C-B415-E691138D6698@adacore.com>

On 02/10/2012 01:43 PM, Tristan Gingold wrote:
> Hi,
> 
> this is the debugger stub for ia64 VMS.
> Because it is independent of gdb (not unlike gdbserver) and because it isn't a one file stub, I think it is worth creating a subdirectory.

Sounds fine to me.

> I think we should also move the existing stubs there.
> 
> The interesting part is that on OpenVMS, the debugger is a shared library that is loaded with the application when debugging is needed (either from the start or during the run - like attach).  Just think about catching SIGTRAP, SIGSEGV, SIGBUS,Â… from a LD_PRELOAD binary.
> 
> The stub was written from scratch because it is highly OpenVMS dependent and in particular the standard C library shouldn't be used.

> The stub is not complete: some registers are partially or not handled, 

I couldn't really tell, but you may want to consider looking into xml target
descriptions.  At least reporting a description with the openvms osabi would
be good.

and inferior procedure call is not yet implemented (will be the funny part).


But it has already be extremely useful to debug some applications.

It's fine with me to put it in and improve it as we go.  I skimmed
it, but all the dollar signs distract a bit too much.  :-)

OOC,

> +#if 1
> +      /* What a mess.  Gdb and linux expects bsp to point after the current
> +         register frame.  Adjust.  */

What does this mean?  Are we committing to a hack that will make our
lives hard when we want to fix it?

> +      {
> +        unsigned __int64 bsp = intstk->intstk$q_bsp;
> +        unsigned int sof = intstk->intstk$q_ifs & 0x7f;
> +        unsigned int delta = ((bsp >> 3) & 0x3f) + sof;
> +        regs.bsp.v = bsp + ((sof + delta / 0x3f) << 3);
> +      }
> +#else
> +      regs.bsp.v = intstk->intstk$q_bsp;
> +#endif

-- 
Pedro Alves


  parent reply	other threads:[~2012-02-14 18:09 UTC|newest]

Thread overview: 31+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2012-02-10 13:07 RFA: New port: ia64-hp-openvms (0/3) Tristan Gingold
2012-02-10 13:21 ` RFA: New port: ia64-hp-openvms (1/3) - new osabi Tristan Gingold
2012-02-10 13:27   ` RFA: New port: ia64-hp-openvms (3/3) - ia64-vms-tdep.c Tristan Gingold
2012-02-14 17:50     ` Pedro Alves
2012-02-15  9:14       ` Tristan Gingold
2012-02-15 12:57         ` Pedro Alves
2012-02-21 16:23           ` Tristan Gingold
2012-02-22 19:39             ` Pedro Alves
2012-02-22 19:53               ` Douglas Rupp
2012-02-24 14:17                 ` Tristan Gingold
2012-02-24 14:16               ` Tristan Gingold
2012-02-24 14:29                 ` Pedro Alves
2012-03-05 11:58                   ` Tristan Gingold
2012-02-12  9:36   ` RFA: New port: ia64-hp-openvms (1/3) - new osabi Mark Kettenis
2012-02-10 13:23 ` RFA: New port: ia64-hp-openvms (2/3) Tristan Gingold
2012-02-12  9:39   ` Mark Kettenis
2012-02-13  8:45     ` Tristan Gingold
2012-02-14 17:36   ` Pedro Alves
2012-02-14 17:40     ` Pedro Alves
2012-02-21 16:08     ` RFA: New port: ia64-hp-openvms (2/3) - v2 Tristan Gingold
2012-02-22 19:41       ` Pedro Alves
2012-02-10 13:44 ` RFA: New port: ia64-hp-openvms - the stub Tristan Gingold
2012-02-10 19:06   ` Douglas Rupp
2012-02-13  8:43     ` Tristan Gingold
2012-02-14 18:09   ` Pedro Alves [this message]
2012-02-21 17:08     ` Tristan Gingold
2012-02-22 20:25       ` Pedro Alves
2012-02-24  9:24         ` Tristan Gingold
2012-02-24 11:06           ` Pedro Alves
2012-02-24 11:24             ` Tristan Gingold
2012-02-24 12:17               ` Pedro Alves

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=4F3AA334.8000409@redhat.com \
    --to=palves@redhat.com \
    --cc=gdb-patches@sourceware.org \
    --cc=gingold@adacore.com \
    --cc=rupp@adacore.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