From 15fc2e131d8effb40f28e922c2d402cccf8c8193 Mon Sep 17 00:00:00 2001 From: Alan Modra Date: Tue, 20 Sep 2011 04:58:56 +0000 Subject: PR ld/12301 * ldlang.h (lang_input_statement_type): Add "reload" bitfield. Clarify comments. * ldlang.c (new_afile): Init new field. (load_symbols): Don't call ldlang_add_file when reloading. (open_input_bfds): Reload as-needed libs during plugin rescan. --- ld/ldlang.h | 12 ++++++++---- 1 file changed, 8 insertions(+), 4 deletions(-) (limited to 'ld/ldlang.h') diff --git a/ld/ldlang.h b/ld/ldlang.h index 533fe744386..95f94128b35 100644 --- a/ld/ldlang.h +++ b/ld/ldlang.h @@ -270,12 +270,13 @@ typedef struct lang_input_statement_struct /* Whether to search for this entry as a dynamic archive. */ unsigned int dynamic : 1; - /* Whether DT_NEEDED tags should be added for dynamic libraries in - DT_NEEDED tags from this entry. */ + /* Set if a DT_NEEDED tag should be added not just for the dynamic library + explicitly given by this entry but also for any dynamic libraries in + this entry's needed list. */ unsigned int add_DT_NEEDED_for_dynamic : 1; - /* Whether this entry should cause a DT_NEEDED tag only when - satisfying references from regular files, or always. */ + /* Set if this entry should cause a DT_NEEDED tag only when some + regular file references its symbols (ie. --as-needed is in effect). */ unsigned int add_DT_NEEDED_for_regular : 1; /* Whether to include the entire contents of an archive. */ @@ -295,6 +296,9 @@ typedef struct lang_input_statement_struct /* Set if the file was claimed from an archive. */ unsigned int claim_archive : 1; + + /* Set if reloading an --as-needed lib. */ + unsigned int reload : 1; #endif /* ENABLE_PLUGINS */ } lang_input_statement_type; -- cgit v1.2.1