From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 28398 invoked by alias); 11 Jul 2005 15:42:56 -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 27932 invoked by uid 22791); 11 Jul 2005 15:42:49 -0000 Received: from fra-del-01.spheriq.net (HELO fra-del-01.spheriq.net) (195.46.51.97) by sourceware.org (qpsmtpd/0.30-dev) with ESMTP; Mon, 11 Jul 2005 15:42:49 +0000 Received: from fra-out-03.spheriq.net (fra-out-03.spheriq.net [195.46.51.131]) by fra-del-01.spheriq.net with ESMTP id j6BFglqD027927 for ; Mon, 11 Jul 2005 15:42:47 GMT Received: from fra-cus-02.spheriq.net (fra-cus-02.spheriq.net [195.46.51.38]) by fra-out-03.spheriq.net with ESMTP id j6BFgPsS012022 for ; Mon, 11 Jul 2005 15:42:25 GMT Received: from beta.dmz-eu.st.com (beta.dmz-eu.st.com [164.129.1.35]) by fra-cus-02.spheriq.net with ESMTP id j6BFg8mf014108 (version=TLSv1/SSLv3 cipher=EDH-RSA-DES-CBC3-SHA bits=168 verify=OK) for ; Mon, 11 Jul 2005 15:42:15 GMT Received: from zeta.dmz-eu.st.com (ns2.st.com [164.129.230.9]) by beta.dmz-eu.st.com (STMicroelectronics) with ESMTP id 0B642DA41 for ; Mon, 11 Jul 2005 15:42:05 +0000 (GMT) Received: by zeta.dmz-eu.st.com (STMicroelectronics, from userid 60012) id 79E2D47562; Mon, 11 Jul 2005 15:44:04 +0000 (GMT) Received: from zeta.dmz-eu.st.com (localhost [127.0.0.1]) by zeta.dmz-eu.st.com (STMicroelectronics) with ESMTP id AF07575969 for ; Mon, 11 Jul 2005 15:44:03 +0000 (UTC) Received: from mail1.bri.st.com (mail1.bri.st.com [164.129.8.218]) by zeta.dmz-eu.st.com (STMicroelectronics) with ESMTP id 906B747566 for ; Mon, 11 Jul 2005 15:44:02 +0000 (GMT) Received: from terrorhawk.bri.st.com (terrorhawk.bri.st.com [164.129.15.13]) by mail1.bri.st.com (MOS 3.4.4-GR) with ESMTP id BOW00715 (AUTH "andrew stubbs"); Mon, 11 Jul 2005 16:42:00 +0100 (BST) Date: Mon, 11 Jul 2005 15:42:00 -0000 To: GDB Subject: Invalid registers From: Andrew STUBBS Content-Type: text/plain; format=flowed; delsp=yes; charset=iso-8859-15 MIME-Version: 1.0 Content-Transfer-Encoding: 8bit Message-ID: User-Agent: Opera M2/8.01 (Win32, build 7642) X-O-General-Status: No X-O-Spam1-Status: Not Scanned X-O-Spam2-Status: Not Scanned X-O-URL-Status: Not Scanned X-O-Virus1-Status: No X-O-Virus2-Status: Not Scanned X-O-Virus3-Status: No X-O-Virus4-Status: No X-O-Virus5-Status: Not Scanned X-O-Image-Status: Not Scanned X-O-Attach-Status: Not Scanned X-SpheriQ-Ver: 2.2.2 X-SW-Source: 2005-07/txt/msg00116.txt.bz2 Hi, I have been having a little trouble updating from GDB 5.3 to GDB 6.3. It used to be the case that GDB would report '*value not available*' (for SH - I haven't checked other architectures) if the value of a register is not known in the current stack frame. However, it no longer does this. Since I assume it has not acquired some way to find out what that value was, I also assume this is somehow broken. (Note that SH already was broken in this respect for fp registers etc.) The code to print the data, in sh-tdep.c, has not changed greatly. It still calls frame_register_read() to discover the status of each register. However, deep in regcache.c, the code to handle this sort of thing has changed somewhat (indeed a few 'deprecated_...'s have got into the mix). The result is that no register is ever marked invalid. I cannot find out how (or where) it is supposed to know whether a register is invalid or not. Nor can I find any relevant discussion on the subject by googling (or I don't recognise it when I see it). Has this problem been fixed since 6.3 or become somehow obsolete? If not, any clues how to fix it? Thanks Andrew Stubbs