From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 23948 invoked by alias); 6 May 2003 19:46:47 -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 23941 invoked from network); 6 May 2003 19:46:45 -0000 Received: from unknown (HELO hub.ott.qnx.com) (209.226.137.76) by sources.redhat.com with SMTP; 6 May 2003 19:46:45 -0000 Received: from smtp.ott.qnx.com (smtp.ott.qnx.com [10.0.2.158]) by hub.ott.qnx.com (8.9.3p2/8.9.3) with ESMTP id PAA29111 for ; Tue, 6 May 2003 15:44:02 -0400 Received: from node1.ott.qnx.com (hwlab1 [10.0.2.159]) by smtp.ott.qnx.com (8.8.8/8.6.12) with ESMTP id PAA07054 for ; Tue, 6 May 2003 15:46:44 -0400 Received: (from alain@localhost) by node1.ott.qnx.com (8.8.8/8.6.12) id PAA03479 for gdb@sources.redhat.com; Tue, 6 May 2003 15:46:43 -0400 Message-Id: <200305061946.PAA03479@node1.ott.qnx.com> Subject: Re: Catchpoint in GDB/MI To: drow@mvista.com (Daniel Jacobowitz) Date: Tue, 06 May 2003 19:46:00 -0000 From: "Alain Magloire" Cc: gdb@sources.redhat.com In-Reply-To: <20030506164501.GA25457@nevyn.them.org> from "Daniel Jacobowitz" at May 06, 2003 12:45:01 PM MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit X-SW-Source: 2003-05/txt/msg00081.txt.bz2 > > On Tue, May 06, 2003 at 12:12:10PM -0400, Alain Magloire wrote: > > > > > > On Tue, May 06, 2003 at 11:15:50AM -0400, Alain Magloire wrote: > > > > > > > > > > On Tue, May 06, 2003 at 10:50:47AM -0400, Alain Magloire wrote: > > > > > > Bonjour > > > > > > > > > > > > Anyone working on putting catchpoints in GDB/MI. > > > > > > If yes what is the semantics. > > > > > > If no what is the best semantic? Completely OOB: > > > > > > > > > > > > -catch load > > > > > > ^done > > > > > > ... > > > > > > > > > > > > *stop,reason="shared-loaded",shared="libm.so" > > > > > > > > > > Do we even have any targets besides HP/UX where shared library > > > > > catchpoints _work_? > > > > > > > > Probably none, in the gdb source tree. For example, catching exceptions > > > > is probably compiler dependent 8-( .. I think. Do remember Daniel Berlin > > > > proposing a scheme for gcc long long time ago, could not retrace the email > > > > though ... darn! > > > > > > I've actually added catchpoints for exceptions back; but they'll just > > > show up as breakpoints for now. If we want them to show up differently > > > someone's going to have to work out (both CLI and MI) what they should > > > look like. > > > > > > > Details please? 8-) > > > > Do you mean setting breakpoint on some special function used to throw > > exception __raise_exception(..)? > > > > How does it work ? > > Yes. It's __cxa_throw and __cxa_begin_catch; I only implemented them > for the GCC 3.x (i.e. multivendor) ABI. You can find the patch in the > archives if you want to know more :) > Are you refering to this: http://sources.redhat.com/ml/gdb/2002-07/msg00191.html Very informative, thanks. Reading your exchange, I probably can implement your scheme whithout having to change gdb; setting the breakpoint in __cxa_throw and examining the arguments. It seems straightforward enough, so why not put it in gdb? Unless of course I do not grasp the entire complexity of the problem 8-) True it is compiler specific unless the cxxabi becomes more widespread but at least a start. > > > > > > We need to fix them before we talk about their MI > > > > > syntax, IMO. Similarly for most of the others. > > > > > > > > > > > > > True, but there are a lot of MI commands that are define but > > > > not implemented in the current tree or rather can not be implemented > > > > in a clean way to be submit back. So not all gdb/mi are equal depending > > > > on the distribution. But having the MI framework already in place is > > > > a good step in normalizing(sp?). > > > > > > I'm not sure that catchpoints _can_ be normalized. The ones we have > > > now are mostly extremely system dependent. > > > > > > > Yes and with this in mind, I would advocate to put the MI framework/commands > > in place even if they endup throwing "(not implemented)" on many platforms > > or c++ compilers. > > My point is that the available information and semantics will vary a > lot. For instance, which frame you're in when you hit them, et cetera. > > Perhaps you're right. > > -- > Daniel Jacobowitz > MontaVista Software Debian GNU/Linux Developer > -- au revoir, alain ---- Aussi haut que l'on soit assis, on est toujours assis que sur son cul !!!