Path: blob/main/contrib/llvm-project/lldb/source/Plugins/Process/FreeBSDKernel/ProcessFreeBSDKernel.h
39644 views
//===-- ProcessFreeBSDKernel.h ----------------------------------*- C++ -*-===//1//2// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.3// See https://llvm.org/LICENSE.txt for license information.4// SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception5//6//===----------------------------------------------------------------------===//78#ifndef LLDB_SOURCE_PLUGINS_PROCESS_FREEBSDKERNEL_PROCESSFREEBSDKERNEL_H9#define LLDB_SOURCE_PLUGINS_PROCESS_FREEBSDKERNEL_PROCESSFREEBSDKERNEL_H1011#include "lldb/Target/PostMortemProcess.h"1213class ProcessFreeBSDKernel : public lldb_private::PostMortemProcess {14public:15ProcessFreeBSDKernel(lldb::TargetSP target_sp, lldb::ListenerSP listener,16const lldb_private::FileSpec &core_file);1718static lldb::ProcessSP19CreateInstance(lldb::TargetSP target_sp, lldb::ListenerSP listener,20const lldb_private::FileSpec *crash_file_path,21bool can_connect);2223static void Initialize();2425static void Terminate();2627static llvm::StringRef GetPluginNameStatic() { return "freebsd-kernel"; }2829static llvm::StringRef GetPluginDescriptionStatic() {30return "FreeBSD kernel vmcore debugging plug-in.";31}3233llvm::StringRef GetPluginName() override { return GetPluginNameStatic(); }3435lldb_private::Status DoDestroy() override;3637bool CanDebug(lldb::TargetSP target_sp,38bool plugin_specified_by_name) override;3940void RefreshStateAfterStop() override;4142lldb_private::Status DoLoadCore() override;4344lldb_private::DynamicLoader *GetDynamicLoader() override;4546protected:47bool DoUpdateThreadList(lldb_private::ThreadList &old_thread_list,48lldb_private::ThreadList &new_thread_list) override;4950lldb::addr_t FindSymbol(const char* name);51};5253#endif // LLDB_SOURCE_PLUGINS_PROCESS_FREEBSDKERNEL_PROCESSFREEBSDKERNEL_H545556