File tree Expand file tree Collapse file tree 2 files changed +15
-6
lines changed Expand file tree Collapse file tree 2 files changed +15
-6
lines changed Original file line number Diff line number Diff line change @@ -1632,10 +1632,18 @@ class ApplyIRLinkage {
1632
1632
// apply the COMDAT.
1633
1633
if (definition)
1634
1634
if (IRL.Linkage == llvm::GlobalValue::LinkOnceODRLinkage ||
1635
- IRL.Linkage == llvm::GlobalValue::WeakODRLinkage)
1636
- if (Triple.supportsCOMDAT ())
1637
- if (llvm::GlobalObject *GO = dyn_cast<llvm::GlobalObject>(GV))
1635
+ IRL.Linkage == llvm::GlobalValue::WeakODRLinkage) {
1636
+ if (Triple.supportsCOMDAT ()) {
1637
+ if (llvm::GlobalObject *GO = dyn_cast<llvm::GlobalObject>(GV)) {
1638
+ if (GV->getName ().equals (" $sSo18CFDateFormatterRefaMf" )) {
1639
+ llvm::dbgs () << " Setting comdat in" << M->getName () << " \n " ;
1640
+ }
1638
1641
GO->setComdat (M->getOrInsertComdat (GV->getName ()));
1642
+ }
1643
+ }
1644
+ } else if (GV->getName ().equals (" $sSo18CFDateFormatterRefaMf" )){
1645
+ llvm::dbgs () << " Not setting comdat in " << M->getName () << " \n " ;
1646
+ }
1639
1647
}
1640
1648
};
1641
1649
Original file line number Diff line number Diff line change @@ -2705,9 +2705,6 @@ Address IRGenModule::getAddrOfSILGlobalVariable(SILGlobalVariable *var,
2705
2705
gvar->setInitializer (llvm::Constant::getNullValue (storageTypeWithContainer));
2706
2706
else
2707
2707
gvar->setComdat (nullptr );
2708
- if (gvar->getName ().equals (" $sSo18CFDateFormatterRefaMf" )) {
2709
- gvar->dump ();
2710
- }
2711
2708
}
2712
2709
llvm::Constant *addr = gvar;
2713
2710
if (var->isInitializedObject () && !canMakeStaticObjectsReadOnly ()) {
@@ -5135,6 +5132,10 @@ IRGenModule::getAddrOfTypeMetadata(CanType concreteType,
5135
5132
5136
5133
if (auto *GV = dyn_cast<llvm::GlobalVariable>(addr.getValue ()))
5137
5134
GV->setComdat (nullptr );
5135
+ if (addr.getValue ()->getName ().equals (" $sSo18CFDateFormatterRefaMf" )) {
5136
+ addr.getValue ()->dump ();
5137
+ }
5138
+
5138
5139
5139
5140
// FIXME: MC breaks when emitting alias references on some platforms
5140
5141
// (rdar://problem/22450593 ). Work around this by referring to the aliasee
You can’t perform that action at this time.
0 commit comments