Lines Matching refs:TheFn
557 void applySingleImplDevirt(VTableSlotInfo &SlotInfo, Constant *TheFn,
1033 Constant *TheFn, bool &IsExported) { in applySingleImplDevirt() argument
1036 if (FunctionsToSkip.match(TheFn->stripPointerCasts()->getName())) in applySingleImplDevirt()
1042 TheFn->stripPointerCasts()->getName(), OREGetter); in applySingleImplDevirt()
1044 TheFn, VCallSite.CB.getCalledOperand()->getType())); in applySingleImplDevirt()
1092 Function *TheFn = TargetsForSlot[0].Fn; in trySingleImplDevirt() local
1094 if (TheFn != Target.Fn) in trySingleImplDevirt()
1102 applySingleImplDevirt(SlotInfo, TheFn, IsExported); in trySingleImplDevirt()
1109 if (TheFn->hasLocalLinkage()) { in trySingleImplDevirt()
1110 std::string NewName = (TheFn->getName() + "$merged").str(); in trySingleImplDevirt()
1115 if (Comdat *C = TheFn->getComdat()) { in trySingleImplDevirt()
1116 if (C->getName() == TheFn->getName()) { in trySingleImplDevirt()
1125 TheFn->setLinkage(GlobalValue::ExternalLinkage); in trySingleImplDevirt()
1126 TheFn->setVisibility(GlobalValue::HiddenVisibility); in trySingleImplDevirt()
1127 TheFn->setName(NewName); in trySingleImplDevirt()
1129 if (ValueInfo TheFnVI = ExportSummary->getValueInfo(TheFn->getGUID())) in trySingleImplDevirt()
1135 Res->SingleImplName = std::string(TheFn->getName()); in trySingleImplDevirt()
1147 auto TheFn = TargetsForSlot[0]; in trySingleImplDevirt() local
1149 if (TheFn != Target) in trySingleImplDevirt()
1153 auto Size = TheFn.getSummaryList().size(); in trySingleImplDevirt()
1159 if (FunctionsToSkip.match(TheFn.name())) in trySingleImplDevirt()
1164 for (auto &S : TheFn.getSummaryList()) in trySingleImplDevirt()
1170 DevirtTargets.insert(TheFn); in trySingleImplDevirt()
1172 auto &S = TheFn.getSummaryList()[0]; in trySingleImplDevirt()
1173 bool IsExported = AddCalls(SlotInfo, TheFn); in trySingleImplDevirt()
1175 ExportedGUIDs.insert(TheFn.getGUID()); in trySingleImplDevirt()
1186 TheFn.name(), ExportSummary.getModuleHash(S->modulePath())); in trySingleImplDevirt()
1188 LocalWPDTargetsMap[TheFn].push_back(SlotSummary); in trySingleImplDevirt()
1189 Res->SingleImplName = std::string(TheFn.name()); in trySingleImplDevirt()
1192 Res->SingleImplName = std::string(TheFn.name()); in trySingleImplDevirt()