Update virtual‐call visibility metadata on vtables in M.

Synopsis

Declared in <llvm/Transforms/IPO/WholeProgramDevirt.h>

void
updateVCallVisibilityInModule(
    Module& M,
    bool WholeProgramVisibilityEnabledInLTO,
    DenseSet<GlobalValue::GUID> const& DynamicExportSymbols,
    bool ValidateAllVtablesHaveTypeInfos,
    function_ref<bool(xref:llvm/StringRef.adoc[StringRef)>] IsVisibleToRegularObj);

Parameters

Name

Description

M

Module whose vtable visibility metadata is updated.

WholeProgramVisibilityEnabledInLTO

Whether LTO enabled whole‐program visibility.

DynamicExportSymbols

GUIDs of symbols that may be exported dynamically.

ValidateAllVtablesHaveTypeInfos

Whether to require type info on all vtables.

IsVisibleToRegularObj

Predicate that returns true if a symbol name is visible to regular object files.

Created with MrDocs