From 360fcbd468175f267e5c5d24f26fedacef025170 Mon Sep 17 00:00:00 2001 From: Craig Topper Date: Fri, 28 Nov 2014 20:30:39 +0000 Subject: [PATCH] Fix a few memory leaks in CodeGenRegBank. llvm-svn: 222930 --- llvm/utils/TableGen/CodeGenRegisters.cpp | 6 ++++++ llvm/utils/TableGen/CodeGenRegisters.h | 1 + 2 files changed, 7 insertions(+) diff --git a/llvm/utils/TableGen/CodeGenRegisters.cpp b/llvm/utils/TableGen/CodeGenRegisters.cpp index 678222f3..e839423 100644 --- a/llvm/utils/TableGen/CodeGenRegisters.cpp +++ b/llvm/utils/TableGen/CodeGenRegisters.cpp @@ -1012,6 +1012,12 @@ CodeGenRegBank::CodeGenRegBank(RecordKeeper &Records) { CodeGenRegisterClass::computeSubClasses(*this); } +CodeGenRegBank::~CodeGenRegBank() { + DeleteContainerPointers(SubRegIndices); + DeleteContainerPointers(Registers); + DeleteContainerPointers(RegClasses); +} + // Create a synthetic CodeGenSubRegIndex without a corresponding Record. CodeGenSubRegIndex* CodeGenRegBank::createSubRegIndex(StringRef Name, StringRef Namespace) { diff --git a/llvm/utils/TableGen/CodeGenRegisters.h b/llvm/utils/TableGen/CodeGenRegisters.h index c1e37fa..53568c1 100644 --- a/llvm/utils/TableGen/CodeGenRegisters.h +++ b/llvm/utils/TableGen/CodeGenRegisters.h @@ -521,6 +521,7 @@ namespace llvm { public: CodeGenRegBank(RecordKeeper&); + ~CodeGenRegBank(); SetTheory &getSets() { return Sets; } -- 2.7.4