summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorPavel Labath <labath@google.com>2016-11-09 10:16:11 +0000
committerPavel Labath <labath@google.com>2016-11-09 10:16:11 +0000
commit222fd13e3f53881026111935f655f806a79153c7 (patch)
treed5168d218061ac0086c5134a2a678a770808012f
parent96b4b713fc9d501eaadee03ca13ed4dc11c15d0a (diff)
downloadbcm5719-llvm-222fd13e3f53881026111935f655f806a79153c7.tar.gz
bcm5719-llvm-222fd13e3f53881026111935f655f806a79153c7.zip
Disable windows-only minidump plugin
Summary: This commit disables the windows-only minidump plugin and enables the new cross-platform plugin for windows minidump files. Test decorators are adjusted to reflect that: windows minidump tests can now run on all platforms. The exception is the tests that create minidump files, as that functionality is not available yet. I've checked that this works on windows and linux. Reviewers: amccarth, zturner Subscribers: dvlahovski, lldb-commits Differential Revision: https://reviews.llvm.org/D26393 llvm-svn: 286352
-rw-r--r--lldb/packages/Python/lldbsuite/test/functionalities/postmortem/minidump/TestMiniDump.py13
-rw-r--r--lldb/packages/Python/lldbsuite/test/functionalities/postmortem/wow64_minidump/TestWow64MiniDump.py7
-rw-r--r--lldb/source/API/SystemInitializerFull.cpp7
-rw-r--r--lldb/source/Plugins/Process/minidump/ProcessMinidump.cpp6
4 files changed, 5 insertions, 28 deletions
diff --git a/lldb/packages/Python/lldbsuite/test/functionalities/postmortem/minidump/TestMiniDump.py b/lldb/packages/Python/lldbsuite/test/functionalities/postmortem/minidump/TestMiniDump.py
index 8c375f7d862..b89a305d0e8 100644
--- a/lldb/packages/Python/lldbsuite/test/functionalities/postmortem/minidump/TestMiniDump.py
+++ b/lldb/packages/Python/lldbsuite/test/functionalities/postmortem/minidump/TestMiniDump.py
@@ -15,9 +15,8 @@ from lldbsuite.test import lldbutil
class MiniDumpTestCase(TestBase):
mydir = TestBase.compute_mydir(__file__)
+ NO_DEBUG_INFO_TESTCASE = True
- @skipUnlessWindows # for now mini-dump debugging is limited to Windows hosts
- @no_debug_info_test
def test_process_info_in_mini_dump(self):
"""Test that lldb can read the process information from the minidump."""
# target create -c fizzbuzz_no_heap.dmp
@@ -28,8 +27,6 @@ class MiniDumpTestCase(TestBase):
self.assertEqual(self.process.GetNumThreads(), 1)
self.assertEqual(self.process.GetProcessID(), 4440)
- @skipUnlessWindows # for now mini-dump debugging is limited to Windows hosts
- @no_debug_info_test
def test_thread_info_in_mini_dump(self):
"""Test that lldb can read the thread information from the minidump."""
# target create -c fizzbuzz_no_heap.dmp
@@ -44,8 +41,6 @@ class MiniDumpTestCase(TestBase):
stop_description = thread.GetStopDescription(256)
self.assertTrue("0xc0000005" in stop_description)
- @skipUnlessWindows # for now mini-dump debugging is limited to Windows hosts
- @no_debug_info_test
def test_stack_info_in_mini_dump(self):
"""Test that we can see a trivial stack in a VS-generate mini dump."""
# target create -c fizzbuzz_no_heap.dmp
@@ -63,8 +58,7 @@ class MiniDumpTestCase(TestBase):
self.assertTrue(eip.IsValid())
self.assertEqual(pc, eip.GetValueAsUnsigned())
- @skipUnlessWindows
- @not_remote_testsuite_ready
+ @skipUnlessWindows # Minidump saving works only on windows
def test_deeper_stack_in_mini_dump(self):
"""Test that we can examine a more interesting stack in a mini dump."""
self.build()
@@ -100,8 +94,7 @@ class MiniDumpTestCase(TestBase):
if (os.path.isfile(core)):
os.unlink(core)
- @skipUnlessWindows
- @not_remote_testsuite_ready
+ @skipUnlessWindows # Minidump saving works only on windows
def test_local_variables_in_mini_dump(self):
"""Test that we can examine local variables in a mini dump."""
self.build()
diff --git a/lldb/packages/Python/lldbsuite/test/functionalities/postmortem/wow64_minidump/TestWow64MiniDump.py b/lldb/packages/Python/lldbsuite/test/functionalities/postmortem/wow64_minidump/TestWow64MiniDump.py
index d68871a34fb..73ad3940aca 100644
--- a/lldb/packages/Python/lldbsuite/test/functionalities/postmortem/wow64_minidump/TestWow64MiniDump.py
+++ b/lldb/packages/Python/lldbsuite/test/functionalities/postmortem/wow64_minidump/TestWow64MiniDump.py
@@ -20,9 +20,8 @@ from lldbsuite.test import lldbutil
class Wow64MiniDumpTestCase(TestBase):
mydir = TestBase.compute_mydir(__file__)
+ NO_DEBUG_INFO_TESTCASE = True
- @skipUnlessWindows # for now mini-dump debugging is limited to Windows hosts
- @no_debug_info_test
def test_wow64_mini_dump(self):
"""Test that lldb can read the process information from the minidump."""
# target create -c fizzbuzz_wow64.dmp
@@ -32,8 +31,6 @@ class Wow64MiniDumpTestCase(TestBase):
self.assertEqual(process.GetNumThreads(), 1)
self.assertEqual(process.GetProcessID(), 0x1E9C)
- @skipUnlessWindows # for now mini-dump debugging is limited to Windows hosts
- @no_debug_info_test
def test_thread_info_in_wow64_mini_dump(self):
"""Test that lldb can read the thread information from the minidump."""
# target create -c fizzbuzz_wow64.dmp
@@ -50,8 +47,6 @@ class Wow64MiniDumpTestCase(TestBase):
thread = process.GetThreadAtIndex(0)
self.assertEqual(thread.GetStopReason(), lldb.eStopReasonNone)
- @skipUnlessWindows # for now mini-dump debugging is limited to Windows hosts
- @no_debug_info_test
def test_stack_info_in_wow64_mini_dump(self):
"""Test that we can see a trivial stack in a VS-generate mini dump."""
# target create -c fizzbuzz_no_heap.dmp
diff --git a/lldb/source/API/SystemInitializerFull.cpp b/lldb/source/API/SystemInitializerFull.cpp
index c0185bc3814..3a57daf6919 100644
--- a/lldb/source/API/SystemInitializerFull.cpp
+++ b/lldb/source/API/SystemInitializerFull.cpp
@@ -109,7 +109,6 @@
#if defined(_MSC_VER)
#include "Plugins/Process/Windows/Live/ProcessWindowsLive.h"
-#include "Plugins/Process/Windows/MiniDump/ProcessWinMiniDump.h"
#include "lldb/Host/windows/windows.h"
#endif
@@ -306,9 +305,6 @@ void SystemInitializerFull::Initialize() {
JITLoaderGDB::Initialize();
ProcessElfCore::Initialize();
minidump::ProcessMinidump::Initialize();
-#if defined(_MSC_VER)
- ProcessWinMiniDump::Initialize();
-#endif
MemoryHistoryASan::Initialize();
AddressSanitizerRuntime::Initialize();
ThreadSanitizerRuntime::Initialize();
@@ -432,9 +428,6 @@ void SystemInitializerFull::Terminate() {
JITLoaderGDB::Terminate();
ProcessElfCore::Terminate();
minidump::ProcessMinidump::Terminate();
-#if defined(_MSC_VER)
- ProcessWinMiniDump::Terminate();
-#endif
MemoryHistoryASan::Terminate();
AddressSanitizerRuntime::Terminate();
ThreadSanitizerRuntime::Terminate();
diff --git a/lldb/source/Plugins/Process/minidump/ProcessMinidump.cpp b/lldb/source/Plugins/Process/minidump/ProcessMinidump.cpp
index b155e9497bf..46d8df8b16f 100644
--- a/lldb/source/Plugins/Process/minidump/ProcessMinidump.cpp
+++ b/lldb/source/Plugins/Process/minidump/ProcessMinidump.cpp
@@ -63,11 +63,7 @@ lldb::ProcessSP ProcessMinidump::CreateInstance(lldb::TargetSP target_sp,
lldb::DataBufferSP all_data_sp(crash_file->MemoryMapFileContents());
auto minidump_parser = MinidumpParser::Create(all_data_sp);
// check if the parser object is valid
- // skip if the Minidump file is Windows generated, because we are still
- // work-in-progress
- if (!minidump_parser ||
- minidump_parser->GetArchitecture().GetTriple().getOS() ==
- llvm::Triple::OSType::Win32)
+ if (!minidump_parser)
return nullptr;
return std::make_shared<ProcessMinidump>(target_sp, listener_sp, *crash_file,
OpenPOWER on IntegriCloud