LLVM: llvm::FunctionSummary::ParamAccess Struct Reference (original) (raw)

Describes the uses of a parameter by the function. More...

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

Classes
struct Call
Describes the use of a value in a call instruction, specifying the call's target, the value's parameter number, and the possible range of offsets from the beginning of the value that are passed. More...
Public Attributes
uint64_t ParamNo = 0
ConstantRange Use {RangeWidth, true}
The range contains byte offsets from the parameter pointer which accessed by the function.
std::vector< Call > Calls
In the per-module summary, it summarizes the byte offset applied to each pointer parameter before passing to each corresponding callee.
Static Public Attributes
static constexpr uint32_t RangeWidth = 64

Describes the uses of a parameter by the function.

Definition at line 877 of file ModuleSummaryIndex.h.

llvm::FunctionSummary::ParamAccess::ParamAccess ( ) default

ParamAccess() [2/2]

Calls

std::vector<Call> llvm::FunctionSummary::ParamAccess::Calls

In the per-module summary, it summarizes the byte offset applied to each pointer parameter before passing to each corresponding callee.

In the combined summary, it's empty and information is propagated by inter-procedural analysis and applied to the Use field.

Definition at line 903 of file ModuleSummaryIndex.h.

ParamNo

uint64_t llvm::FunctionSummary::ParamAccess::ParamNo = 0

RangeWidth

uint32_t llvm::FunctionSummary::ParamAccess::RangeWidth = 64 staticconstexpr

Use

The range contains byte offsets from the parameter pointer which accessed by the function.

In the per-module summary, it only includes accesses made by the function instructions. In the combined summary, it also includes accesses by nested function calls.

Definition at line 898 of file ModuleSummaryIndex.h.

Referenced by ParamAccess().


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