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:
- include/llvm/IR/ModuleSummaryIndex.h