From: Geoff Keating <geoffk@desire.geoffk.org>
To: amodra@bigpond.net.au
Cc: cagney@gnu.org, kettenis@chello.nl, gcc-patches@gcc.gnu.org,
dje@watson.ibm.com, gdb-patches@sources.redhat.com,
Ulrich.Weigand@de.ibm.com
Subject: Re: Incorrect DWARF-2 register numbers on PPC64?
Date: Thu, 08 Jan 2004 05:02:00 -0000 [thread overview]
Message-ID: <200401080501.i0851VBx016440@desire.geoffk.org> (raw)
In-Reply-To: <20040108004849.GR2533@bubble.modra.org> (message from Alan Modra on Thu, 8 Jan 2004 11:18:49 +1030)
> Date: Thu, 8 Jan 2004 11:18:49 +1030
> From: Alan Modra <amodra@bigpond.net.au>
> > >>This won't work for GDB
> > >>since it assumes that CFI uses the same register number encoding as
> > >>all the other DWARF 2 debug information.
> > >
> > >
> > >Hmm, I can see that a debugger might reasonably expect .debug_frame
> > >to have the same numbers. When I wrote the patch, I was concentrating
> > >on .eh_frame rather than .debug_frame, but .debug_frame uses the
> > >.eh_frame numbering. It's a little perplexing that dwarf2out.c does
> > >this, as it means defining DWARF_FRAME_REGNUM to something other
> > >than DBX_REGISTER_NUMBER is useless. DWARF_FRAME_REGNUM ought to
> > >just effect .eh_frame. I'm not keen on trying to untangle dwarf2out.c
> > >though..
> >
> > Is it going to be possible to get this untangled before 3.4 is
> > branched/released?
>
> Hmm, I see gdb looks at .eh_frame as well as .debug_frame, so my idea
> of using gcc hard regs for .eh_frame and the proper dwarf regs for
> .debug_frame is probably a non-starter anyway.
>
> The "easy" fix for PPC is to not define DWARF_FRAME_REGNUM so that
> .eh_frame and .debug_frame use the reg numbers specified by the ABI,
> and to define DWARF_FRAME_REGISTERS as 1232. We can even map "old"
> .eh_frame regs using DWARF_REG_TO_UNWIND_COLUMN, so that older libs can
> be understood by the unwinder, at least as long as they don't use
> altivec regs.
>
> The only trouble is that this will mean huge unwinder tables.
That will also mean that executables built with a new version of GCC won't
run on operating systems with an old libgcc. For Darwin, because of
historical mistakes involving non-shared libgcc, it will make life
very difficult.
--
- Geoffrey Keating <geoffk@geoffk.org>
next prev parent reply other threads:[~2004-01-08 5:02 UTC|newest]
Thread overview: 21+ messages / expand[flat|nested] mbox.gz Atom feed top
[not found] <OFEA5CA921.302AEEB5-ON41256E00.005FB141@de.ibm.com>
2003-12-18 22:58 ` David Edelsohn
2003-12-20 15:27 ` Mark Kettenis
2004-01-02 16:46 ` Andrew Cagney
2004-01-02 23:18 ` Geoff Keating
2004-01-06 15:27 ` Alan Modra
[not found] ` <amodra@bigpond.net.au>
2004-01-06 16:02 ` David Edelsohn
2004-01-06 18:07 ` Geoff Keating
2004-01-06 18:10 ` David Edelsohn
2004-01-06 22:05 ` Geoff Keating
2004-01-06 22:09 ` David Edelsohn
2004-01-06 22:34 ` Geoff Keating
2004-01-07 0:27 ` Alan Modra
2004-01-07 17:43 ` Mark Kettenis
2004-01-07 22:29 ` Alan Modra
2004-01-07 23:36 ` Andrew Cagney
2004-01-08 0:48 ` Alan Modra
2004-01-08 5:02 ` Geoff Keating [this message]
2004-01-09 2:34 ` Alan Modra
2004-01-09 2:49 ` Alan Modra
2004-01-09 6:39 ` Alan Modra
2004-01-09 15:16 ` Mark Kettenis
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=200401080501.i0851VBx016440@desire.geoffk.org \
--to=geoffk@desire.geoffk.org \
--cc=Ulrich.Weigand@de.ibm.com \
--cc=amodra@bigpond.net.au \
--cc=cagney@gnu.org \
--cc=dje@watson.ibm.com \
--cc=gcc-patches@gcc.gnu.org \
--cc=gdb-patches@sources.redhat.com \
--cc=kettenis@chello.nl \
/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