LLVM: llvm::WholeProgramDevirtResolution Struct Reference (original) (raw)

#include "[llvm/IR/ModuleSummaryIndex.h](ModuleSummaryIndex%5F8h%5Fsource.html)"

Public Types
enum Kind { Indir, SingleImpl, BranchFunnel }
Public Attributes
enum llvm::WholeProgramDevirtResolution::Kind TheKind = Indir
std::string SingleImplName
std::map< std::vector< uint64_t >, ByArg > ResByArg
Resolutions for calls with all constant integer arguments (excluding the first argument, "this"), where the key is the argument vector.

Definition at line 1285 of file ModuleSummaryIndex.h.

Kind

Enumerator
Indir Just do a regular virtual call.
SingleImpl Single implementation devirtualization.
BranchFunnel When retpoline mitigation is enabled, use a branch funnel that is defined in the merged module. Otherwise same as Indir.

Definition at line 1286 of file ModuleSummaryIndex.h.

ResByArg

std::map<std::vector<uint64_t>, ByArg> llvm::WholeProgramDevirtResolution::ResByArg

SingleImplName

std::string llvm::WholeProgramDevirtResolution::SingleImplName

TheKind

enum llvm::WholeProgramDevirtResolution::Kind llvm::WholeProgramDevirtResolution::TheKind = Indir


The documentation for this struct was generated from the following file: