From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 30166 invoked by alias); 24 Apr 2007 21:52:26 -0000 Received: (qmail 30153 invoked by uid 22791); 24 Apr 2007 21:52:25 -0000 X-Spam-Check-By: sourceware.org Received: from return.false.org (HELO return.false.org) (66.207.162.98) by sourceware.org (qpsmtpd/0.31) with ESMTP; Tue, 24 Apr 2007 22:52:23 +0100 Received: from return.false.org (localhost [127.0.0.1]) by return.false.org (Postfix) with ESMTP id A31B64B267; Tue, 24 Apr 2007 16:52:22 -0500 (CDT) Received: from caradoc.them.org (dsl093-172-095.pit1.dsl.speakeasy.net [66.93.172.95]) by return.false.org (Postfix) with ESMTP id 7BF044B262; Tue, 24 Apr 2007 16:52:22 -0500 (CDT) Received: from drow by caradoc.them.org with local (Exim 4.67) (envelope-from ) id 1HgSvt-0001Vc-MY; Tue, 24 Apr 2007 17:52:21 -0400 Date: Tue, 24 Apr 2007 21:53:00 -0000 From: Daniel Jacobowitz To: Ulrich Weigand Cc: gdb-patches@sourceware.org Subject: Re: [rfc/rft] [3/4] Untangle register_addr - v2 - mips-linux Message-ID: <20070424215221.GB5173@caradoc.them.org> Mail-Followup-To: Ulrich Weigand , gdb-patches@sourceware.org References: <200704231545.l3NFjWHm019084@d12av02.megacenter.de.ibm.com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <200704231545.l3NFjWHm019084@d12av02.megacenter.de.ibm.com> User-Agent: Mutt/1.5.15 (2007-04-09) 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: 2007-04/txt/msg00330.txt.bz2 On Mon, Apr 23, 2007 at 05:45:32PM +0200, Ulrich Weigand wrote: > Hello, > > this is the updated mips-linux patch. Main difference is moving > mips_linux_cannot_fetch_register and mips_linux_cannot_store_register > to mips-linux-tdep.c and installing them as gdbarch callbacks. > > Tested by building --target=mips-linux and --host=mips-linux. Well, no, I don't think this will do. Sorry I didn't get to look at this before you redid it. The cannot_store_register callback refused stores to badvaddr and cause. If you're using a mips-linux native debugger, or talking to gdbserver, that's fine. But if you're using a mips-linux debugger and talking to kgdb over a JTAG unit, it's less fine. You should be able to write to cause if your target_ops permits. That's probably typical of user-readable supervisor mode registers. I bet there are plenty more targets with this situation where GDB just doesn't support the register in question. -- Daniel Jacobowitz CodeSourcery