This is the mail archive of the
gdb-patches@sourceware.org
mailing list for the GDB project.
RE: [patch v4 18/24] record-btrace: extend unwinder
- From: "Metzger, Markus T" <markus dot t dot metzger at intel dot com>
- To: Jan Kratochvil <jan dot kratochvil at redhat dot com>
- Cc: "gdb-patches at sourceware dot org" <gdb-patches at sourceware dot org>
- Date: Mon, 30 Sep 2013 09:44:41 +0000
- Subject: RE: [patch v4 18/24] record-btrace: extend unwinder
- Authentication-results: sourceware.org; auth=none
- References: <1372842874-28951-1-git-send-email-markus dot t dot metzger at intel dot com> <1372842874-28951-19-git-send-email-markus dot t dot metzger at intel dot com> <20130818190842 dot GN24153 at host2 dot jankratochvil dot net> <A78C989F6D9628469189715575E55B230A9CEAB0 at IRSMSX104 dot ger dot corp dot intel dot com> <20130927135521 dot GB13376 at host2 dot jankratochvil dot net>
> -----Original Message-----
> From: Jan Kratochvil [mailto:jan.kratochvil@redhat.com]
> Sent: Friday, September 27, 2013 3:55 PM
> > This has meanwhile been resolved. This had been a side-effect of throwing
> > an error in to_fetch_registers. When I just return, function arguments are
> > correctly displayed as unavailable and the "can't compute CFA for this
> frame"
> > message is gone.
>
> With v6 patchset it is only sometimes gone, I still get it.
> Tested with (results are the same):
> gcc (GCC) 4.8.2 20130927 (prerelease)
> gcc-4.8.1-10.fc21.x86_64
>
> int f(int i) {
> return i;
> }
> int main(void) {
> f(1);
> return 0;
> }
>
> gcc -o test3 test3.c -Wall -g
> ./gdb ./test3 -ex start -ex 'record btrace' -ex step -ex step -ex reverse-step -
> ex frame
> #0 f (i=<error reading variable: can't compute CFA for this frame>) at
> test3.c:2
> 2 return i;
> (gdb) _
>
> It gets fixed by the attached patch.
Thanks. I'll incorporate it into the extend unwinder patch.
Given that we always throw an error for BTRACE frames, there's no
need to get the stop reason first or to skip inline frames; they won't
be mixed with BTRACE frames.
Regards,
Markus.
Intel GmbH
Dornacher Strasse 1
85622 Feldkirchen/Muenchen, Deutschland
Sitz der Gesellschaft: Feldkirchen bei Muenchen
Geschaeftsfuehrer: Christian Lamprechter, Hannes Schwaderer, Douglas Lusk
Registergericht: Muenchen HRB 47456
Ust.-IdNr./VAT Registration No.: DE129385895
Citibank Frankfurt a.M. (BLZ 502 109 00) 600119052