LLVM  11.0.0git
Macros | Variables
CostModel.cpp File Reference
#include "llvm/ADT/STLExtras.h"
#include "llvm/Analysis/Passes.h"
#include "llvm/Analysis/TargetTransformInfo.h"
#include "llvm/IR/Function.h"
#include "llvm/InitializePasses.h"
#include "llvm/Pass.h"
#include "llvm/Support/CommandLine.h"
#include "llvm/Support/Debug.h"
#include "llvm/Support/raw_ostream.h"
Include dependency graph for CostModel.cpp:

Go to the source code of this file.

Macros

#define CM_NAME   "cost-model"
 
#define DEBUG_TYPE   CM_NAME
 

Variables

static cl::opt< TargetTransformInfo::TargetCostKindCostKind ("cost-kind", cl::desc("Target cost kind"), cl::init(TargetTransformInfo::TCK_RecipThroughput), cl::values(clEnumValN(TargetTransformInfo::TCK_RecipThroughput, "throughput", "Reciprocal throughput"), clEnumValN(TargetTransformInfo::TCK_Latency, "latency", "Instruction latency"), clEnumValN(TargetTransformInfo::TCK_CodeSize, "code-size", "Code size")))
 
static const char cm_name [] = "Cost Model Analysis"
 

Macro Definition Documentation

◆ CM_NAME

#define CM_NAME   "cost-model"

Definition at line 40 of file CostModel.cpp.

◆ DEBUG_TYPE

#define DEBUG_TYPE   CM_NAME

Definition at line 41 of file CostModel.cpp.

Variable Documentation

◆ cm_name

const char cm_name[] = "Cost Model Analysis"
static

Definition at line 75 of file CostModel.cpp.

◆ CostKind

cl::opt<TargetTransformInfo::TargetCostKind> CostKind("cost-kind", cl::desc("Target cost kind"), cl::init(TargetTransformInfo::TCK_RecipThroughput), cl::values(clEnumValN(TargetTransformInfo::TCK_RecipThroughput, "throughput", "Reciprocal throughput"), clEnumValN(TargetTransformInfo::TCK_Latency, "latency", "Instruction latency"), clEnumValN(TargetTransformInfo::TCK_CodeSize, "code-size", "Code size")))
static

Referenced by llvm::AArch64TTIImpl::AArch64TTIImpl(), llvm::createCostModelAnalysisPass(), llvm::HexagonTTIImpl::enableInterleavedAccessVectorization(), llvm::WebAssemblyTTIImpl::getArithmeticInstrCost(), llvm::LanaiTTIImpl::getArithmeticInstrCost(), llvm::SystemZTTIImpl::getArithmeticInstrCost(), llvm::BasicTTIImplBase< AMDGPUTTIImpl >::getArithmeticInstrCost(), llvm::SystemZTTIImpl::getCastInstrCost(), llvm::AArch64TTIImpl::getCastInstrCost(), llvm::X86TTIImpl::getCastInstrCost(), llvm::ARMTTIImpl::getCastInstrCost(), llvm::BasicTTIImplBase< AMDGPUTTIImpl >::getCastInstrCost(), llvm::X86TTIImpl::getCFInstrCost(), llvm::BasicTTIImplBase< AMDGPUTTIImpl >::getCmpSelInstrCost(), llvm::AArch64TTIImpl::getCostOfKeepingLiveOverCall(), llvm::AArch64TTIImpl::getExtractWithExtendCost(), llvm::SystemZTTIImpl::getInliningThresholdMultiplier(), llvm::NVPTXTTIImpl::getInliningThresholdMultiplier(), llvm::X86TTIImpl::getInterleavedMemoryOpCost(), llvm::X86TTIImpl::getMaskedMemoryOpCost(), llvm::X86TTIImpl::getMemoryOpCost(), llvm::GCNTTIImpl::getPopcntSupport(), llvm::SCEVExpander::getRelatedExistingExpansion(), llvm::R600TTIImpl::getTLI(), getTrueOrFalseValue(), llvm::TargetTransformInfoImplCRTPBase< AMDGPUTTIImpl >::getUserCost(), getVectorCallCosts(), llvm::ARMTTIImpl::isFPVectorizationPotentiallyUnsafe(), isStrideMul(), llvm::TargetTransformInfo::matchVectorSplittingReduction(), llvm::PPCTTIImpl::PPCTTIImpl(), llvm::RISCVTTIImpl::RISCVTTIImpl(), llvm::LoopVectorizationCostModel::setCostBasedWideningDecision(), llvm::WebAssemblyTTIImpl::WebAssemblyTTIImpl(), and llvm::X86TTIImpl::X86TTIImpl().