LLVM  13.0.0git
Public Attributes | List of all members
llvm::InlineParams Struct Reference

Thresholds to tune inline cost analysis. More...

#include "llvm/Analysis/InlineCost.h"

Collaboration diagram for llvm::InlineParams:
Collaboration graph
[legend]

Public Attributes

int DefaultThreshold = -1
 The default threshold to start with for a callee. More...
 
Optional< intHintThreshold
 Threshold to use for callees with inline hint. More...
 
Optional< intColdThreshold
 Threshold to use for cold callees. More...
 
Optional< intOptSizeThreshold
 Threshold to use when the caller is optimized for size. More...
 
Optional< intOptMinSizeThreshold
 Threshold to use when the caller is optimized for minsize. More...
 
Optional< intHotCallSiteThreshold
 Threshold to use when the callsite is considered hot. More...
 
Optional< intLocallyHotCallSiteThreshold
 Threshold to use when the callsite is considered hot relative to function entry. More...
 
Optional< intColdCallSiteThreshold
 Threshold to use when the callsite is considered cold. More...
 
Optional< bool > ComputeFullInlineCost
 Compute inline cost even when the cost has exceeded the threshold. More...
 
Optional< bool > EnableDeferral = true
 Indicate whether we should allow inline deferral. More...
 

Detailed Description

Thresholds to tune inline cost analysis.

The inline cost analysis decides the condition to apply a threshold and applies it. Otherwise, DefaultThreshold is used. If a threshold is Optional, it is applied only when it has a valid value. Typically, users of inline cost analysis obtain an InlineParams object through one of the getInlineParams methods and pass it to getInlineCost. Some specialized versions of inliner (such as the pre-inliner) might have custom logic to compute InlineParams object.

Definition at line 160 of file InlineCost.h.

Member Data Documentation

◆ ColdCallSiteThreshold

Optional<int> llvm::InlineParams::ColdCallSiteThreshold

Threshold to use when the callsite is considered cold.

Definition at line 184 of file InlineCost.h.

Referenced by llvm::getInlineParams().

◆ ColdThreshold

Optional<int> llvm::InlineParams::ColdThreshold

Threshold to use for cold callees.

Definition at line 168 of file InlineCost.h.

Referenced by llvm::getInlineParams().

◆ ComputeFullInlineCost

Optional<bool> llvm::InlineParams::ComputeFullInlineCost

Compute inline cost even when the cost has exceeded the threshold.

Definition at line 187 of file InlineCost.h.

◆ DefaultThreshold

int llvm::InlineParams::DefaultThreshold = -1

The default threshold to start with for a callee.

Definition at line 162 of file InlineCost.h.

Referenced by llvm::getInlineParams().

◆ EnableDeferral

Optional<bool> llvm::InlineParams::EnableDeferral = true

Indicate whether we should allow inline deferral.

Definition at line 190 of file InlineCost.h.

Referenced by getDefaultInlineAdvice().

◆ HintThreshold

Optional<int> llvm::InlineParams::HintThreshold

Threshold to use for callees with inline hint.

Definition at line 165 of file InlineCost.h.

Referenced by llvm::getInlineParams().

◆ HotCallSiteThreshold

Optional<int> llvm::InlineParams::HotCallSiteThreshold

Threshold to use when the callsite is considered hot.

Definition at line 177 of file InlineCost.h.

Referenced by llvm::getInlineParams().

◆ LocallyHotCallSiteThreshold

Optional<int> llvm::InlineParams::LocallyHotCallSiteThreshold

Threshold to use when the callsite is considered hot relative to function entry.

Definition at line 181 of file InlineCost.h.

Referenced by llvm::getInlineParams().

◆ OptMinSizeThreshold

Optional<int> llvm::InlineParams::OptMinSizeThreshold

Threshold to use when the caller is optimized for minsize.

Definition at line 174 of file InlineCost.h.

Referenced by llvm::getInlineParams().

◆ OptSizeThreshold

Optional<int> llvm::InlineParams::OptSizeThreshold

Threshold to use when the caller is optimized for size.

Definition at line 171 of file InlineCost.h.

Referenced by llvm::getInlineParams().


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