Mirror of the gdb mailing list
 help / color / mirror / Atom feed
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.

> 


      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