From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 32671 invoked by alias); 22 Jul 2004 21:33:31 -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 32664 invoked from network); 22 Jul 2004 21:33:30 -0000 Received: from unknown (HELO rwcrmhc12.comcast.net) (216.148.227.85) by sourceware.org with SMTP; 22 Jul 2004 21:33:30 -0000 Received: from lucon.org ([24.6.43.109]) by comcast.net (rwcrmhc12) with ESMTP id <20040722213328014003deo5e>; Thu, 22 Jul 2004 21:33:28 +0000 Received: by lucon.org (Postfix, from userid 1000) id 9E40364298; Thu, 22 Jul 2004 14:33:27 -0700 (PDT) Date: Thu, 22 Jul 2004 21:38:00 -0000 From: "H. J. Lu" To: Mark Kettenis Cc: eliz@gnu.org, cagney@gnu.org, gdb@sources.redhat.com Subject: Re: [6.2] PROBLEMS file Message-ID: <20040722213327.GA16623@lucon.org> References: <40FB3F1F.3040900@gnu.org> <1659-Mon19Jul2004215127+0300-eliz@gnu.org> <200407212059.i6LKxgQ9019045@copland.kettenis.dyndns.org> <20040721211632.GA26232@lucon.org> <200407222051.i6MKpm8V003302@elgar.kettenis.dyndns.org> Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <200407222051.i6MKpm8V003302@elgar.kettenis.dyndns.org> User-Agent: Mutt/1.4.1i X-SW-Source: 2004-07/txt/msg00289.txt.bz2 On Thu, Jul 22, 2004 at 10:51:48PM +0200, Mark Kettenis wrote: > Date: Wed, 21 Jul 2004 14:16:32 -0700 > From: "H. J. Lu" > > FYI, the i386 psABI, which is also used by the x86-64 psABI, says: > > %ebp The content of this register is unspecified at process > initialization time, but the user code should mark the > deepest stack frame by setting the frame pointer to zero. > No other frame's %ebp should have a zero value. > > Which contradicts the optional nature of %ebp as a frame pointer. So > the standard contradicts itself. Anyway, in practice the %ebp == 0 > condition is useless. Not at all. Standard is quite clear to me. According to i386 psABI, %ebp has to be preserved for the caller. If the first instruction of a function in an ABI compliant application is to clear %ebp, it must be marking the deepest stack frame. But I can be convinced if you can show me an example otherwise. H.J.