diff options
author | Daniel Dunbar <daniel@zuster.org> | 2009-03-18 01:09:40 +0000 |
---|---|---|
committer | Daniel Dunbar <daniel@zuster.org> | 2009-03-18 01:09:40 +0000 |
commit | 7e4534d9c14febcdea30c057bb2a36e245776865 (patch) | |
tree | aa23a35f752dedb2544397a5b7f1a873eb1ec463 /lib/Driver/HostInfo.cpp | |
parent | 087edcfb1d6dcb500675cac1636dca2219cb2b75 (diff) |
Driver: Release Host, ToolChain, and Tool implementations.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@67146 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'lib/Driver/HostInfo.cpp')
-rw-r--r-- | lib/Driver/HostInfo.cpp | 16 |
1 files changed, 15 insertions, 1 deletions
diff --git a/lib/Driver/HostInfo.cpp b/lib/Driver/HostInfo.cpp index 5fb9f9929e..d43d234c2f 100644 --- a/lib/Driver/HostInfo.cpp +++ b/lib/Driver/HostInfo.cpp @@ -46,11 +46,12 @@ class DarwinHostInfo : public HostInfo { unsigned GCCVersion[3]; /// Cache of tool chains we have created. - mutable llvm::StringMap<ToolChain*> ToolChains; + mutable llvm::StringMap<ToolChain *> ToolChains; public: DarwinHostInfo(const Driver &D, const char *Arch, const char *Platform, const char *OS); + ~DarwinHostInfo(); virtual bool useDriverDriver() const; @@ -74,6 +75,12 @@ DarwinHostInfo::DarwinHostInfo(const Driver &D, const char *_Arch, GCCVersion[2] = 1; } +DarwinHostInfo::~DarwinHostInfo() { + for (llvm::StringMap<ToolChain*>::iterator + it = ToolChains.begin(), ie = ToolChains.end(); it != ie; ++it) + delete it->second; +} + bool DarwinHostInfo::useDriverDriver() const { return true; } @@ -122,6 +129,7 @@ class UnknownHostInfo : public HostInfo { public: UnknownHostInfo(const Driver &D, const char *Arch, const char *Platform, const char *OS); + ~UnknownHostInfo(); virtual bool useDriverDriver() const; @@ -134,6 +142,12 @@ UnknownHostInfo::UnknownHostInfo(const Driver &D, const char *Arch, : HostInfo(D, Arch, Platform, OS) { } +UnknownHostInfo::~UnknownHostInfo() { + for (llvm::StringMap<ToolChain*>::iterator + it = ToolChains.begin(), ie = ToolChains.end(); it != ie; ++it) + delete it->second; +} + bool UnknownHostInfo::useDriverDriver() const { return false; } |