From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 32280 invoked by alias); 10 Jan 2008 21:47:24 -0000 Received: (qmail 32269 invoked by uid 22791); 10 Jan 2008 21:47:23 -0000 X-Spam-Check-By: sourceware.org Received: from bluesmobile.specifix.com (HELO bluesmobile.specifix.com) (216.129.118.140) by sourceware.org (qpsmtpd/0.31) with ESMTP; Thu, 10 Jan 2008 21:47:05 +0000 Received: from [127.0.0.1] (bluesmobile.specifix.com [216.129.118.140]) by bluesmobile.specifix.com (Postfix) with ESMTP id D564D3C197; Thu, 10 Jan 2008 13:47:02 -0800 (PST) Subject: Re: [RFC/RFA?] Should break FILE:LINENO skip prologue? From: Michael Snyder To: Eric Botcazou Cc: Mark Kettenis , brobecker@adacore.com, jimb@codesourcery.com, gdb-patches@sourceware.org In-Reply-To: <200801101247.28736.ebotcazou@adacore.com> References: <20080109151745.GA13181@adacore.com> <200801092140.43362.ebotcazou@adacore.com> <200801101058.m0AAw7HA023877@brahms.sibelius.xs4all.nl> <200801101247.28736.ebotcazou@adacore.com> Content-Type: text/plain Date: Thu, 10 Jan 2008 21:47:00 -0000 Message-Id: <1200001622.14654.29.camel@localhost.localdomain> Mime-Version: 1.0 X-Mailer: Evolution 2.10.3 (2.10.3-4.fc7) 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: 2008-01/txt/msg00247.txt.bz2 On Thu, 2008-01-10 at 12:47 +0100, Eric Botcazou wrote: > > If generating the right location information for -O0 is too difficult, > > perhaps the compiler should make life easier for itself and disable > > scheduling instructions into the prologue? > > What do you call "scheduling instructions into the prologue" exactly? I wouldn't speak for Mark, but personally I could imagine, say, that at -O0 gcc might treat the prologue (whatever we decide that means) as an atom, and not allow non-prologue instructions to be shuffled into it. The next question would be, are automatic variable initializations part of that atom? I might say that I personally rarely need to debug the "formal" prologue (that part that would exist in any (framed/frameless) function independent of automatics initialization), and when I do, it's as a tools developer, not as an ordinary debugger user. Therefore I don't mind having to do something "special". But the initializations are another story, especially if they require non-trivial stuff like computations or function calls. Any user might reasonably want to debug those. So any change that made it difficult for a user to debug those (say by forcing him to set a break at the label) would go against the grain for me.