diff options
author | Eric Christopher <echristo@apple.com> | 2012-01-06 19:35:04 +0000 |
---|---|---|
committer | Eric Christopher <echristo@apple.com> | 2012-01-06 19:35:04 +0000 |
commit | 7eabae3f50d43af1b76f2bcc5ac6c47700d12b8b (patch) | |
tree | 9fb9d56c9b494f2f00e3abc6ca8bb117e28eb06c /lib/CodeGen/AsmPrinter/DwarfAccelTable.cpp | |
parent | 3c7faae346f548c55cad86d82a2e242443001f23 (diff) |
Fix a leak I noticed while reviewing the accelerator table changes. Passes
lldb testsuite.
rdar://10652330
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@147673 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'lib/CodeGen/AsmPrinter/DwarfAccelTable.cpp')
-rw-r--r-- | lib/CodeGen/AsmPrinter/DwarfAccelTable.cpp | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/lib/CodeGen/AsmPrinter/DwarfAccelTable.cpp b/lib/CodeGen/AsmPrinter/DwarfAccelTable.cpp index 940592ed26..370d42ab68 100644 --- a/lib/CodeGen/AsmPrinter/DwarfAccelTable.cpp +++ b/lib/CodeGen/AsmPrinter/DwarfAccelTable.cpp @@ -51,6 +51,11 @@ DwarfAccelTable::DwarfAccelTable(std::vector<DwarfAccelTable::Atom> &atomList) : DwarfAccelTable::~DwarfAccelTable() { for (size_t i = 0, e = Data.size(); i < e; ++i) delete Data[i]; + for (StringMap<DataArray>::iterator + EI = Entries.begin(), EE = Entries.end(); EI != EE; ++EI) + for (DataArray::iterator DI = (*EI).second.begin(), + DE = (*EI).second.end(); DI != DE; ++DI) + delete (*DI); } void DwarfAccelTable::AddName(StringRef Name, DIE* die, char Flags) { |