[llvm] 28d418b - [unittest][codegen] Avoid memory leak in recently added FindDebugLocTest unittest

Bjorn Pettersson via llvm-commits llvm-commits at lists.llvm.org
Thu May 25 09:31:49 PDT 2023


Author: Bjorn Pettersson
Date: 2023-05-25T18:31:36+02:00
New Revision: 28d418b16c6cd4836ad9d8bc8006d3dabe3c5559

URL: https://github.com/llvm/llvm-project/commit/28d418b16c6cd4836ad9d8bc8006d3dabe3c5559
DIFF: https://github.com/llvm/llvm-project/commit/28d418b16c6cd4836ad9d8bc8006d3dabe3c5559.diff

LOG: [unittest][codegen] Avoid memory leak in recently added FindDebugLocTest unittest

Need to finalize the DIBuilder to avoid leak sanitizer errors
like this:

Direct leak of 48 byte(s) in 1 object(s) allocated from:
    #0 0x55c99ea1761d in operator new(unsigned long)
    #1 0x55c9a518ae49 in operator new
    #2 0x55c9a518ae49 in llvm::MDTuple::getImpl(...)
    #3 0x55c9a4f1b1ec in getTemporary
    #4 0x55c9a4f1b1ec in llvm::DIBuilder::createFunction(...)

Added: 
    

Modified: 
    llvm/unittests/CodeGen/MachineBasicBlockTest.cpp

Removed: 
    


################################################################################
diff  --git a/llvm/unittests/CodeGen/MachineBasicBlockTest.cpp b/llvm/unittests/CodeGen/MachineBasicBlockTest.cpp
index 3dd22353100c..8c9d05d2578d 100644
--- a/llvm/unittests/CodeGen/MachineBasicBlockTest.cpp
+++ b/llvm/unittests/CodeGen/MachineBasicBlockTest.cpp
@@ -100,6 +100,9 @@ TEST(FindDebugLocTest, DifferentIterators) {
   EXPECT_EQ(DL1, MBB.rfindPrevDebugLoc(MI2));
   EXPECT_EQ(DL1, MBB.rfindPrevDebugLoc(MI3));
   EXPECT_EQ(DL1, MBB.rfindPrevDebugLoc(MBB.instr_rbegin()));
+
+  // Finalize DIBuilder to avoid memory leaks.
+  DIB.finalize();
 }
 
 } // end namespace


        


More information about the llvm-commits mailing list