From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 2792 invoked by alias); 15 Nov 2004 02:07:26 -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 1905 invoked from network); 15 Nov 2004 02:07:20 -0000 Received: from unknown (HELO gizmo06bw.bigpond.com) (144.140.70.41) by sourceware.org with SMTP; 15 Nov 2004 02:07:20 -0000 Received: (qmail 11883 invoked from network); 15 Nov 2004 02:07:18 -0000 Received: from unknown (HELO bwmam12.bigpond.com) (144.135.24.103) by gizmo06bw.bigpond.com with SMTP; 15 Nov 2004 02:07:18 -0000 Received: from cpe-144-136-221-26.sa.bigpond.net.au ([144.136.221.26]) by bwmam12.bigpond.com(MAM REL_3_4_2a 189/6458554) with SMTP id 6458554; Mon, 15 Nov 2004 12:07:18 +1000 Received: by bubble.modra.org (Postfix, from userid 500) id 37B30136F89; Mon, 15 Nov 2004 12:37:18 +1030 Date: Mon, 15 Nov 2004 02:07:00 -0000 From: Alan Modra To: Richard Sandiford Cc: binutils@sources.redhat.com Subject: Re: RFA: Extensions to the .eh_frame linker code Message-ID: <20041115020718.GH32175@bubble.modra.org> Mail-Followup-To: Richard Sandiford , binutils@sources.redhat.com References: <87654akkwn.fsf@redhat.com> Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <87654akkwn.fsf@redhat.com> User-Agent: Mutt/1.4i X-SW-Source: 2004-11/txt/msg00217.txt.bz2 On Sat, Nov 13, 2004 at 12:12:24PM +0000, Richard Sandiford wrote: > The make_relative/need_relative distinction was a result of Alan's > fix for ld/418. As I understand it, the important part of that change > was really the make_lsda_relative/need_lsda_relative split (because we > don't know for sure what the LSDA actually contains). It looks like > the make_relative/need_relative part was done more for consistency > than anything. True enough. I can't think of any situation where need_relative won't be set if make_relative isn't set, except for FDEs that are discarded. > @@ -289,6 +289,8 @@ struct eh_cie_fde > /* For FDEs, this points to the CIE used. */ > struct eh_cie_fde *cie_inf; > unsigned int size; > + unsigned int growth; > + unsigned int new_size; > unsigned int offset; > unsigned int new_offset; > unsigned char fde_encoding; Can you do without these extra fields? It seems a waste of memory to have them in a struct kept for all FDEs. Perhaps you could split this struct into two variants, one for CIEs and one for FDEs. -- Alan Modra IBM OzLabs - Linux Technology Centre