Switch llvm to using comdats. For now always use groups with a single
section.
llvm-svn: 125526
diff --git a/llvm/tools/gold/gold-plugin.cpp b/llvm/tools/gold/gold-plugin.cpp
index 257c766..01816ae 100644
--- a/llvm/tools/gold/gold-plugin.cpp
+++ b/llvm/tools/gold/gold-plugin.cpp
@@ -339,6 +339,7 @@
}
int definition = attrs & LTO_SYMBOL_DEFINITION_MASK;
+ sym.comdat_key = NULL;
switch (definition) {
case LTO_SYMBOL_DEFINITION_REGULAR:
sym.def = LDPK_DEF;
@@ -350,6 +351,7 @@
sym.def = LDPK_COMMON;
break;
case LTO_SYMBOL_DEFINITION_WEAK:
+ sym.comdat_key = sym.name;
sym.def = LDPK_WEAKDEF;
break;
case LTO_SYMBOL_DEFINITION_WEAKUNDEF:
@@ -360,9 +362,7 @@
return LDPS_ERR;
}
- // LLVM never emits COMDAT.
sym.size = 0;
- sym.comdat_key = NULL;
sym.resolution = LDPR_UNKNOWN;
}