From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 17656 invoked by alias); 20 Apr 2002 02:53:00 -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 17633 invoked from network); 20 Apr 2002 02:52:58 -0000 Received: from unknown (HELO pizda.ninka.net) (216.101.162.242) by sources.redhat.com with SMTP; 20 Apr 2002 02:52:58 -0000 Received: from localhost (IDENT:davem@localhost.localdomain [127.0.0.1]) by pizda.ninka.net (8.9.3/8.9.3) with ESMTP id TAA09310; Fri, 19 Apr 2002 19:44:17 -0700 Date: Fri, 19 Apr 2002 19:53:00 -0000 Message-Id: <20020419.194417.101826241.davem@redhat.com> To: ac131313@cygnus.com Cc: msnyder@redhat.com, gdb-patches@sources.redhat.com Subject: Re: [RFA] Sparc/Linux fixes part 1 From: "David S. Miller" In-Reply-To: <3CC0D67F.5060504@cygnus.com> References: <3CC0CEB1.9080106@cygnus.com> <20020419.190949.100077712.davem@redhat.com> <3CC0D67F.5060504@cygnus.com> Mime-Version: 1.0 Content-Type: Text/Plain; charset=us-ascii Content-Transfer-Encoding: 7bit X-SW-Source: 2002-04/txt/msg00666.txt.bz2 From: Andrew Cagney Date: Fri, 19 Apr 2002 22:46:23 -0400 How does this Kernel, for instance, differentate between a GNU/Linux sparc binary and a Solaris binary when doing emulation? I'm going to delete the Solaris binary support any day now as an aside. The two binaries look identical, the both look like elf32_sparc. I don't know how many times I can say this. "The binaries look identical, but we screwed up on Sparc/Linux a long time ago and the long double type is 8 bytes instead of the ABI mandated 16 bytes. We are in no position to change this with the amount of existing binaries out there." There is no distinguising characterstic in the elf header nor anywhere else. I can't "look at the bfd and elf bits" to "find out" what the long double type size is. The information simply isn't there. What the heck do you want me to do? If it's a native 32-bit Sparc binary running on a Linux/Sparc host, the long double type is 8 bytes. That is the algorithm, and it is what I have implemented.