Update recorded single‐impl WPD target names after cross‐module importing.
Synopsis
Declared in <llvm/Transforms/IPO/WholeProgramDevirt.h>
void
updateIndexWPDForExports(
ModuleSummaryIndex& Summary,
function_ref<bool(xref:llvm/StringRef.adoc[StringRef, ValueInfo)>] isExported,
std::map<ValueInfo, std::vector<VTableSlotSummary>>& LocalWPDTargetsMap,
DenseSet<StringRef>* ExternallyVisibleSymbolNamesPtr = nullptr);
Description
Call after cross‐module importing to update the recorded single‐impl devirtualization target names for any locals that were exported.
Parameters
Name |
Description |
Summary |
Combined module summary index whose WPD resolutions are updated. |
isExported |
Predicate that returns true if a symbol with the given name and ValueInfo was exported. |
LocalWPDTargetsMap |
Map from local ValueInfo entries to the vtable slots whose recorded target names may need updating. |
ExternallyVisibleSymbolNamesPtr |
Optional set of symbol names that remain externally visible; may be null. |
Created with MrDocs