2013-11-05 11:57:19 +08:00
|
|
|
//===-- SystemRuntime.cpp ---------------------------------------*- C++ -*-===//
|
|
|
|
//
|
2019-01-19 16:50:56 +08:00
|
|
|
// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
|
|
|
|
// See https://llvm.org/LICENSE.txt for license information.
|
|
|
|
// SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
|
2013-11-05 11:57:19 +08:00
|
|
|
//
|
|
|
|
//===----------------------------------------------------------------------===//
|
|
|
|
|
|
|
|
#include "lldb/Target/SystemRuntime.h"
|
|
|
|
#include "lldb/Core/PluginManager.h"
|
|
|
|
#include "lldb/Target/Process.h"
|
|
|
|
#include "lldb/lldb-private.h"
|
|
|
|
|
|
|
|
using namespace lldb;
|
|
|
|
using namespace lldb_private;
|
|
|
|
|
|
|
|
SystemRuntime *SystemRuntime::FindPlugin(Process *process) {
|
2016-02-19 02:52:47 +08:00
|
|
|
SystemRuntimeCreateInstance create_callback = nullptr;
|
|
|
|
for (uint32_t idx = 0;
|
|
|
|
(create_callback = PluginManager::GetSystemRuntimeCreateCallbackAtIndex(
|
|
|
|
idx)) != nullptr;
|
|
|
|
++idx) {
|
2019-02-13 14:25:41 +08:00
|
|
|
std::unique_ptr<SystemRuntime> instance_up(create_callback(process));
|
|
|
|
if (instance_up)
|
|
|
|
return instance_up.release();
|
2013-11-05 11:57:19 +08:00
|
|
|
}
|
2016-02-19 02:52:47 +08:00
|
|
|
return nullptr;
|
2013-11-05 11:57:19 +08:00
|
|
|
}
|
|
|
|
|
|
|
|
// SystemRuntime constructor
|
|
|
|
SystemRuntime::SystemRuntime(Process *process)
|
2013-11-12 15:02:07 +08:00
|
|
|
: m_process(process), m_types() {}
|
2013-11-05 11:57:19 +08:00
|
|
|
|
2016-02-19 02:52:47 +08:00
|
|
|
SystemRuntime::~SystemRuntime() = default;
|
2013-11-05 11:57:19 +08:00
|
|
|
|
|
|
|
void SystemRuntime::DidAttach() {}
|
|
|
|
|
|
|
|
void SystemRuntime::DidLaunch() {}
|
|
|
|
|
2014-02-05 13:44:54 +08:00
|
|
|
void SystemRuntime::Detach() {}
|
|
|
|
|
2013-11-05 11:57:19 +08:00
|
|
|
void SystemRuntime::ModulesDidLoad(ModuleList &module_list) {}
|
|
|
|
|
2013-11-06 11:07:33 +08:00
|
|
|
const std::vector<ConstString> &SystemRuntime::GetExtendedBacktraceTypes() {
|
2013-11-12 15:02:07 +08:00
|
|
|
return m_types;
|
2013-11-05 11:57:19 +08:00
|
|
|
}
|
2013-11-06 08:04:44 +08:00
|
|
|
|
2013-11-13 07:33:32 +08:00
|
|
|
ThreadSP SystemRuntime::GetExtendedBacktraceThread(ThreadSP thread,
|
|
|
|
ConstString type) {
|
2013-11-06 08:04:44 +08:00
|
|
|
return ThreadSP();
|
|
|
|
}
|