diff --git a/llvm/lib/Target/CSKY/CSKYTargetMachine.cpp b/llvm/lib/Target/CSKY/CSKYTargetMachine.cpp index 966e3010d6c9cb..c5a57f32e29a03 100644 --- a/llvm/lib/Target/CSKY/CSKYTargetMachine.cpp +++ b/llvm/lib/Target/CSKY/CSKYTargetMachine.cpp @@ -12,6 +12,7 @@ #include "CSKYTargetMachine.h" #include "CSKY.h" +#include "CSKYMachineFunctionInfo.h" #include "CSKYSubtarget.h" #include "CSKYTargetObjectFile.h" #include "TargetInfo/CSKYTargetInfo.h" @@ -88,6 +89,13 @@ CSKYTargetMachine::getSubtargetImpl(const Function &F) const { return I.get(); } +MachineFunctionInfo *CSKYTargetMachine::createMachineFunctionInfo( + BumpPtrAllocator &Allocator, const Function &F, + const TargetSubtargetInfo *STI) const { + return CSKYMachineFunctionInfo::create(Allocator, F, + STI); +} + namespace { class CSKYPassConfig : public TargetPassConfig { public: diff --git a/llvm/lib/Target/CSKY/CSKYTargetMachine.h b/llvm/lib/Target/CSKY/CSKYTargetMachine.h index 3896003e7e7c0d..13d4212c79aa6a 100644 --- a/llvm/lib/Target/CSKY/CSKYTargetMachine.h +++ b/llvm/lib/Target/CSKY/CSKYTargetMachine.h @@ -42,6 +42,10 @@ class CSKYTargetMachine : public LLVMTargetMachine { TargetLoweringObjectFile *getObjFileLowering() const override { return TLOF.get(); } + + MachineFunctionInfo * + createMachineFunctionInfo(BumpPtrAllocator &Allocator, const Function &F, + const TargetSubtargetInfo *STI) const override; }; } // namespace llvm