diff options
| author | Dimitry Andric <dim@FreeBSD.org> | 2023-12-17 20:41:09 +0000 |
|---|---|---|
| committer | Dimitry Andric <dim@FreeBSD.org> | 2023-12-17 20:41:09 +0000 |
| commit | 312c0ed19cc5276a17bacf2120097bec4515b0f1 (patch) | |
| tree | e6e4a4163840b73ba54bb0d3b70ee4899e4b7434 /llvm/lib/ExecutionEngine/Orc/Debugging | |
| parent | b1c73532ee8997fe5dfbeb7d223027bdf99758a0 (diff) | |
Diffstat (limited to 'llvm/lib/ExecutionEngine/Orc/Debugging')
4 files changed, 25 insertions, 3 deletions
diff --git a/llvm/lib/ExecutionEngine/Orc/Debugging/DebugInfoSupport.cpp b/llvm/lib/ExecutionEngine/Orc/Debugging/DebugInfoSupport.cpp index b541db3672f4..f65ec27ff875 100644 --- a/llvm/lib/ExecutionEngine/Orc/Debugging/DebugInfoSupport.cpp +++ b/llvm/lib/ExecutionEngine/Orc/Debugging/DebugInfoSupport.cpp @@ -105,7 +105,7 @@ llvm::orc::createDWARFContext(LinkGraph &G) { auto SecData = getSectionData(Sec); auto Name = Sec.getName(); // DWARFContext expects the section name to not start with a dot - if (Name.startswith(".")) + if (Name.starts_with(".")) Name = Name.drop_front(); LLVM_DEBUG(dbgs() << "Creating DWARFContext section " << Name << " with size " << SecData.size() << "\n"); diff --git a/llvm/lib/ExecutionEngine/Orc/Debugging/DebuggerSupport.cpp b/llvm/lib/ExecutionEngine/Orc/Debugging/DebuggerSupport.cpp index 9ba6dd90f50d..1668473c0eb4 100644 --- a/llvm/lib/ExecutionEngine/Orc/Debugging/DebuggerSupport.cpp +++ b/llvm/lib/ExecutionEngine/Orc/Debugging/DebuggerSupport.cpp @@ -39,7 +39,7 @@ Error enableDebuggerSupport(LLJIT &J) { if (!Registrar) return Registrar.takeError(); ObjLinkingLayer->addPlugin(std::make_unique<DebugObjectManagerPlugin>( - ES, std::move(*Registrar), true, true)); + ES, std::move(*Registrar), false, true)); return Error::success(); } case Triple::MachO: { diff --git a/llvm/lib/ExecutionEngine/Orc/Debugging/DebuggerSupportPlugin.cpp b/llvm/lib/ExecutionEngine/Orc/Debugging/DebuggerSupportPlugin.cpp index c6ffd9f7c2e3..e387b06ee934 100644 --- a/llvm/lib/ExecutionEngine/Orc/Debugging/DebuggerSupportPlugin.cpp +++ b/llvm/lib/ExecutionEngine/Orc/Debugging/DebuggerSupportPlugin.cpp @@ -34,7 +34,7 @@ class MachODebugObjectSynthesizerBase : public GDBJITDebugInfoRegistrationPlugin::DebugSectionSynthesizer { public: static bool isDebugSection(Section &Sec) { - return Sec.getName().startswith("__DWARF,"); + return Sec.getName().starts_with("__DWARF,"); } MachODebugObjectSynthesizerBase(LinkGraph &G, ExecutorAddr RegisterActionAddr) diff --git a/llvm/lib/ExecutionEngine/Orc/Debugging/LLJITUtilsCBindings.cpp b/llvm/lib/ExecutionEngine/Orc/Debugging/LLJITUtilsCBindings.cpp new file mode 100644 index 000000000000..2df5aef733fb --- /dev/null +++ b/llvm/lib/ExecutionEngine/Orc/Debugging/LLJITUtilsCBindings.cpp @@ -0,0 +1,22 @@ +//===--------- LLJITUtilsCBindings.cpp - Advanced LLJIT features ----------===// +// +// 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 +// +//===----------------------------------------------------------------------===// + +#include "llvm-c/LLJIT.h" +#include "llvm-c/LLJITUtils.h" + +#include "llvm/ExecutionEngine/Orc/Debugging/DebuggerSupport.h" +#include "llvm/ExecutionEngine/Orc/LLJIT.h" + +using namespace llvm; +using namespace llvm::orc; + +DEFINE_SIMPLE_CONVERSION_FUNCTIONS(LLJIT, LLVMOrcLLJITRef) + +LLVMErrorRef LLVMOrcLLJITEnableDebugSupport(LLVMOrcLLJITRef J) { + return wrap(llvm::orc::enableDebuggerSupport(*unwrap(J))); +} |
