From: Akira Hatanaka Date: Wed, 12 Dec 2012 20:09:58 +0000 (+0000) Subject: [mips] Fix a memory leak bug report by NAKAMURA Takumi. X-Git-Url: http://demsky.eecs.uci.edu/git/?a=commitdiff_plain;h=de99993a301e895273084d3df45cdf54d2f2ef91;p=oota-llvm.git [mips] Fix a memory leak bug report by NAKAMURA Takumi. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@170012 91177308-0d34-0410-b5e6-96231b3b80d8 --- diff --git a/lib/Target/Mips/MipsTargetMachine.h b/lib/Target/Mips/MipsTargetMachine.h index 8b1a06f3200..ddf15010dc4 100644 --- a/lib/Target/Mips/MipsTargetMachine.h +++ b/lib/Target/Mips/MipsTargetMachine.h @@ -20,6 +20,7 @@ #include "MipsJITInfo.h" #include "MipsSelectionDAGInfo.h" #include "MipsSubtarget.h" +#include "llvm/ADT/OwningPtr.h" #include "llvm/DataLayout.h" #include "llvm/Target/TargetFrameLowering.h" #include "llvm/Target/TargetMachine.h" @@ -32,8 +33,8 @@ class MipsRegisterInfo; class MipsTargetMachine : public LLVMTargetMachine { MipsSubtarget Subtarget; const DataLayout DL; // Calculates type size & alignment - const MipsInstrInfo *InstrInfo; - const MipsFrameLowering *FrameLowering; + OwningPtr InstrInfo; + OwningPtr FrameLowering; MipsTargetLowering TLInfo; MipsSelectionDAGInfo TSInfo; MipsJITInfo JITInfo; @@ -47,12 +48,12 @@ public: CodeGenOpt::Level OL, bool isLittle); - virtual ~MipsTargetMachine() { delete InstrInfo; } + virtual ~MipsTargetMachine() {} virtual const MipsInstrInfo *getInstrInfo() const - { return InstrInfo; } + { return InstrInfo.get(); } virtual const TargetFrameLowering *getFrameLowering() const - { return FrameLowering; } + { return FrameLowering.get(); } virtual const MipsSubtarget *getSubtargetImpl() const { return &Subtarget; } virtual const DataLayout *getDataLayout() const