From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 29149 invoked by alias); 8 Feb 2004 04:11:12 -0000 Mailing-List: contact gdb-patches-help@sources.redhat.com; run by ezmlm Precedence: bulk List-Subscribe: List-Archive: List-Post: List-Help: , Sender: gdb-patches-owner@sources.redhat.com Received: (qmail 29136 invoked from network); 8 Feb 2004 04:11:09 -0000 Received: from unknown (HELO nevyn.them.org) (66.93.172.17) by sources.redhat.com with SMTP; 8 Feb 2004 04:11:09 -0000 Received: from drow by nevyn.them.org with local (Exim 4.30 #1 (Debian)) id 1ApgHl-0005ac-65; Sat, 07 Feb 2004 23:11:09 -0500 Date: Sun, 08 Feb 2004 04:11:00 -0000 From: Daniel Jacobowitz To: Richard.Earnshaw@arm.com Cc: gdb-patches@sources.redhat.com Subject: Re: [RFA] Repost ARM frame patches Message-ID: <20040208041109.GB13033@nevyn.them.org> Mail-Followup-To: Richard.Earnshaw@arm.com, gdb-patches@sources.redhat.com References: <20030903204139.GA9605@nevyn.them.org> <200309050950.h859oNV23553@pc960.cambridge.arm.com> Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <200309050950.h859oNV23553@pc960.cambridge.arm.com> User-Agent: Mutt/1.5.1i X-SW-Source: 2004-02/txt/msg00167.txt.bz2 On Fri, Sep 05, 2003 at 10:50:23AM +0100, Richard Earnshaw wrote: > > On Tue, Sep 02, 2003 at 11:52:26PM +0100, Richard Earnshaw wrote: > > > My only question is, once we start using the dwarf2 unwinder, can it cope > > > with the fact that gcc currently does not emit frame unwind information > > > for Thumb code? (ie can it handle a mix of code that uses dwarf2 and > > > traditional unwinding?) > Consider > > int func(void) { return 0;} > > Which compiles to > > mov r0, #0 > bx lr > > I would have thought that wouldn't need any frame unwind information. So > we would have a problem distinguishing trivial cases from "not generated" > cases. Yes. Now that GCC 3.4 does generate dwarf2 unwind information for Thumb, I compared the generated information for that trivial function to the previously produced empty FDE. As you'd expect, there is no way to tell them apart. Of course, ignoring dwarf2 FDEs containing no information would probably not hurt much - the prologue unwinder could handle the above function just fine. But it still seems a terrible hack. What do you think? My inclination is to wait until after the release of GCC 3.4, and then switch on dwarf2 unwinding for ARM. A second option would be to simply switch it on now. A third would be to prefer the prologue unwinder for Thumb; not too hard to arrange. -- Daniel Jacobowitz MontaVista Software Debian GNU/Linux Developer