Index: include/llvm/Target/TargetMachine.h =================================================================== --- include/llvm/Target/TargetMachine.h +++ include/llvm/Target/TargetMachine.h @@ -278,12 +278,6 @@ void initAsmInfo(); public: - /// \brief Get a TargetIRAnalysis implementation for the target. - /// - /// This analysis will produce a TTI result which uses the common code - /// generator to answer queries about the IR. - TargetIRAnalysis getTargetIRAnalysis() override; - /// Create a pass configuration object to be used by addPassToEmitX methods /// for generating a pipeline of CodeGen passes. virtual TargetPassConfig *createPassConfig(PassManagerBase &PM); Index: lib/CodeGen/LLVMTargetMachine.cpp =================================================================== --- lib/CodeGen/LLVMTargetMachine.cpp +++ lib/CodeGen/LLVMTargetMachine.cpp @@ -86,12 +86,6 @@ CodeGenInfo = T.createMCCodeGenInfo(TT.str(), RM, CM, OL); } -TargetIRAnalysis LLVMTargetMachine::getTargetIRAnalysis() { - return TargetIRAnalysis([this](const Function &F) { - return TargetTransformInfo(BasicTTIImpl(this, F)); - }); -} - MachineModuleInfo & LLVMTargetMachine::addMachineModuleInfo(PassManagerBase &PM) const { MachineModuleInfo *MMI = new MachineModuleInfo(*getMCAsmInfo(), Index: lib/Target/TargetMachine.cpp =================================================================== --- lib/Target/TargetMachine.cpp +++ lib/Target/TargetMachine.cpp @@ -13,6 +13,7 @@ #include "llvm/Target/TargetMachine.h" #include "llvm/Analysis/TargetTransformInfo.h" +#include "llvm/CodeGen/BasicTTIImpl.h" #include "llvm/CodeGen/MachineFunction.h" #include "llvm/IR/Function.h" #include "llvm/IR/GlobalAlias.h" @@ -150,7 +151,7 @@ TargetIRAnalysis TargetMachine::getTargetIRAnalysis() { return TargetIRAnalysis([this](const Function &F) { - return TargetTransformInfo(F.getParent()->getDataLayout()); + return TargetTransformInfo(BasicTTIImpl(this, F)); }); }