From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 10026 invoked by alias); 13 Jul 2009 20:16:58 -0000 Received: (qmail 10018 invoked by uid 22791); 13 Jul 2009 20:16:58 -0000 X-SWARE-Spam-Status: No, hits=-2.4 required=5.0 tests=AWL,BAYES_00 X-Spam-Check-By: sourceware.org Received: from smtp-outbound-2.vmware.com (HELO smtp-outbound-2.vmware.com) (65.115.85.73) by sourceware.org (qpsmtpd/0.43rc1) with ESMTP; Mon, 13 Jul 2009 20:16:51 +0000 Received: from mailhost3.vmware.com (mailhost3.vmware.com [10.16.27.45]) by smtp-outbound-2.vmware.com (Postfix) with ESMTP id 6487113004; Mon, 13 Jul 2009 13:16:50 -0700 (PDT) Received: from [10.20.94.141] (msnyder-server.eng.vmware.com [10.20.94.141]) by mailhost3.vmware.com (Postfix) with ESMTP id 5786DCDAB4; Mon, 13 Jul 2009 13:16:50 -0700 (PDT) Message-ID: <4A5B951F.3000304@vmware.com> Date: Mon, 13 Jul 2009 20:28:00 -0000 From: Michael Snyder User-Agent: Thunderbird 1.5.0.12 (X11/20080411) MIME-Version: 1.0 To: Michael Snyder , Mark Kettenis , "gdb-patches@sourceware.org" , "teawater@gmail.com" Subject: Re: [RFA] epilogue unwinder for i386 (reverse 1/2) References: <4A4EA0F7.1040004@vmware.com> <4A4EA3B3.9030107@vmware.com> <200907051235.n65CZhDb024857@brahms.sibelius.xs4all.nl> <4A511332.2000607@vmware.com> <4A58D5D7.9070504@vmware.com> <200907121112.n6CBCG1x032181@brahms.sibelius.xs4all.nl> <4A5A209E.5050202@vmware.com> <20090713022618.GA28468@caradoc.them.org> <4A5B8B4B.4020903@vmware.com> <20090713194241.GA1287@caradoc.them.org> In-Reply-To: <20090713194241.GA1287@caradoc.them.org> Content-Type: text/plain; charset=ISO-8859-1; format=flowed Content-Transfer-Encoding: 7bit X-IsSubscribed: yes Mailing-List: contact gdb-patches-help@sourceware.org; run by ezmlm Precedence: bulk List-Id: List-Subscribe: List-Archive: List-Post: List-Help: , Sender: gdb-patches-owner@sourceware.org X-SW-Source: 2009-07/txt/msg00372.txt.bz2 Daniel Jacobowitz wrote: > On Mon, Jul 13, 2009 at 12:30:19PM -0700, Michael Snyder wrote: >> You're right, bad judgement call on my part. >> I'll take it out again until this is resolved. > > Thanks. Or we can just fix the test, since it sounds straightforward. > >> The issue is, the test contains a hand-coded artificial signal >> frame/handler consisting of a single "ret" instruction. >> >> My new epilogue unwinder recognizes the "ret", so it lays >> claim to the frame before the dwarf unwinder has a chance. >> >> It still does a proper backtrace, but of course it doesn't >> show the tag, it just shows the function name. >> >> What do you think? Could we maybe add a nop here or something? >> I don't understand the details well enough to speculate. > > That ought to work, with a comment about what it's there for. > Just don't push/pop to change the stack layout. Ah, thank goodness, it works. Will submit separately.