llvm/unittests: Use OwningPtr to fix --vg-leak.
authorNAKAMURA Takumi <geek4civic@gmail.com>
Wed, 23 Jan 2013 08:33:13 +0000 (08:33 +0000)
committerNAKAMURA Takumi <geek4civic@gmail.com>
Wed, 23 Jan 2013 08:33:13 +0000 (08:33 +0000)
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@173240 91177308-0d34-0410-b5e6-96231b3b80d8

unittests/Bitcode/BitReaderTest.cpp
unittests/IR/ConstantsTest.cpp
unittests/IR/DominatorTreeTest.cpp
unittests/Option/OptionParsingTest.cpp

index 98cb8143e4caad9f3e1fdb89aec5a35d5bd08676..f33af2ff474f9bdf4fdf910bb17d3e03a14306bc 100644 (file)
@@ -45,9 +45,9 @@ static Module *makeLLVMModule() {
 }
 
 static void writeModuleToBuffer(SmallVectorImpl<char> &Buffer) {
-  Module *Mod = makeLLVMModule();
+  OwningPtr<Module> Mod(makeLLVMModule());
   raw_svector_ostream OS(Buffer);
-  WriteBitcodeToFile(Mod, OS);
+  WriteBitcodeToFile(Mod.get(), OS);
 }
 
 TEST(BitReaderTest, MaterializeFunctionsForBlockAddr) { // PR11677
@@ -55,7 +55,7 @@ TEST(BitReaderTest, MaterializeFunctionsForBlockAddr) { // PR11677
   writeModuleToBuffer(Mem);
   MemoryBuffer *Buffer = MemoryBuffer::getMemBuffer(Mem.str(), "test", false);
   std::string errMsg;
-  Module *m = getLazyBitcodeModule(Buffer, getGlobalContext(), &errMsg);
+  OwningPtr<Module> m(getLazyBitcodeModule(Buffer, getGlobalContext(), &errMsg));
   PassManager passes;
   passes.add(createVerifierPass());
   passes.run(*m);
index 5c739cd2177a06b4baf287289158e2657287d477..fee38b891de427b05d3327a635ff245ce6b36048 100644 (file)
@@ -162,7 +162,7 @@ TEST(ConstantsTest, PointerCast) {
   }
 
 TEST(ConstantsTest, AsInstructionsTest) {
-  Module *M = new Module("MyModule", getGlobalContext());
+  OwningPtr<Module> M(new Module("MyModule", getGlobalContext()));
 
   Type *Int64Ty = Type::getInt64Ty(getGlobalContext());
   Type *Int32Ty = Type::getInt32Ty(getGlobalContext());
index a378f2c461efd0ab336a65840887e0e4c4445e8e..4e5af9395cc8c5184f994548dac62f1719e16bd6 100644 (file)
@@ -191,7 +191,7 @@ namespace llvm {
 
     TEST(DominatorTree, Unreachable) {
       DPass *P = new DPass();
-      Module *M = makeLLVMModule(P);
+      OwningPtr<Module> M(makeLLVMModule(P));
       PassManager Passes;
       Passes.add(P);
       Passes.run(*M);
index c90691ad15368a5e7fccbaa83c4d1914707fce6b..30944d9be797657700208e623982666f6853fdda 100644 (file)
@@ -7,6 +7,7 @@
 //
 //===----------------------------------------------------------------------===//
 
+#include "llvm/ADT/OwningPtr.h"
 #include "llvm/Option/Arg.h"
 #include "llvm/Option/ArgList.h"
 #include "llvm/Option/Option.h"
@@ -60,7 +61,11 @@ const char *Args[] = {
 TEST(Support, OptionParsing) {
   TestOptTable T;
   unsigned MAI, MAC;
-  InputArgList *AL = T.ParseArgs(Args, Args + (sizeof(Args) / sizeof(Args[0])), MAI, MAC);
+  OwningPtr<InputArgList>
+    AL(T.ParseArgs(Args,
+                   Args + (sizeof(Args) / sizeof(Args[0])),
+                   MAI,
+                   MAC));
 
   // Check they all exist.
   EXPECT_TRUE(AL->hasArg(OPT_A));