diff options
author | Alexey Samsonov <samsonov@google.com> | 2013-11-18 09:31:53 +0000 |
---|---|---|
committer | Alexey Samsonov <samsonov@google.com> | 2013-11-18 09:31:53 +0000 |
commit | 49109a279c6b7b3622fa0227f6c77a96d075f718 (patch) | |
tree | d3ee87a1f6131cd29380a4ce6dd84aa232b2fa4c /llvm/unittests/ExecutionEngine/MCJIT/MCJITCAPITest.cpp | |
parent | 6588c1a638032c8146be7f5d62a125f5d89dea76 (diff) | |
download | bcm5719-llvm-49109a279c6b7b3622fa0227f6c77a96d075f718.tar.gz bcm5719-llvm-49109a279c6b7b3622fa0227f6c77a96d075f718.zip |
Revert r194865 and r194874.
This change is incorrect. If you delete virtual destructor of both a base class
and a subclass, then the following code:
Base *foo = new Child();
delete foo;
will not cause the destructor for members of Child class. As a result, I observe
plently of memory leaks. Notable examples I investigated are:
ObjectBuffer and ObjectBufferStream, AttributeImpl and StringSAttributeImpl.
llvm-svn: 194997
Diffstat (limited to 'llvm/unittests/ExecutionEngine/MCJIT/MCJITCAPITest.cpp')
-rw-r--r-- | llvm/unittests/ExecutionEngine/MCJIT/MCJITCAPITest.cpp | 18 |
1 files changed, 8 insertions, 10 deletions
diff --git a/llvm/unittests/ExecutionEngine/MCJIT/MCJITCAPITest.cpp b/llvm/unittests/ExecutionEngine/MCJIT/MCJITCAPITest.cpp index e77fd3680bf..e4197ddced6 100644 --- a/llvm/unittests/ExecutionEngine/MCJIT/MCJITCAPITest.cpp +++ b/llvm/unittests/ExecutionEngine/MCJIT/MCJITCAPITest.cpp @@ -83,8 +83,14 @@ protected: UnsupportedOSs.push_back(Triple::Cygwin); } - virtual void SetUp(); - + virtual void SetUp() { + didCallAllocateCodeSection = false; + Module = 0; + Function = 0; + Engine = 0; + Error = 0; + } + virtual void TearDown() { if (Engine) LLVMDisposeExecutionEngine(Engine); @@ -151,14 +157,6 @@ protected: char *Error; }; -void MCJITCAPITest::SetUp() { - didCallAllocateCodeSection = false; - Module = 0; - Function = 0; - Engine = 0; - Error = 0; -} - TEST_F(MCJITCAPITest, simple_function) { SKIP_UNSUPPORTED_PLATFORM; |