From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 7710 invoked by alias); 11 Apr 2002 15:19:15 -0000 Mailing-List: contact gcc-help@gcc.gnu.org; run by ezmlm Precedence: bulk List-Archive: List-Post: List-Help: Sender: gcc-owner@gcc.gnu.org Received: (qmail 7678 invoked from network); 11 Apr 2002 15:19:11 -0000 Received: from unknown (HELO hiauly1.hia.nrc.ca) (132.246.100.193) by sources.redhat.com with SMTP; 11 Apr 2002 15:19:11 -0000 Received: from hiauly1.hia.nrc.ca (localhost [127.0.0.1]) by hiauly1.hia.nrc.ca (8.12.0.Beta16/8.12.0.Beta16) with ESMTP id g3BFIoFN029967; Thu, 11 Apr 2002 11:18:51 -0400 (EDT) Received: (from dave@localhost) by hiauly1.hia.nrc.ca (8.12.0.Beta16/8.12.0.Beta16) id g3BFIoZE029965; Thu, 11 Apr 2002 11:18:50 -0400 (EDT) Message-Id: <200204111518.g3BFIoZE029965@hiauly1.hia.nrc.ca> Subject: Re: gcc-64 on HP-UX 11.00 To: h.m.brand@hccnet.nl (H.Merijn Brand) Date: Thu, 11 Apr 2002 08:59:00 -0000 From: "John David Anglin" Cc: gcc@gcc.gnu.org In-Reply-To: <20020411100144.CEC8.H.M.BRAND@hccnet.nl> from "H.Merijn Brand" at Apr 11, 2002 10:23:40 am MIME-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 7bit X-SW-Source: 2002-04/txt/msg00442.txt.bz2 > On Wed 10 Apr 2002 21:44, "John David Anglin" wrote: > > > The latest 'snapshot' as in gcc-20020408.tar.bz2 > > > > I'll try the current cvs. I've duplicated the problem that you found. It's a bug in the GNU linker. It's not handling the relocations required for inline plabels correctly. The function splay_tree_new_with_allocator seg-faults when it is passed a pointer to the function splay_tree_xmalloc_allocate rather than a pointer to a function descriptor for splay_tree_xmalloc_allocate. The problem is present in both 3.1 and the trunk. This problem was introduced on 2002-02-22 when splay-tree.c was changed to use the above indirect call. The function splay-tree.c is in libiberty. Libiberty gets built just in stage1 with the HP compiler. The HP compiler now uses inline plabels (LTP and RTP selectors). The HP assembler and linker can handle these relocation selectors, but unfortunately not the GNU linker. Gcc doesn't generate inline plabels on the PA. It would save one insn and one data location if we could use these selectors. However, there have been problems with them in 32bit land for years. I think the current assembler can handle them but the SOM linker still doesn't handle them. The work around is to use the HP linker for the initial bootstrap. I recommend just building C, install it, then do another full bootstrap using gcc and the GNU linker. You have to use the GNU assembler for both builds. Could you try another build? Just remove "--with-gnu-ld" from your script and specify "--with-ld=/usr/ccs/bin/ld". You may want to export LD_PXDB=/usr/bin/true to defer invocation of pxdb. Dave -- J. David Anglin dave.anglin@nrc.ca National Research Council of Canada (613) 990-0752 (FAX: 952-6605)