From: Jeff Johnston <jjohnstn@redhat.com>
To: David Lecomber <david@streamline-computing.com>
Cc: gdb <gdb@sources.redhat.com>
Subject: Re: ia64 dodgy stack
Date: Fri, 25 Feb 2005 05:36:00 -0000 [thread overview]
Message-ID: <421E1CBC.40102@redhat.com> (raw)
In-Reply-To: <1109264963.23124.24.camel@delmo.priv.wark.uk.streamline-computing.com>
David Lecomber wrote:
> I have a stacktrace problem with some, ahem,.. Fortran code.. (intel
> compiler 8) on the Itanium and current CVS of GDB. The problem did not
> exist on GDB 5.2.2 - this got the answer perfectly..
>
> The code for this is included (should anyone wish to compile it.)
>
> The issue is that the stacktrace just fails: shows the current stack and
> then it's 0x00000000
>
> (gdb) b def
> Breakpoint 1 at 0x4000000000002e92: file myyuck.f90, line 8.
> (gdb) r
> Starting program: /home/david/a.out
>
> Breakpoint 1, def (a=31.3402061) at myyuck.f90:8
> 8 END
> Current language: auto; currently fortran
> (gdb) bt
> #0 def (a=31.3402061) at /home/david/myyuck.f90:8
> #1 0x0000000000000000 in ?? ()
>
> The code:
>
> SUBROUTINE DEF(A)
> REAL :: A
>
> END
>
> PROGRAM ABC
> REAL A
> CALL DEF(A)
> END
>
>
> The function def's disassembly is:
>
> 0x4000000000002e80 <def+0>: [MII] alloc r33=ar.pfs,4,4,0
> 0x4000000000002e81 <def+1>: adds r12=-176,r12
> 0x4000000000002e82 <def+2>: mov r34=r32;;
> 0x4000000000002e90 <def+16>: [MMI] adds r35=128,r12;;
> 0x4000000000002e91 <def+17>: st8 [r35]=r34
> 0x4000000000002e92 <def+18>: adds r12=176,r12
>
> and the section around the call to def is:
>
> 0x4000000000002f20 <abc+96>: [MMI] adds r20=144,r12;;
> 0x4000000000002f21 <abc+97>: ld8 r34=[r20]
> 0x4000000000002f22 <abc+98>: nop.i 0x0;;
> 0x4000000000002f30 <abc+112>: [MII] mov r1=r34
> 0x4000000000002f31 <abc+113>: adds r35=128,r12
> 0x4000000000002f32 <abc+114>: nop.i 0x0;;
> 0x4000000000002f40 <abc+128>: [MIB] mov r36=r35
> 0x4000000000002f41 <abc+129>: nop.i 0x0
> 0x4000000000002f42 <abc+130>: br.call.sptk.many
> b0=0x4000000000002e80 <def>;;
> 0x4000000000002f50 <abc+144>: [MMI] mov r34=1;;
> 0x4000000000002f51 <abc+145>: nop.m 0x0
> 0x4000000000002f52 <abc+146>: mov b0=r33;;
>
>
> Any advice?
>
Do you have libunwind installed and if so, what version? The newer ia64
debugger uses libunwind for stack unwinding. It is possible that the compiler
is not generating proper libunwind info. Try specifying:
set debug arch 1
as you enter gdb. If libunwind is being used, you will see mention of
ia64_find_proc_info_x. If libunwind is having problems with the info, you can
reconfigure gdb with --without-libunwind and that will fall back to the old
prologue analysis code.
-- Jeff J.
>
prev parent reply other threads:[~2005-02-24 18:28 UTC|newest]
Thread overview: 2+ messages / expand[flat|nested] mbox.gz Atom feed top
2005-02-24 18:28 David Lecomber
2005-02-25 5:36 ` Jeff Johnston [this message]
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=421E1CBC.40102@redhat.com \
--to=jjohnstn@redhat.com \
--cc=david@streamline-computing.com \
--cc=gdb@sources.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