This is the mail archive of the
elfutils-devel@sourceware.org
mailing list for the elfutils project.
Re: [PATCH] Handle GNU extension opcodes in dwarf_getlocation
- From: Mark Wielaard <mjw at redhat dot com>
- To: elfutils-devel at lists dot fedorahosted dot org
- Date: Wed, 10 Oct 2012 09:39:49 +0200
- Subject: Re: [PATCH] Handle GNU extension opcodes in dwarf_getlocation
Hi,
Thanks for double checking. Adding Jakub to CC, see below.
On Wed, 2012-10-10 at 08:56 +0200, Petr Machata wrote:
> Jan Kratochvil <jan.kratochvil@redhat.com> writes:
> > On Tue, 09 Oct 2012 22:50:20 +0200, Petr Machata wrote:
> >> Mark Wielaard <mjw@redhat.com> writes:
> >> > Do you happen to know where
> >> > DW_OP_GNU_reinterpret is described, I assumed it was part of
> >> > http://www.dwarfstd.org/doc/040408.1.html but it isn't in there.
> >>
> >> No, it isn't, I didn't find it anywhere else but in elfutils. It's not
> >> even in my test binary, only DW_OP_GNU_convert is.
> >
> > DW_OP_GNU_convert is handled by GDB:
>
> As well as DW_OP_GNU_reinterpret, great:
>
> .byte 0xf7 # DW_OP_GNU_convert
> .uleb128 0x29
> .byte 0xf9 # DW_OP_GNU_reinterpret
> .uleb128 0x37
>
> So yeah, they both have the same arguments.
OK, and I just found gcc/dwarf2out.c does indeed seem to generate it.
But I am not fully clear on why convert cannot always be used.
Jakub, is there a "official" description for DW_OP_GNU_reinterpret?
And/Or is there a newer document describing the typed DWARF stack
extensions?
Thanks,
Mark