From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 326 invoked by alias); 8 Jun 2005 11:13:20 -0000 Mailing-List: contact binutils-help@sources.redhat.com; run by ezmlm Precedence: bulk List-Subscribe: List-Archive: List-Post: List-Help: , Sender: binutils-owner@sources.redhat.com Received: (qmail 32697 invoked by uid 22791); 8 Jun 2005 11:13:11 -0000 Received: from norbert.ecoscentric.com (HELO smtp.ecoscentric.com) (194.153.168.165) by sourceware.org (qpsmtpd/0.30-dev) with ESMTP; Wed, 08 Jun 2005 11:13:11 +0000 Received: by smtp.ecoscentric.com (Postfix, from userid 99) id D854465C0FF; Wed, 8 Jun 2005 12:13:09 +0100 (BST) Received: from [127.0.0.1] (localhost [127.0.0.1]) by smtp.ecoscentric.com (Postfix) with ESMTP id A0B5C65C064; Wed, 8 Jun 2005 12:13:08 +0100 (BST) Message-ID: <42A6D2FF.4040909@eCosCentric.com> Date: Wed, 08 Jun 2005 11:13:00 -0000 From: Jonathan Larmour User-Agent: Mozilla Thunderbird 1.0.2-1.3.3 (X11/20050513) MIME-Version: 1.0 To: Alan Modra Cc: binutils@sources.redhat.com Subject: Re: gc sections and .eh_frame References: <42A5DE0C.9050108@eCosCentric.com> <20050608020819.GR2677@bubble.grove.modra.org> In-Reply-To: <20050608020819.GR2677@bubble.grove.modra.org> Content-Type: text/plain; charset=ISO-8859-1; format=flowed Content-Transfer-Encoding: 7bit X-SW-Source: 2005-06/txt/msg00172.txt.bz2 Alan Modra wrote: > On Tue, Jun 07, 2005 at 06:49:00PM +0100, Jonathan Larmour wrote: > >>But now I'm using the powerpc architecture where the stuff usually in >>.gcc_except_table is placed in .rodata instead. If the object file has >>nothing else in .rodata, then that section is also being GC'd in the final >>link. And Bad Things Happen. > > > Which powerpc target? What compiler version? powerpc-eabi, gcc 3.4.4. From a brief foray into the GCC sources, I believe the use of gcc_except_table depends on the existence of TARGET_ASM_NAMED_SECTION, which is not defined for any powerpc other than rs6000-xcoff. There are probably other targets than powerpc that don't have TARGET_ASM_NAMED_SECTION too. From a glance, SuperH doesn't either at least. I still don't have an understanding as to why sections referenced (by reloc) from .eh_frame shouldn't be kept safe from GC. Marking them as KEEP in the linker script just means that you've got one bit of code trying to stop such sections being included, and another bit in the linker script forcing them to be. It seems pointless and breaks existing working linker scripts, nevermind the powerpc issue. Jifl -- eCosCentric http://www.eCosCentric.com/ The eCos and RedBoot experts --["No sense being pessimistic, it wouldn't work anyway"]-- Opinions==mine