public inbox for gdb-patches@sourceware.org
 help / color / mirror / Atom feed
From: "Maciej W. Rozycki" <macro@codesourcery.com>
To: Joel Brobecker <brobecker@adacore.com>
Cc: Tom Tromey <tromey@redhat.com>, <gdb-patches@sourceware.org>
Subject: Re: [PATCH 0/7] more constification
Date: Fri, 13 Jun 2014 19:01:00 -0000	[thread overview]
Message-ID: <alpine.DEB.1.10.1406131935050.3047@tp.orcam.me.uk> (raw)
In-Reply-To: <20140612084534.GC4730@adacore.com>

On Thu, 12 Jun 2014, Joel Brobecker wrote:

> > Patch #6 casts away const in a couple spots.  There's a justification
> > in the patch; but I also wanted to add that the casts only affect
> > mdebugread.c, which can't really be said to be actively maintained in
> > any case.
> 
> I am wondering whether we should consider the option of deprecating
> those targets that use this code. This affects alpha-tru64 and
> maybe mips-linux (although - is that option still supported by
> GCC? And even if it was, who would want to use that object format
> instead of ELF???). It's also said to be used by some versions
> of IRIX, but I am not sure that GDB works on those - the ones
> we've been supporting until a few years ago were using ELF.

 PDR (Procedure Descriptor Record) data is produced for all the usual MIPS 
Linux and bare-iron ELF targets (and probably IRIX too as it is where this 
stuff originates from) and both GAS and GCC continue supporting it even 
though plain ECOFF support has been removed.  I know of no plans to 
deprecate it.  In fact I have a patch outstanding to restitute some of 
this stuff that got deleted a while ago from GDB (apparently, by accident, 
it was not enabled for any target) and extend it somewhat, although this 
being rather dated still requires some polishing.

 The reason is these PDR records are the only reasonably reliable way on 
the MIPS target to do any stack backtracing in stripped code (the 
heuristic unwinders typically fail on optimised code where GCC stuffs 
random instructions even before function prologues and its unfeasible to 
add code to decode the whole MIPS instruction set to prevent these 
unwinders from doing so) and without it if e.g. on Linux you interrupt the 
debuggee in a system call invoked from shared libc that has been stripped 
(which is usually the case), then you find yourself in the middle of 
nowhere with no way to recover (of course you can always hit `continue', 
but that does not guarantee to get you to any better place).

 However I believe MIPS support is mostly self-contained and does not use 
mdebugread.c, it has its own mips-mdebug-tdep.c handler (that however uses 
mdebugread.h for structure definitions; these might be moved over to 
mips-mdebug-tdep.h of course if need be).

 I hope this clears the situation a bit WRT the MIPS port.

  Maciej

  parent reply	other threads:[~2014-06-13 19:01 UTC|newest]

Thread overview: 17+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2014-06-11 18:53 Tom Tromey
2014-06-11 18:53 ` [PATCH 3/7] fix up parse_cli_boolean_value after rebase Tom Tromey
2014-06-11 18:53 ` [PATCH 2/7] constify probe.c function Tom Tromey
2014-06-11 18:53 ` [PATCH 6/7] constify some blockvector APIs Tom Tromey
2014-06-11 18:53 ` [PATCH 4/7] remove unneeded cast in symtab.c Tom Tromey
2014-06-11 18:53 ` [PATCH 1/7] constify struct block in some places Tom Tromey
2014-06-11 19:46 ` [PATCH 5/7] constify complete_line Tom Tromey
2014-06-11 19:48 ` [PATCH 7/7] make common_block const Tom Tromey
2014-06-12  8:45 ` [PATCH 0/7] more constification Joel Brobecker
2014-06-13 16:50   ` Tom Tromey
2014-06-13 19:01   ` Maciej W. Rozycki [this message]
2014-06-23 13:25     ` Joel Brobecker
2014-06-30  8:55       ` Maciej W. Rozycki
2014-07-07 14:27         ` Joel Brobecker
2014-06-12 13:04 ` Pedro Alves
2014-06-13 16:52   ` Tom Tromey
2014-06-18 14:29 ` Tom Tromey

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=alpine.DEB.1.10.1406131935050.3047@tp.orcam.me.uk \
    --to=macro@codesourcery.com \
    --cc=brobecker@adacore.com \
    --cc=gdb-patches@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;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).