From 061da546b983eb767bad15e67af1174fb0bcf31c Mon Sep 17 00:00:00 2001 From: patrick Date: Mon, 3 Aug 2020 14:33:06 +0000 Subject: Import LLVM 10.0.0 release including clang, lld and lldb. ok hackroom tested by plenty --- .../lldbsuite/test/api/multiple-targets/main.cpp | 31 ++++++++++++++++++++++ 1 file changed, 31 insertions(+) create mode 100644 gnu/llvm/lldb/packages/Python/lldbsuite/test/api/multiple-targets/main.cpp (limited to 'gnu/llvm/lldb/packages/Python/lldbsuite/test/api/multiple-targets/main.cpp') diff --git a/gnu/llvm/lldb/packages/Python/lldbsuite/test/api/multiple-targets/main.cpp b/gnu/llvm/lldb/packages/Python/lldbsuite/test/api/multiple-targets/main.cpp new file mode 100644 index 00000000000..35fb4e0d613 --- /dev/null +++ b/gnu/llvm/lldb/packages/Python/lldbsuite/test/api/multiple-targets/main.cpp @@ -0,0 +1,31 @@ +#include + +#include "lldb/API/LLDB.h" +#include "lldb/API/SBDebugger.h" +#include "lldb/API/SBTarget.h" + +using namespace lldb; +int main (int argc, char **argv) +{ + // We are expecting the program path and a path to an executable to load + if (argc != 2) + return 1; + const char *program_file = argv[1]; + SBDebugger::Initialize(); + SBDebugger debugger = SBDebugger::Create(false); + auto lambda = [&](){ + SBError error; + SBTarget target = debugger.CreateTarget(program_file, nullptr, nullptr, + false, error); + }; + + // Create 3 targets at the same time and make sure we don't crash. + std::thread thread1(lambda); + std::thread thread2(lambda); + std::thread thread3(lambda); + thread1.join(); + thread2.join(); + thread3.join(); + SBDebugger::Terminate(); + return 0; +} -- cgit v1.2.3-59-g8ed1b