class TargetIRAnalysis
Declaration
class TargetIRAnalysis : public AnalysisInfoMixin { /* full declaration omitted */ };
Description
Analysis pass providing the \c TargetTransformInfo. The core idea of the TargetIRAnalysis is to expose an interface through which LLVM targets can analyze and provide information about the middle end's target-independent IR. This supports use cases such as target-aware cost modeling of IR constructs. This is a function analysis because much of the cost modeling for targets is done in a subtarget specific way and LLVM supports compiling different functions targeting different subtargets in order to support runtime dispatch according to the observed subtarget.
Declared at: llvm/include/llvm/Analysis/TargetTransformInfo.h:1901
Inherits from: AnalysisInfoMixin
Method Overview
- public TargetIRAnalysis()
- public TargetIRAnalysis(std::function<Result (const Function &)> TTICallback)
- public TargetIRAnalysis(const llvm::TargetIRAnalysis & Arg)
- public TargetIRAnalysis(llvm::TargetIRAnalysis && Arg)
- public llvm::TargetIRAnalysis::Result run(const llvm::Function & F, llvm::FunctionAnalysisManager &)
Methods
¶TargetIRAnalysis()
TargetIRAnalysis()
Description
Default construct a target IR analysis. This will use the module's datalayout to construct a baseline conservative TTI result.
Declared at: llvm/include/llvm/Analysis/TargetTransformInfo.h:1909
¶TargetIRAnalysis(
std::function<Result(const Function&)>
TTICallback)
TargetIRAnalysis(
std::function<Result(const Function&)>
TTICallback)
Description
Construct an IR analysis pass around a target-provide callback. The callback will be called with a particular function for which the TTI is needed and must return a TTI object for that function.
Declared at: llvm/include/llvm/Analysis/TargetTransformInfo.h:1915
Parameters
- std::function<Result(const Function&)> TTICallback
¶TargetIRAnalysis(
const llvm::TargetIRAnalysis& Arg)
TargetIRAnalysis(
const llvm::TargetIRAnalysis& Arg)
Declared at: llvm/include/llvm/Analysis/TargetTransformInfo.h:1918
Parameters
- const llvm::TargetIRAnalysis& Arg
¶TargetIRAnalysis(llvm::TargetIRAnalysis&& Arg)
TargetIRAnalysis(llvm::TargetIRAnalysis&& Arg)
Declared at: llvm/include/llvm/Analysis/TargetTransformInfo.h:1920
Parameters
- llvm::TargetIRAnalysis&& Arg
¶llvm::TargetIRAnalysis::Result run(
const llvm::Function& F,
llvm::FunctionAnalysisManager&)
llvm::TargetIRAnalysis::Result run(
const llvm::Function& F,
llvm::FunctionAnalysisManager&)
Declared at: llvm/include/llvm/Analysis/TargetTransformInfo.h:1931