]> git.ipfire.org Git - thirdparty/gcc.git/commitdiff
re PR lto/47247 (Linker plugin specification makes it difficult to handle COMDATs)
authorCary Coutant <ccoutant@google.com>
Mon, 26 Sep 2011 23:32:13 +0000 (23:32 +0000)
committerCary Coutant <ccoutant@gcc.gnu.org>
Mon, 26 Sep 2011 23:32:13 +0000 (16:32 -0700)
PR lto/47247
* plugin-api.h (enum ld_plugin_symbol_resolution): Add
LDPR_PREVAILING_DEF_IRONLY_EXP.
(enum ld_plugin_tag): Add LDPT_GET_SYMBOLS_V2.

From-SVN: r179220

include/ChangeLog
include/plugin-api.h

index 63feb8356ce27702ea5a640c36e26132fdf43a5a..3cc8996068888721b6b46e09b1ced97945e4b0bb 100644 (file)
@@ -1,3 +1,10 @@
+2011-09-26  Cary Coutant  <ccoutant@google.com>
+
+       PR lto/47247
+       * plugin-api.h (enum ld_plugin_symbol_resolution): Add
+       LDPR_PREVAILING_DEF_IRONLY_EXP.
+       (enum ld_plugin_tag): Add LDPT_GET_SYMBOLS_V2.
+
 2011-09-23  Cary Coutant  <ccoutant@google.com>
 
        PR 40831
index df0039372f37eca1626d47bc2fe751ac149b9be2..122424c6cb77cc30b37d08980f2efe785d2775ad 100644 (file)
@@ -155,7 +155,13 @@ enum ld_plugin_symbol_resolution
   LDPR_RESOLVED_EXEC,
 
   /* This symbol was resolved by a definition in a shared object.  */
-  LDPR_RESOLVED_DYN
+  LDPR_RESOLVED_DYN,
+
+  /* This is the prevailing definition of the symbol, with no
+     references from regular objects.  It is only referenced from IR
+     code, but the symbol is exported and may be referenced from
+     a dynamic object (not seen at link time).  */
+  LDPR_PREVAILING_DEF_IRONLY_EXP
 };
 
 /* The plugin library's "claim file" handler.  */
@@ -347,7 +353,8 @@ enum ld_plugin_tag
   LDPT_GET_INPUT_SECTION_NAME,
   LDPT_GET_INPUT_SECTION_CONTENTS,
   LDPT_UPDATE_SECTION_ORDER,
-  LDPT_ALLOW_SECTION_ORDERING
+  LDPT_ALLOW_SECTION_ORDERING,
+  LDPT_GET_SYMBOLS_V2
 };
 
 /* The plugin transfer vector.  */