From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 700 invoked by alias); 22 Jun 2005 05:13:25 -0000 Mailing-List: contact gdb-help@sources.redhat.com; run by ezmlm Precedence: bulk List-Subscribe: List-Archive: List-Post: List-Help: , Sender: gdb-owner@sources.redhat.com Received: (qmail 676 invoked by uid 22791); 22 Jun 2005 05:13:18 -0000 Received: from web52709.mail.yahoo.com (HELO web52709.mail.yahoo.com) (206.190.39.160) by sourceware.org (qpsmtpd/0.30-dev) with SMTP; Wed, 22 Jun 2005 05:13:18 +0000 Received: (qmail 19709 invoked by uid 60001); 22 Jun 2005 05:13:16 -0000 Message-ID: <20050622051316.19707.qmail@web52709.mail.yahoo.com> Received: from [210.18.86.20] by web52709.mail.yahoo.com via HTTP; Tue, 21 Jun 2005 22:13:16 PDT Date: Wed, 22 Jun 2005 05:13:00 -0000 From: "Kamal R. Prasad" Reply-To: kamalp@acm.org Subject: Re: stack unwinding on aix To: Mark Kettenis , kamalp@acm.org Cc: gdb@sources.redhat.com In-Reply-To: <200506212219.j5LMJbic008540@elgar.sibelius.xs4all.nl> MIME-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit X-SW-Source: 2005-06/txt/msg00199.txt.bz2 --- Mark Kettenis wrote: > Date: Mon, 20 Jun 2005 23:25:50 -0700 (PDT) > From: "Kamal R. Prasad" > > Hello, > > I am trying to locate a piece of code in gdb 6.3 > which does srack unwinding in AIX (5.3). When > unwinding the stack in my C code, I noticed a lot > of > dummy frames whose pc points to the data segment > and/or outside th text segment(s). Can someone > tell me > how gdb identifies such dummy frames and wherein > the > code base it is? rs6000-tdep.c contains some algo > for > frameless function detection etc.., but that > isn't all > to it. > > I'm afraid the AIX/RS6000/POWER code is suffering > from quite a bit of > bit-rot. It's a bit of a mess, so I can't blame you > for failing to > understand the code. The sparc, vax or m88k code > might be much easier > for you to understand.. Look frame functions name > xxx_frame_cache, > xxx_prev_register for code that does the stack > unwinding. > Doing the stack unwinding is the easier part. The difficult part is identifying intermediate aka dummy frames.I believe some dummyframes get introduced due to late binding. > Anyway, the AIX/RS6000/POWER support in gdb really > could use some > loving care. AFAIK almost none of the gdb > developers actually have > access to an AIX system. So I'm not sure we'll be > able to help you. > gdb actually works fine on AIX -and Im looking to import existing functionality from gdb to my s/w, not re-work gdb which you seem to be implying. I have a set of AIX systems at the workplace, but Im not sure if I can give outsiders access for security reasons. Is skip_prologue() the core of functionality that identifies what to do with a frame? regards -kamal > Mark > ------------------------------------------------------------ Kamal R. Prasad UNIX systems consultant http://members.fortunecity.com/kamalp kamalp@acm.org In theory, there is no difference between theory and practice. In practice, there is. ------------------------------------------------------------ ____________________________________________________ Yahoo! Sports Rekindle the Rivalries. Sign up for Fantasy Football http://football.fantasysports.yahoo.com