This is the mail archive of the binutils@sources.redhat.com mailing list for the binutils project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: RFA: Extensions to the .eh_frame linker code


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


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]