From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 18149 invoked by alias); 24 May 2009 19:39:08 -0000 Received: (qmail 18135 invoked by uid 22791); 24 May 2009 19:39:07 -0000 X-SWARE-Spam-Status: No, hits=-2.7 required=5.0 tests=AWL,BAYES_00,SPF_PASS X-Spam-Check-By: sourceware.org Received: from e24smtp01.br.ibm.com (HELO e24smtp01.br.ibm.com) (32.104.18.85) by sourceware.org (qpsmtpd/0.43rc1) with ESMTP; Sun, 24 May 2009 19:38:59 +0000 Received: from mailhub1.br.ibm.com (mailhub1.br.ibm.com [9.18.232.109]) by e24smtp01.br.ibm.com (8.13.1/8.13.1) with ESMTP id n4OJwjrD009111 for ; Sun, 24 May 2009 16:58:45 -0300 Received: from d24av01.br.ibm.com (d24av01.br.ibm.com [9.18.232.46]) by mailhub1.br.ibm.com (8.13.8/8.13.8/NCO v9.2) with ESMTP id n4OJdJ9T610500 for ; Sun, 24 May 2009 16:39:19 -0300 Received: from d24av01.br.ibm.com (loopback [127.0.0.1]) by d24av01.br.ibm.com (8.12.11.20060308/8.13.3) with ESMTP id n4OJct5W026287 for ; Sun, 24 May 2009 16:38:55 -0300 Received: from [9.8.3.97] ([9.8.3.97]) by d24av01.br.ibm.com (8.12.11.20060308/8.12.11) with ESMTP id n4OJctN7026278; Sun, 24 May 2009 16:38:55 -0300 Subject: Re: support for BookE hardware debug features From: Thiago Jung Bauermann To: gdb ml Cc: Luis Machado , =?ISO-8859-1?Q?S=E9rgio?= Durigan =?ISO-8859-1?Q?J=FAnior?= In-Reply-To: <1236026362.8949.96.camel@localhost.localdomain> References: <1236026362.8949.96.camel@localhost.localdomain> Content-Type: text/plain; charset="UTF-8" Date: Sun, 24 May 2009 19:39:00 -0000 Message-Id: <1243193918.10406.0.camel@hactar> Mime-Version: 1.0 Content-Transfer-Encoding: 8bit X-IsSubscribed: yes Mailing-List: contact gdb-help@sourceware.org; run by ezmlm Precedence: bulk List-Id: List-Subscribe: List-Archive: List-Post: List-Help: , Sender: gdb-owner@sourceware.org X-SW-Source: 2009-05/txt/msg00161.txt.bz2 Hi all, Em Seg, 2009-03-02 às 17:39 -0300, Thiago Jung Bauermann escreveu: > Right now GDB just supports one hardware watchpoint in embedded ppc > processors. We're adding support for: > > - one more hardware watchpoint, > - four hardware breakpoints, > - support for the two DVCs (Data Value Compare), which enable > hardware-accelerated conditions for hardware watchpoints, > - two ranged hardware breakpoints, > - one ranged hardware watchpoint. Just to give a status update on this work: up to now we have the following features implemented and fully functional: - one more hardware watchpoint, - four hardware breakpoints, - one ranged hardware watchpoint. The above are working for both native GDB and gdbserver, both on Linux. > We're also working on the kernel side of the equation. We'll test it all > on the ppc440 processor. The kernel support is going along nicely, but since it's not ready nor accepted upstream yet, we can't start posting our GDB patches that are ready. > We don't know yet how we'll extend gdb commands to express the ranged > breakpoints and watchpoints, and the DVCs. I implemented a "watch-range" command, which takes a start address (or expression which evaluates to an address) and an end address (or expression). Not sure if I'll keep it that way or change. Didn't think much about it yet. Also, I want GDB to automagically use the ranged watchpoint for big structs and arrays. > For the latter maybe we can > add some intelligence to use the registers if the condition expression > is simple enough, I didn't think much about this yet. We are just starting to work on the DVC (conditioned hw watchpoint), but for now I'm inclined to use it automagically for simple expressions with just one == or != operator. We're taking into account Joel's comments and suggestions on this. Thanks Joel for your input! Sérgio did most of the work here. I don't know if he wants to add anything to this report... -- []'s Thiago Jung Bauermann IBM Linux Technology Center