From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 18509 invoked by alias); 28 Apr 2003 15:22:54 -0000 Mailing-List: contact gdb-patches-help@sources.redhat.com; run by ezmlm Precedence: bulk List-Subscribe: List-Archive: List-Post: List-Help: , Sender: gdb-patches-owner@sources.redhat.com Received: (qmail 18500 invoked from network); 28 Apr 2003 15:22:53 -0000 Received: from unknown (HELO localhost.redhat.com) (66.30.197.194) by sources.redhat.com with SMTP; 28 Apr 2003 15:22:53 -0000 Received: from redhat.com (localhost [127.0.0.1]) by localhost.redhat.com (Postfix) with ESMTP id 5BE4A2B2F; Mon, 28 Apr 2003 11:22:53 -0400 (EDT) Message-ID: <3EAD474C.6090403@redhat.com> Date: Mon, 28 Apr 2003 16:09:00 -0000 From: Andrew Cagney User-Agent: Mozilla/5.0 (X11; U; NetBSD macppc; en-US; rv:1.0.2) Gecko/20030223 X-Accept-Language: en-us, en MIME-Version: 1.0 To: Mark Kettenis , drow@mvista.com Cc: colins@google.com, gdb-patches@sources.redhat.com Subject: Re: patch for printing 64-bit values in i386 registers; STABS format References: <200304242231.h3OMVqM13587@dhcp357.corp.google.com> <20030425002744.GA9492@nevyn.them.org> <200304252121.h3PLLD8I000461@elgar.kettenis.dyndns.org> <20030425213548.GA22505@nevyn.them.org> <3EA9B6AE.90001@redhat.com> <20030426015010.GA25355@nevyn.them.org> <3EA9F295.2090803@redhat.com> <20030426030534.GA26304@nevyn.them.org> <3EA9FDDF.8070205@redhat.com> <200304272203.h3RM35Ur016419@elgar.kettenis.dyndns.org> Content-Type: text/plain; charset=us-ascii; format=flowed Content-Transfer-Encoding: 7bit X-SW-Source: 2003-04/txt/msg00519.txt.bz2 > Date: Fri, 25 Apr 2003 23:32:47 -0400 > From: Andrew Cagney > > > I'm afraid I don't understand, and I still don't see your reasoning > > against this approach. > > It isn't necessary, just like register convertible and register > raw/virtual size; .... that go before it, also were not necessary. And > now all these years later, GDB is still yet to expunge. > > I still don't see how you can get rid of the register convertible > stuff. On the i386 I still need it for variables stuffed into the > floating point registers. That case is fine. A while ago I split the mechanism in half: - given a single FP register convert the type into its true form - the MIPS jungle of combining sub-parts and adjacent FP and integer register values > Until someone does the right think - add support for values scattered > across registers and memory - hacks should be confined to architecture > specific code. > > But even if someone does add support for values scattered across > multiple registers and/or memory, we still need the architecture > method I proposed. There simply is too much debugging info out there > that can't express values being scattered across multiple registers. The stabs reader will need to be modified so that it generates a proper location description. Note that it is STABS centric. dwarf2 doesn't need that mechanism since (presumably) GCC is generating the correct info (....). > And I don't think the hack you proposed is a good idea. I think it's > better to add a new architecture method with a clear purpose than > abuse an existing mechanism for something that it wasn't quite > intended for. Even if the architecture method in question would only > be used by a single target. This is one of the intended purposes of this mechanism, and as I indicated, is needed by MIPS. Being able to project an arbitrary [debug info] view of the registers onto the raw register buffer. BTW, what happens when there is an attempt to write a long long value? GDB again assumes that it can write to contigious registers - the reason why REGISTER_BYTE can't be killed. Andrew