summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorCraig Topper <craig.topper@gmail.com>2014-11-28 20:30:39 +0000
committerCraig Topper <craig.topper@gmail.com>2014-11-28 20:30:39 +0000
commit360fcbd468175f267e5c5d24f26fedacef025170 (patch)
tree2f70192dc1fdfc70d4585a1110188e41bf6475ea
parent313a96fc7391e1d47061870ec72566cb3cffea85 (diff)
downloadbcm5719-llvm-360fcbd468175f267e5c5d24f26fedacef025170.tar.gz
bcm5719-llvm-360fcbd468175f267e5c5d24f26fedacef025170.zip
Fix a few memory leaks in CodeGenRegBank.
llvm-svn: 222930
-rw-r--r--llvm/utils/TableGen/CodeGenRegisters.cpp6
-rw-r--r--llvm/utils/TableGen/CodeGenRegisters.h1
2 files changed, 7 insertions, 0 deletions
diff --git a/llvm/utils/TableGen/CodeGenRegisters.cpp b/llvm/utils/TableGen/CodeGenRegisters.cpp
index 678222f315e..e839423f604 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 c1e37fae076..53568c17ca8 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; }
OpenPOWER on IntegriCloud