#include "PlatformWindows.h"
#include <cstdio>
#include <optional>
#if defined(_WIN32)
#include "lldb/Host/windows/windows.h"
#include <winsock2.h>
#endif
#include "Plugins/Platform/gdb-server/PlatformRemoteGDBServer.h"
#include "Plugins/TypeSystem/Clang/TypeSystemClang.h"
#include "lldb/Breakpoint/BreakpointLocation.h"
#include "lldb/Breakpoint/BreakpointSite.h"
#include "lldb/Core/Debugger.h"
#include "lldb/Core/Module.h"
#include "lldb/Core/PluginManager.h"
#include "lldb/Expression/DiagnosticManager.h"
#include "lldb/Expression/FunctionCaller.h"
#include "lldb/Expression/UserExpression.h"
#include "lldb/Expression/UtilityFunction.h"
#include "lldb/Host/HostInfo.h"
#include "lldb/Target/DynamicLoader.h"
#include "lldb/Target/Process.h"
#include "lldb/Utility/Status.h"
#include "llvm/ADT/ScopeExit.h"
#include "llvm/Support/ConvertUTF.h"
usingnamespacelldb;
usingnamespacelldb_private;
LLDB_PLUGIN_DEFINE(…)
static uint32_t g_initialize_count = …;
PlatformSP PlatformWindows::CreateInstance(bool force,
const lldb_private::ArchSpec *arch) { … }
llvm::StringRef PlatformWindows::GetPluginDescriptionStatic(bool is_host) { … }
void PlatformWindows::Initialize() { … }
void PlatformWindows::Terminate() { … }
PlatformWindows::PlatformWindows(bool is_host) : … { … }
Status PlatformWindows::ConnectRemote(Args &args) { … }
uint32_t PlatformWindows::DoLoadImage(Process *process,
const FileSpec &remote_file,
const std::vector<std::string> *paths,
Status &error, FileSpec *loaded_image) { … }
Status PlatformWindows::UnloadImage(Process *process, uint32_t image_token) { … }
Status PlatformWindows::DisconnectRemote() { … }
ProcessSP PlatformWindows::DebugProcess(ProcessLaunchInfo &launch_info,
Debugger &debugger, Target &target,
Status &error) { … }
lldb::ProcessSP PlatformWindows::Attach(ProcessAttachInfo &attach_info,
Debugger &debugger, Target *target,
Status &error) { … }
void PlatformWindows::GetStatus(Stream &strm) { … }
bool PlatformWindows::CanDebugProcess() { … }
ConstString PlatformWindows::GetFullNameForDylib(ConstString basename) { … }
size_t
PlatformWindows::GetSoftwareBreakpointTrapOpcode(Target &target,
BreakpointSite *bp_site) { … }
std::unique_ptr<UtilityFunction>
PlatformWindows::MakeLoadImageUtilityFunction(ExecutionContext &context,
Status &status) { … }
Status PlatformWindows::EvaluateLoaderExpression(Process *process,
const char *expression,
ValueObjectSP &value) { … }