File tree Expand file tree Collapse file tree 2 files changed +15
-3
lines changed Expand file tree Collapse file tree 2 files changed +15
-3
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 @@ -5135,6 +5135,10 @@ IRGenModule::getAddrOfTypeMetadata(CanType concreteType,
5135
5135
5136
5136
if (auto *GV = dyn_cast<llvm::GlobalVariable>(addr.getValue ()))
5137
5137
GV->setComdat (nullptr );
5138
+ if (addr.getValue ()->getName ().equals (" $sSo18CFDateFormatterRefaMf" )) {
5139
+ addr.getValue ()->dump ();
5140
+ }
5141
+
5138
5142
5139
5143
// FIXME: MC breaks when emitting alias references on some platforms
5140
5144
// (rdar://problem/22450593 ). Work around this by referring to the aliasee
You can’t perform that action at this time.
0 commit comments