LLVM 22.0.0git
PGOMemOPSizeOpt.cpp File Reference

Go to the source code of this file.

Namespaces

namespace  llvm
 This is an optimization pass for GlobalISel generic memory operations.

Macros

#define INSTR_PROF_VALUE_PROF_MEMOP_API
#define DEBUG_TYPE   "pgo-memop-opt"

Functions

 STATISTIC (NumOfPGOMemOPOpt, "Number of memop intrinsics optimized.")
 STATISTIC (NumOfPGOMemOPAnnotate, "Number of memop intrinsics annotated.")
static bool PGOMemOPSizeOptImpl (Function &F, BlockFrequencyInfo &BFI, OptimizationRemarkEmitter &ORE, DominatorTree *DT, TargetLibraryInfo &TLI)

Variables

static cl::opt< unsignedllvm::MemOPCountThreshold ("pgo-memop-count-threshold", cl::Hidden, cl::init(1000), cl::desc("The minimum count to optimize memory " "intrinsic calls"))
static cl::opt< boolllvm::DisableMemOPOPT ("disable-memop-opt", cl::init(false), cl::Hidden, cl::desc("Disable optimize"))
static cl::opt< unsignedllvm::MemOPPercentThreshold ("pgo-memop-percent-threshold", cl::init(40), cl::Hidden, cl::desc("The percentage threshold for the " "memory intrinsic calls optimization"))
static cl::opt< unsignedllvm::MemOPMaxVersion ("pgo-memop-max-version", cl::init(3), cl::Hidden, cl::desc("The max version for the optimized memory " " intrinsic calls"))
static cl::opt< boolllvm::MemOPScaleCount ("pgo-memop-scale-count", cl::init(true), cl::Hidden, cl::desc("Scale the memop size counts using the basic " " block count value"))
cl::opt< boolllvm::MemOPOptMemcmpBcmp ("pgo-memop-optimize-memcmp-bcmp", cl::init(true), cl::Hidden, cl::desc("Size-specialize memcmp and bcmp calls"))
static cl::opt< unsignedllvm::MemOpMaxOptSize ("memop-value-prof-max-opt-size", cl::Hidden, cl::init(128), cl::desc("Optimize the memop size <= this value"))

Macro Definition Documentation

◆ DEBUG_TYPE

#define DEBUG_TYPE   "pgo-memop-opt"

Definition at line 52 of file PGOMemOPSizeOpt.cpp.

◆ INSTR_PROF_VALUE_PROF_MEMOP_API

#define INSTR_PROF_VALUE_PROF_MEMOP_API

Definition at line 37 of file PGOMemOPSizeOpt.cpp.

Function Documentation

◆ PGOMemOPSizeOptImpl()

bool PGOMemOPSizeOptImpl ( Function & F,
BlockFrequencyInfo & BFI,
OptimizationRemarkEmitter & ORE,
DominatorTree * DT,
TargetLibraryInfo & TLI )
static

Definition at line 457 of file PGOMemOPSizeOpt.cpp.

References llvm::DisableMemOPOPT, and F.

Referenced by llvm::PGOMemOPSizeOpt::run().

◆ STATISTIC() [1/2]

STATISTIC ( NumOfPGOMemOPAnnotate ,
"Number of memop intrinsics annotated."  )

◆ STATISTIC() [2/2]

STATISTIC ( NumOfPGOMemOPOpt ,
"Number of memop intrinsics optimized."  )