if (addToAccelTable)
addAccelName(GV.getName(), VariableDIE);
+ // If the linkage name is different than the name, go ahead and output
+ // that as well into the name table.
+ if (GV.getLinkageName() != "" && GV.getName() != GV.getLinkageName())
+ addAccelName(GV.getLinkageName(), VariableDIE);
+
return;
}
if (DS.isSubprogram())
TheCU->addPubTypes(DISubprogram(DS));
- if (DS.isSubprogram() && !Scope->isAbstractScope())
- TheCU->addAccelName(DISubprogram(DS).getName(), ScopeDIE);
+ if (DS.isSubprogram() && !Scope->isAbstractScope()) {
+ DISubprogram SP = DISubprogram(DS);
+ TheCU->addAccelName(SP.getName(), ScopeDIE);
+
+ // If the linkage name is different than the name, go ahead and output
+ // that as well into the name table.
+ if (SP.getLinkageName() != "" && SP.getName() != SP.getLinkageName())
+ TheCU->addAccelName(SP.getLinkageName(), ScopeDIE);
+ }
return ScopeDIE;
}
// Add to Accel Names
TheCU->addAccelName(SP.getName(), SubprogramDie);
+ // If the linkage name is different than the name, go ahead and output
+ // that as well into the name table.
+ if (SP.getLinkageName() != "" && SP.getName() != SP.getLinkageName())
+ TheCU->addAccelName(SP.getLinkageName(), SubprogramDie);
+
// If this is an Objective-C selector name add it to the ObjC accelerator too.
if (isObjCClass(SP.getName())) {
StringRef Class, Category;