[Lldb-commits] [lldb] [lldb][test] TestVTableValue.py: skip test for older versions of clang (PR #71372)

2023-11-06 Thread Alex Langford via lldb-commits
https://github.com/bulbazord approved this pull request. https://github.com/llvm/llvm-project/pull/71372 ___ lldb-commits mailing list lldb-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits

[Lldb-commits] [lldb] [lldb] Remove LocateSymbolFile (PR #71301)

2023-11-04 Thread Alex Langford via lldb-commits
https://github.com/bulbazord approved this pull request.  https://github.com/llvm/llvm-project/pull/71301 ___ lldb-commits mailing list lldb-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits

[Lldb-commits] [lldb] [lldb] Move DownloadObjectAndSymbolFile to SymbolLocator plugin (PR #71267)

2023-11-04 Thread Alex Langford via lldb-commits
https://github.com/bulbazord approved this pull request. https://github.com/llvm/llvm-project/pull/71267 ___ lldb-commits mailing list lldb-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits

[Lldb-commits] [lldb] [lldb] Move DownloadObjectAndSymbolFile to SymbolLocator plugin (PR #71267)

2023-11-04 Thread Alex Langford via lldb-commits
@@ -96,6 +96,10 @@ typedef std::optional (*SymbolLocatorFindSymbolFileInBundle)( const FileSpec _bundle_fspec, const UUID *uuid, const ArchSpec *arch); typedef std::optional (*SymbolLocatorLocateExecutableSymbolFile)( const ModuleSpec _spec, const FileSpecList

[Lldb-commits] [lldb] [lldb] Move DownloadObjectAndSymbolFile to SymbolLocator plugin (PR #71267)

2023-11-04 Thread Alex Langford via lldb-commits
https://github.com/bulbazord edited https://github.com/llvm/llvm-project/pull/71267 ___ lldb-commits mailing list lldb-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits

[Lldb-commits] [lldb] [lldb] Move LocateExecutableSymbolFile to SymbolLocator plugin (PR #71266)

2023-11-03 Thread Alex Langford via lldb-commits
https://github.com/bulbazord approved this pull request.  https://github.com/llvm/llvm-project/pull/71266 ___ lldb-commits mailing list lldb-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits

[Lldb-commits] [lldb] [lldb][split-dwarf] implement GetSeparateDebugInfo for SymbolFileOnDemand (PR #71230)

2023-11-03 Thread Alex Langford via lldb-commits
@@ -130,3 +130,29 @@ def test_dwos_not_loaded_table_output(self): "0x[a-zA-Z0-9]{16}\s+E\s+.*foo\.dwo", ], ) + +@skipIfRemote +@skipIfDarwin +@skipIfWindows bulbazord wrote: In that case, we should figure out if

[Lldb-commits] [lldb] [lldb] Check for abstract methods implementation in Scripted Plugin Objects (PR #71260)

2023-11-03 Thread Alex Langford via lldb-commits
@@ -60,6 +60,52 @@ def move_blueprint_to_dsym(self, blueprint_name): ) shutil.copy(blueprint_origin_path, blueprint_destination_path) +def test_missing_methods_scripted_register_context(self): +"""Test that we only instanciate scripted processes if

[Lldb-commits] [lldb] [lldb] Check for abstract methods implementation in Scripted Plugin Objects (PR #71260)

2023-11-03 Thread Alex Langford via lldb-commits
@@ -27,6 +27,10 @@ class ScriptedThreadInterface : virtual public ScriptedInterface { return {llvm::make_error()}; } + llvm::SmallVector GetAbstractMethods() const override { +return {}; + } bulbazord wrote: Same here

[Lldb-commits] [lldb] [lldb] Check for abstract methods implementation in Scripted Plugin Objects (PR #71260)

2023-11-03 Thread Alex Langford via lldb-commits
@@ -103,24 +139,79 @@ class ScriptedPythonInterface : virtual public ScriptedInterface { "Resulting object is not initialized."); std::apply( - [, _return_object](auto &&...args) { + [, _return_object](auto &&...args)

[Lldb-commits] [lldb] [lldb] Check for abstract methods implementation in Scripted Plugin Objects (PR #71260)

2023-11-03 Thread Alex Langford via lldb-commits
@@ -0,0 +1,19 @@ +import os + + +class MissingMethodsScriptedProcess: +def __init__(self, exe_ctx, args): +pass + + +def __lldb_init_module(debugger, dict): +if not "SKIP_SCRIPTED_PROCESS_LAUNCH" in os.environ: bulbazord wrote: Instead of doing

[Lldb-commits] [lldb] [lldb] Check for abstract methods implementation in Scripted Plugin Objects (PR #71260)

2023-11-03 Thread Alex Langford via lldb-commits
@@ -663,6 +663,18 @@ bool PythonDictionary::Check(PyObject *py_obj) { return PyDict_Check(py_obj); } +bool PythonDictionary::HasKey(const llvm::Twine ) const { + if (!IsValid()) +return false; + PythonString key_object(key.str().data()); bulbazord

[Lldb-commits] [lldb] [lldb] Check for abstract methods implementation in Scripted Plugin Objects (PR #71260)

2023-11-03 Thread Alex Langford via lldb-commits
@@ -32,6 +32,42 @@ class ScriptedPythonInterface : virtual public ScriptedInterface { ScriptedPythonInterface(ScriptInterpreterPythonImpl ); ~ScriptedPythonInterface() override = default; + enum class AbstractMethodCheckerCases { +eNotImplemented, +

[Lldb-commits] [lldb] [lldb] Check for abstract methods implementation in Scripted Plugin Objects (PR #71260)

2023-11-03 Thread Alex Langford via lldb-commits
@@ -663,6 +663,18 @@ bool PythonDictionary::Check(PyObject *py_obj) { return PyDict_Check(py_obj); } +bool PythonDictionary::HasKey(const llvm::Twine ) const { bulbazord wrote: Why a `Twine` and not a `StringRef`?

[Lldb-commits] [lldb] [lldb] Check for abstract methods implementation in Scripted Plugin Objects (PR #71260)

2023-11-03 Thread Alex Langford via lldb-commits
@@ -103,24 +139,79 @@ class ScriptedPythonInterface : virtual public ScriptedInterface { "Resulting object is not initialized."); std::apply( - [, _return_object](auto &&...args) { + [, _return_object](auto &&...args)

[Lldb-commits] [lldb] [lldb] Check for abstract methods implementation in Scripted Plugin Objects (PR #71260)

2023-11-03 Thread Alex Langford via lldb-commits
@@ -32,6 +32,42 @@ class ScriptedPythonInterface : virtual public ScriptedInterface { ScriptedPythonInterface(ScriptInterpreterPythonImpl ); ~ScriptedPythonInterface() override = default; + enum class AbstractMethodCheckerCases { +eNotImplemented, +

[Lldb-commits] [lldb] [lldb] Check for abstract methods implementation in Scripted Plugin Objects (PR #71260)

2023-11-03 Thread Alex Langford via lldb-commits
@@ -103,24 +139,79 @@ class ScriptedPythonInterface : virtual public ScriptedInterface { "Resulting object is not initialized."); std::apply( - [, _return_object](auto &&...args) { + [, _return_object](auto &&...args)

[Lldb-commits] [lldb] [lldb] Check for abstract methods implementation in Scripted Plugin Objects (PR #71260)

2023-11-03 Thread Alex Langford via lldb-commits
@@ -26,6 +26,10 @@ class ScriptedPlatformInterface : virtual public ScriptedInterface { return {llvm::make_error()}; } + llvm::SmallVector GetAbstractMethods() const override { +return {}; + } bulbazord wrote: I don't think we should implement

[Lldb-commits] [lldb] [lldb] Check for abstract methods implementation in Scripted Plugin Objects (PR #71260)

2023-11-03 Thread Alex Langford via lldb-commits
@@ -103,24 +139,79 @@ class ScriptedPythonInterface : virtual public ScriptedInterface { "Resulting object is not initialized."); std::apply( - [, _return_object](auto &&...args) { + [, _return_object](auto &&...args)

[Lldb-commits] [lldb] [lldb] Check for abstract methods implementation in Scripted Plugin Objects (PR #71260)

2023-11-03 Thread Alex Langford via lldb-commits
@@ -28,6 +28,10 @@ class ScriptedProcessInterface : virtual public ScriptedInterface { return {llvm::make_error()}; } + llvm::SmallVector GetAbstractMethods() const override { +return {}; + } bulbazord wrote: Same here

[Lldb-commits] [lldb] [lldb][split-dwarf] implement GetSeparateDebugInfo for SymbolFileOnDemand (PR #71230)

2023-11-03 Thread Alex Langford via lldb-commits
@@ -2691,6 +2691,7 @@ class CommandObjectTargetModulesDumpSeparateDebugInfoFiles "Found unsupported debug info type '%s'.\n", type.str().c_str()); } + strm.EOL(); bulbazord wrote: This change

[Lldb-commits] [lldb] [lldb][split-dwarf] implement GetSeparateDebugInfo for SymbolFileOnDemand (PR #71230)

2023-11-03 Thread Alex Langford via lldb-commits
@@ -130,3 +130,29 @@ def test_dwos_not_loaded_table_output(self): "0x[a-zA-Z0-9]{16}\s+E\s+.*foo\.dwo", ], ) + +@skipIfRemote +@skipIfDarwin +@skipIfWindows bulbazord wrote: This test doesn't actually debug a

[Lldb-commits] [lldb] [TraceIntelPT]Migrate to new function template for TraceIntelPT (PR #71258)

2023-11-03 Thread Alex Langford via lldb-commits
https://github.com/bulbazord approved this pull request. LGTM https://github.com/llvm/llvm-project/pull/71258 ___ lldb-commits mailing list lldb-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits

[Lldb-commits] [lldb] [lldb] Move FindSymbolFileInBundle to SymbolLocator plugin (PR #71247)

2023-11-03 Thread Alex Langford via lldb-commits
https://github.com/bulbazord approved this pull request. Awesome! https://github.com/llvm/llvm-project/pull/71247 ___ lldb-commits mailing list lldb-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits

[Lldb-commits] [lldb] [lldb] Change Breakpoint::AddName return value (PR #71236)

2023-11-03 Thread Alex Langford via lldb-commits
https://github.com/bulbazord updated https://github.com/llvm/llvm-project/pull/71236 >From 1077476df553c21a88b1cbb80f7fc8635c88ff7f Mon Sep 17 00:00:00 2001 From: Alex Langford Date: Fri, 3 Nov 2023 14:37:07 -0700 Subject: [PATCH 1/2] [lldb] Change Breakpoint::AddName return value The return

[Lldb-commits] [lldb] [lldb][NFCI] Change parameter type in Target::AddNameToBreakpoint (PR #71241)

2023-11-03 Thread Alex Langford via lldb-commits
https://github.com/bulbazord created https://github.com/llvm/llvm-project/pull/71241 By itself this change does very little, but I plan on refactoring something from StructuredData and it gets much easier with this change. >From 70ca8af7794b1de998ec3b0145d3e94daac3358e Mon Sep 17 00:00:00

[Lldb-commits] [lldb] [lldb] Change Breakpoint::AddName return value (PR #71236)

2023-11-03 Thread Alex Langford via lldb-commits
bulbazord wrote: I'll just remove the comment. If we want to make this do error checking, we'll have to shuffle around even more code than this change does right now. I wanted to mostly get rid of this piece of cognitive overhead (why does this return something and why do we drop it on the

[Lldb-commits] [lldb] [lldb] Change Breakpoint::AddName return value (PR #71236)

2023-11-03 Thread Alex Langford via lldb-commits
https://github.com/bulbazord created https://github.com/llvm/llvm-project/pull/71236 The return value is completely unused. Let's just return nothing. >From 1077476df553c21a88b1cbb80f7fc8635c88ff7f Mon Sep 17 00:00:00 2001 From: Alex Langford Date: Fri, 3 Nov 2023 14:37:07 -0700 Subject:

[Lldb-commits] [lldb] [lldb] Deprecate SBBreakpoint::AddName in favor of AddNameWithErrorHandling (PR #71228)

2023-11-03 Thread Alex Langford via lldb-commits
https://github.com/bulbazord updated https://github.com/llvm/llvm-project/pull/71228 >From e1e99bdf51d559aa9c96cfd733f12b35e8db7728 Mon Sep 17 00:00:00 2001 From: Alex Langford Date: Fri, 3 Nov 2023 13:24:27 -0700 Subject: [PATCH 1/3] [lldb] Deprecate SBBreakpoint::AddName in favor of

[Lldb-commits] [lldb] [lldb] Deprecate SBBreakpoint::AddName in favor of AddNameWithErrorHandling (PR #71228)

2023-11-03 Thread Alex Langford via lldb-commits
https://github.com/bulbazord updated https://github.com/llvm/llvm-project/pull/71228 >From e1e99bdf51d559aa9c96cfd733f12b35e8db7728 Mon Sep 17 00:00:00 2001 From: Alex Langford Date: Fri, 3 Nov 2023 13:24:27 -0700 Subject: [PATCH 1/2] [lldb] Deprecate SBBreakpoint::AddName in favor of

[Lldb-commits] [lldb] [lldb] Deprecate SBBreakpoint::AddName in favor of AddNameWithErrorHandling (PR #71228)

2023-11-03 Thread Alex Langford via lldb-commits
https://github.com/bulbazord created https://github.com/llvm/llvm-project/pull/71228 AddName gives no feedback other than if it succeeded whereas AddNameWithErrorHandling gives you back an SBError object. I would like to mark AddName as deprecated and direct folks to use

[Lldb-commits] [lldb] Strip authentication bits from vtable load address (PR #71128)

2023-11-03 Thread Alex Langford via lldb-commits
https://github.com/bulbazord approved this pull request. https://github.com/llvm/llvm-project/pull/71128 ___ lldb-commits mailing list lldb-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits

[Lldb-commits] [lldb] [lldb] Convert LocateSymbolFile into a plugin (PR #71151)

2023-11-03 Thread Alex Langford via lldb-commits
@@ -0,0 +1,23 @@ +//===-- SymbolLocator.h -*- C++ -*-===// +// +// 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:

[Lldb-commits] [lldb] [lldb] Convert LocateSymbolFile into a plugin (PR #71151)

2023-11-03 Thread Alex Langford via lldb-commits
@@ -0,0 +1,91 @@ +//===-- SymbolLocatorDefault.cpp +//--===// bulbazord wrote: Formatting https://github.com/llvm/llvm-project/pull/71151 ___ lldb-commits mailing list

[Lldb-commits] [lldb] [lldb] Convert LocateSymbolFile into a plugin (PR #71151)

2023-11-03 Thread Alex Langford via lldb-commits
@@ -0,0 +1,328 @@ +//===-- SymbolLocatorDebugSymbols.cpp +//--===// bulbazord wrote: Formatting https://github.com/llvm/llvm-project/pull/71151 ___ lldb-commits mailing list

[Lldb-commits] [lldb] [lldb] Convert LocateSymbolFile into a plugin (PR #71151)

2023-11-03 Thread Alex Langford via lldb-commits
@@ -0,0 +1,45 @@ +//===-- SymbolLocatorDebugSymbols.h --*- C++ +//-*-===// bulbazord wrote: Formatting https://github.com/llvm/llvm-project/pull/71151 ___ lldb-commits mailing list

[Lldb-commits] [lldb] [lldb] Convert LocateSymbolFile into a plugin (PR #71151)

2023-11-03 Thread Alex Langford via lldb-commits
https://github.com/bulbazord edited https://github.com/llvm/llvm-project/pull/71151 ___ lldb-commits mailing list lldb-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits

[Lldb-commits] [lldb] [lldb] Convert LocateSymbolFile into a plugin (PR #71151)

2023-11-03 Thread Alex Langford via lldb-commits
https://github.com/bulbazord approved this pull request. LGTM, all my comments were minor things I noticed. Thanks for doing this! https://github.com/llvm/llvm-project/pull/71151 ___ lldb-commits mailing list lldb-commits@lists.llvm.org

[Lldb-commits] [lldb] [lldb][windows] Export dwarf plugin symbols in LLDB_EXPORT_ALL_SYMBOLS (PR #71087)

2023-11-02 Thread Alex Langford via lldb-commits
https://github.com/bulbazord approved this pull request. Thanks! https://github.com/llvm/llvm-project/pull/71087 ___ lldb-commits mailing list lldb-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits

[Lldb-commits] [lldb] [lldb][windows] Export dwarf plugin symbols in LLDB_EXPORT_ALL_SYMBOLS (PR #71087)

2023-11-02 Thread Alex Langford via lldb-commits
@@ -196,13 +196,15 @@ elseif (LLDB_EXPORT_ALL_SYMBOLS) MESSAGE("-- Symbols (liblldb): exporting all symbols from the lldb and lldb_private namespaces") # Pull out the various lldb libraries linked into liblldb, these will be used - # when looking for symbols to extract.

[Lldb-commits] [lldb] [lldb][windows] Export dwarf plugin symbols in LLDB_EXPORT_ALL_SYMBOLS (PR #71087)

2023-11-02 Thread Alex Langford via lldb-commits
https://github.com/bulbazord edited https://github.com/llvm/llvm-project/pull/71087 ___ lldb-commits mailing list lldb-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits

[Lldb-commits] [lldb] [lldb][windows] Export dwarf plugin symbols in LLDB_EXPORT_ALL_SYMBOLS (PR #71087)

2023-11-02 Thread Alex Langford via lldb-commits
https://github.com/bulbazord requested changes to this pull request. https://github.com/llvm/llvm-project/pull/71087 ___ lldb-commits mailing list lldb-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits

[Lldb-commits] [lldb] [lldb][split-dwarf] Add --errors-only argument separate-debug-info list (PR #71000)

2023-11-02 Thread Alex Langford via lldb-commits
@@ -445,7 +445,11 @@ class SymbolFile : public PluginInterface { /// contains the keys "type", "symfile", and "separate-debug-info-files". /// "type" can be used to assume the structure of each object in /// "separate-debug-info-files". - virtual bool

[Lldb-commits] [lldb] [lldb][split-dwarf] Add --errors-only argument separate-debug-info list (PR #71000)

2023-11-02 Thread Alex Langford via lldb-commits
@@ -445,7 +445,11 @@ class SymbolFile : public PluginInterface { /// contains the keys "type", "symfile", and "separate-debug-info-files". /// "type" can be used to assume the structure of each object in /// "separate-debug-info-files". - virtual bool

[Lldb-commits] [lldb] Add the ability to define a Python based command that uses CommandObjectParsed (PR #70734)

2023-11-01 Thread Alex Langford via lldb-commits
@@ -0,0 +1,315 @@ +""" +This module implements a couple of utility classes to make writing +lldb parsed commands more Pythonic. +The way to use it is to make a class for you command that inherits from ParsedCommandBase. +That will make an LLDBOVParser which you will use for your

[Lldb-commits] [lldb] Add the ability to define a Python based command that uses CommandObjectParsed (PR #70734)

2023-11-01 Thread Alex Langford via lldb-commits
@@ -0,0 +1,315 @@ +""" +This module implements a couple of utility classes to make writing +lldb parsed commands more Pythonic. +The way to use it is to make a class for you command that inherits from ParsedCommandBase. +That will make an LLDBOVParser which you will use for your

[Lldb-commits] [lldb] Add the ability to define a Python based command that uses CommandObjectParsed (PR #70734)

2023-11-01 Thread Alex Langford via lldb-commits
@@ -0,0 +1,315 @@ +""" +This module implements a couple of utility classes to make writing +lldb parsed commands more Pythonic. +The way to use it is to make a class for you command that inherits from ParsedCommandBase. +That will make an LLDBOVParser which you will use for your

[Lldb-commits] [lldb] Add the ability to define a Python based command that uses CommandObjectParsed (PR #70734)

2023-11-01 Thread Alex Langford via lldb-commits
@@ -96,7 +96,8 @@ function(finish_swig_python swig_target lldb_python_bindings_dir lldb_python_tar ${lldb_python_target_dir} "utils" FILES "${LLDB_SOURCE_DIR}/examples/python/in_call_stack.py" - "${LLDB_SOURCE_DIR}/examples/python/symbolication.py") +

[Lldb-commits] [lldb] Add the ability to define a Python based command that uses CommandObjectParsed (PR #70734)

2023-11-01 Thread Alex Langford via lldb-commits
@@ -0,0 +1,315 @@ +""" +This module implements a couple of utility classes to make writing +lldb parsed commands more Pythonic. +The way to use it is to make a class for you command that inherits from ParsedCommandBase. +That will make an LLDBOVParser which you will use for your

[Lldb-commits] [lldb] Add the ability to define a Python based command that uses CommandObjectParsed (PR #70734)

2023-11-01 Thread Alex Langford via lldb-commits
@@ -0,0 +1,315 @@ +""" +This module implements a couple of utility classes to make writing +lldb parsed commands more Pythonic. +The way to use it is to make a class for you command that inherits from ParsedCommandBase. +That will make an LLDBOVParser which you will use for your

[Lldb-commits] [lldb] Add the ability to define a Python based command that uses CommandObjectParsed (PR #70734)

2023-11-01 Thread Alex Langford via lldb-commits
@@ -831,6 +831,37 @@ bool lldb_private::python::SWIGBridge::LLDBSwigPythonCallCommandObject( return true; } +bool lldb_private::python::SWIGBridge::LLDBSwigPythonCallParsedCommandObject( +PyObject *implementor, lldb::DebuggerSP debugger,

[Lldb-commits] [lldb] Add the ability to define a Python based command that uses CommandObjectParsed (PR #70734)

2023-11-01 Thread Alex Langford via lldb-commits
@@ -0,0 +1,315 @@ +""" +This module implements a couple of utility classes to make writing +lldb parsed commands more Pythonic. +The way to use it is to make a class for you command that inherits from ParsedCommandBase. bulbazord wrote: ```suggestion The way to

[Lldb-commits] [lldb] Add the ability to define a Python based command that uses CommandObjectParsed (PR #70734)

2023-11-01 Thread Alex Langford via lldb-commits
@@ -0,0 +1,315 @@ +""" +This module implements a couple of utility classes to make writing +lldb parsed commands more Pythonic. +The way to use it is to make a class for you command that inherits from ParsedCommandBase. +That will make an LLDBOVParser which you will use for your

[Lldb-commits] [lldb] Add the ability to define a Python based command that uses CommandObjectParsed (PR #70734)

2023-11-01 Thread Alex Langford via lldb-commits
@@ -0,0 +1,315 @@ +""" +This module implements a couple of utility classes to make writing +lldb parsed commands more Pythonic. +The way to use it is to make a class for you command that inherits from ParsedCommandBase. +That will make an LLDBOVParser which you will use for your

[Lldb-commits] [lldb] Add the ability to define a Python based command that uses CommandObjectParsed (PR #70734)

2023-11-01 Thread Alex Langford via lldb-commits
@@ -831,6 +831,37 @@ bool lldb_private::python::SWIGBridge::LLDBSwigPythonCallCommandObject( return true; } +bool lldb_private::python::SWIGBridge::LLDBSwigPythonCallParsedCommandObject( +PyObject *implementor, lldb::DebuggerSP debugger,

[Lldb-commits] [lldb] Add the ability to define a Python based command that uses CommandObjectParsed (PR #70734)

2023-11-01 Thread Alex Langford via lldb-commits
@@ -831,6 +831,37 @@ bool lldb_private::python::SWIGBridge::LLDBSwigPythonCallCommandObject( return true; } +bool lldb_private::python::SWIGBridge::LLDBSwigPythonCallParsedCommandObject( +PyObject *implementor, lldb::DebuggerSP debugger,

[Lldb-commits] [lldb] Add the ability to define a Python based command that uses CommandObjectParsed (PR #70734)

2023-11-01 Thread Alex Langford via lldb-commits
https://github.com/bulbazord commented: I did an initial pass over your patch but I didn't read the python tests yet https://github.com/llvm/llvm-project/pull/70734 ___ lldb-commits mailing list lldb-commits@lists.llvm.org

[Lldb-commits] [lldb] Add the ability to define a Python based command that uses CommandObjectParsed (PR #70734)

2023-11-01 Thread Alex Langford via lldb-commits
@@ -831,6 +831,37 @@ bool lldb_private::python::SWIGBridge::LLDBSwigPythonCallCommandObject( return true; } +bool lldb_private::python::SWIGBridge::LLDBSwigPythonCallParsedCommandObject( +PyObject *implementor, lldb::DebuggerSP debugger,

[Lldb-commits] [lldb] Add the ability to define a Python based command that uses CommandObjectParsed (PR #70734)

2023-11-01 Thread Alex Langford via lldb-commits
@@ -0,0 +1,315 @@ +""" +This module implements a couple of utility classes to make writing +lldb parsed commands more Pythonic. +The way to use it is to make a class for you command that inherits from ParsedCommandBase. +That will make an LLDBOVParser which you will use for your

[Lldb-commits] [lldb] Add the ability to define a Python based command that uses CommandObjectParsed (PR #70734)

2023-11-01 Thread Alex Langford via lldb-commits
@@ -0,0 +1,315 @@ +""" +This module implements a couple of utility classes to make writing +lldb parsed commands more Pythonic. +The way to use it is to make a class for you command that inherits from ParsedCommandBase. +That will make an LLDBOVParser which you will use for your

[Lldb-commits] [lldb] Add the ability to define a Python based command that uses CommandObjectParsed (PR #70734)

2023-11-01 Thread Alex Langford via lldb-commits
@@ -831,6 +831,37 @@ bool lldb_private::python::SWIGBridge::LLDBSwigPythonCallCommandObject( return true; } +bool lldb_private::python::SWIGBridge::LLDBSwigPythonCallParsedCommandObject( +PyObject *implementor, lldb::DebuggerSP debugger,

[Lldb-commits] [lldb] Add the ability to define a Python based command that uses CommandObjectParsed (PR #70734)

2023-11-01 Thread Alex Langford via lldb-commits
@@ -0,0 +1,315 @@ +""" +This module implements a couple of utility classes to make writing +lldb parsed commands more Pythonic. +The way to use it is to make a class for you command that inherits from ParsedCommandBase. +That will make an LLDBOVParser which you will use for your

[Lldb-commits] [lldb] Add the ability to define a Python based command that uses CommandObjectParsed (PR #70734)

2023-11-01 Thread Alex Langford via lldb-commits
https://github.com/bulbazord edited https://github.com/llvm/llvm-project/pull/70734 ___ lldb-commits mailing list lldb-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits

[Lldb-commits] [llvm] [lldb] DEBUGINFOD based DWP acquisition for LLDB (PR #70996)

2023-11-01 Thread Alex Langford via lldb-commits
@@ -48,6 +48,7 @@ add_lldb_library(lldbSymbol NO_PLUGIN_DEPENDENCIES lldbHost lldbTarget lldbUtility +LLVMDebuginfod bulbazord wrote: Should this be in `LINK_COMPONENTS`? https://github.com/llvm/llvm-project/pull/70996

[Lldb-commits] [lldb] [llvm] DEBUGINFOD based DWP acquisition for LLDB (PR #70996)

2023-11-01 Thread Alex Langford via lldb-commits
@@ -396,8 +398,22 @@ Symbols::LocateExecutableSymbolFile(const ModuleSpec _spec, } } } - - return LocateExecutableSymbolFileDsym(module_spec); + FileSpec dsym_bundle = LocateExecutableSymbolFileDsym(module_spec); + if (dsym_bundle) +return dsym_bundle;

[Lldb-commits] [lldb] [llvm] DEBUGINFOD based DWP acquisition for LLDB (PR #70996)

2023-11-01 Thread Alex Langford via lldb-commits
@@ -396,8 +398,22 @@ Symbols::LocateExecutableSymbolFile(const ModuleSpec _spec, } } } - - return LocateExecutableSymbolFileDsym(module_spec); + FileSpec dsym_bundle = LocateExecutableSymbolFileDsym(module_spec); + if (dsym_bundle) +return dsym_bundle; + +

[Lldb-commits] [lldb] [llvm] DEBUGINFOD based DWP acquisition for LLDB (PR #70996)

2023-11-01 Thread Alex Langford via lldb-commits
@@ -4892,6 +4894,21 @@ void TargetProperties::SetDebugUtilityExpression(bool debug) { SetPropertyAtIndex(idx, debug); } +Args TargetProperties::GetDebugInfoDURLs() const { + Args urls; + m_collection_sp->GetPropertyAtIndexAsArgs(ePropertyDebugInfoDURLs, urls); + return

[Lldb-commits] [lldb] [llvm] DEBUGINFOD based DWP acquisition for LLDB (PR #70996)

2023-11-01 Thread Alex Langford via lldb-commits
https://github.com/bulbazord edited https://github.com/llvm/llvm-project/pull/70996 ___ lldb-commits mailing list lldb-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits

[Lldb-commits] [llvm] [lldb] DEBUGINFOD based DWP acquisition for LLDB (PR #70996)

2023-11-01 Thread Alex Langford via lldb-commits
https://github.com/bulbazord commented: Out of curiosity, why did you choose the delimiter as ' ' instead of something like ';'? https://github.com/llvm/llvm-project/pull/70996 ___ lldb-commits mailing list lldb-commits@lists.llvm.org

[Lldb-commits] [lldb] [lldb][AArch64] Move register info reconfigure into architecture plugin (PR #70950)

2023-11-01 Thread Alex Langford via lldb-commits
https://github.com/bulbazord edited https://github.com/llvm/llvm-project/pull/70950 ___ lldb-commits mailing list lldb-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits

[Lldb-commits] [lldb] [lldb][AArch64] Move register info reconfigure into architecture plugin (PR #70950)

2023-11-01 Thread Alex Langford via lldb-commits
@@ -373,14 +374,8 @@ bool GDBRemoteRegisterContext::WriteRegisterBytes(const RegisterInfo *reg_info, if (dst == nullptr) return false; - // Code below is specific to AArch64 target in SVE or SME state - // If vector granule (vg) register is being written then

[Lldb-commits] [lldb] [lldb][split-dwarf] Add --errors-only argument separate-debug-info list (PR #71000)

2023-11-01 Thread Alex Langford via lldb-commits
@@ -445,7 +445,11 @@ class SymbolFile : public PluginInterface { /// contains the keys "type", "symfile", and "separate-debug-info-files". /// "type" can be used to assume the structure of each object in /// "separate-debug-info-files". - virtual bool

[Lldb-commits] [lldb] [lldb][AArch64] Read SME2's ZT0 register from Linux core files (PR #70934)

2023-11-01 Thread Alex Langford via lldb-commits
@@ -339,6 +337,18 @@ bool RegisterContextCorePOSIX_arm64::ReadRegister(const RegisterInfo *reg_info, value.SetFromMemoryData(*reg_info, src + sizeof(sve::user_za_header), reg_info->byte_size, lldb::eByteOrderLittle,

[Lldb-commits] [lldb] [lldb][AArch64] Add SME2's ZT0 register (PR #70205)

2023-10-31 Thread Alex Langford via lldb-commits
bulbazord wrote: Looks fine to me, though I'm not an expert in this area. If nobody else reviews or approves soon, I can do so. https://github.com/llvm/llvm-project/pull/70205 ___ lldb-commits mailing list lldb-commits@lists.llvm.org

[Lldb-commits] [lldb] [lldb] Replace the usage of module imp with module importlib (PR #70443)

2023-10-31 Thread Alex Langford via lldb-commits
https://github.com/bulbazord approved this pull request. Thanks for taking the time to make sure it works with Python 3.6! I'm a big fan of this kind of modernization/cleanup work.  https://github.com/llvm/llvm-project/pull/70443 ___ lldb-commits

[Lldb-commits] [lldb] Add the ability to get a C++ vtable ValueObject from another ValueObj… (PR #67599)

2023-10-31 Thread Alex Langford via lldb-commits
bulbazord wrote: The change was not reverted upstream. It was reverted in that @DanielCChen 's llvm-project fork. Unfortunately that's the nature of GitHub. https://github.com/llvm/llvm-project/pull/67599 ___ lldb-commits mailing list

[Lldb-commits] [lldb] [lldb] Fix missing comsumeError() with LLDB_LOG in ObjectFileCOFF/PECOFF (PR #70793)

2023-10-31 Thread Alex Langford via lldb-commits
https://github.com/bulbazord approved this pull request. https://github.com/llvm/llvm-project/pull/70793 ___ lldb-commits mailing list lldb-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits

[Lldb-commits] [lldb] Fix the DEVELOPER_DIR computation (PR #70528)

2023-10-27 Thread Alex Langford via lldb-commits
@@ -461,13 +461,11 @@ static void ParseOSVersion(llvm::VersionTuple , NSString *Key) { // Invoke xcrun with the shlib dir. if (FileSpec fspec = HostInfo::GetShlibDir()) { if (FileSystem::Instance().Exists(fspec)) { -std::string contents_dir = -

[Lldb-commits] [lldb] Fix the DEVELOPER_DIR computation (PR #70528)

2023-10-27 Thread Alex Langford via lldb-commits
@@ -461,13 +461,11 @@ static void ParseOSVersion(llvm::VersionTuple , NSString *Key) { // Invoke xcrun with the shlib dir. if (FileSpec fspec = HostInfo::GetShlibDir()) { if (FileSystem::Instance().Exists(fspec)) { -std::string contents_dir = -

[Lldb-commits] [lldb] Fix the DEVELOPER_DIR computation (PR #70528)

2023-10-27 Thread Alex Langford via lldb-commits
https://github.com/bulbazord approved this pull request. Makes sense to me https://github.com/llvm/llvm-project/pull/70528 ___ lldb-commits mailing list lldb-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits

[Lldb-commits] [lldb] Fix the DEVELOPER_DIR computation (PR #70528)

2023-10-27 Thread Alex Langford via lldb-commits
https://github.com/bulbazord edited https://github.com/llvm/llvm-project/pull/70528 ___ lldb-commits mailing list lldb-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits

[Lldb-commits] [lldb] [lldb] Remove some declarations without definitions (PR #70514)

2023-10-27 Thread Alex Langford via lldb-commits
https://github.com/bulbazord approved this pull request. I can't find any uses of these either. I also checked in Apple's downstream swift fork, it doesn't look used there either. LGTM https://github.com/llvm/llvm-project/pull/70514 ___ lldb-commits

[Lldb-commits] [lldb] [lldb] Make use of Scripted{Python, }Interface for ScriptedThreadPlan (PR #70392)

2023-10-27 Thread Alex Langford via lldb-commits
https://github.com/bulbazord approved this pull request. I think all of my comments have been addressed. Thanks! https://github.com/llvm/llvm-project/pull/70392 ___ lldb-commits mailing list lldb-commits@lists.llvm.org

[Lldb-commits] [lldb] [lldb] Make use of Scripted{Python, }Interface for ScriptedThreadPlan (PR #70392)

2023-10-27 Thread Alex Langford via lldb-commits
@@ -104,6 +104,19 @@ ScriptInterpreter::GetStatusFromSBError(const lldb::SBError ) const { return Status(); } +Event * +ScriptInterpreter::GetOpaqueTypeFromSBEvent(const lldb::SBEvent ) const { + return event.m_opaque_ptr; +} + +Stream

[Lldb-commits] [lldb] [lldb] Add logging to ObjectFileMachO::ParseSymtab (PR #70490)

2023-10-27 Thread Alex Langford via lldb-commits
@@ -2652,7 +2654,9 @@ void ObjectFileMachO::ParseSymtab(Symtab ) { std::vector external_sym_trie_entries; std::set resolver_addresses; - if (dyld_trie_data.GetByteSize() > 0) { + const size_t dyld_trie_data_size = dyld_trie_data.GetByteSize(); + if (dyld_trie_data_size

[Lldb-commits] [lldb] [lldb] Add logging to ObjectFileMachO::ParseSymtab (PR #70490)

2023-10-27 Thread Alex Langford via lldb-commits
https://github.com/bulbazord approved this pull request. looks fine to me, one small question though https://github.com/llvm/llvm-project/pull/70490 ___ lldb-commits mailing list lldb-commits@lists.llvm.org

[Lldb-commits] [lldb] [lldb] Add logging to ObjectFileMachO::ParseSymtab (PR #70490)

2023-10-27 Thread Alex Langford via lldb-commits
https://github.com/bulbazord edited https://github.com/llvm/llvm-project/pull/70490 ___ lldb-commits mailing list lldb-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits

[Lldb-commits] [lldb] [lldb] Make use of Scripted{Python, }Interface for ScriptedThreadPlan (PR #70392)

2023-10-27 Thread Alex Langford via lldb-commits
@@ -104,6 +104,19 @@ ScriptInterpreter::GetStatusFromSBError(const lldb::SBError ) const { return Status(); } +Event * +ScriptInterpreter::GetOpaqueTypeFromSBEvent(const lldb::SBEvent ) const { + return event.m_opaque_ptr; +} + +Stream

[Lldb-commits] [lldb] [lldb] Make use of Scripted{Python, }Interface for ScriptedThreadPlan (PR #70392)

2023-10-27 Thread Alex Langford via lldb-commits
https://github.com/bulbazord edited https://github.com/llvm/llvm-project/pull/70392 ___ lldb-commits mailing list lldb-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits

[Lldb-commits] [lldb] [lldb] Make use of Scripted{Python, }Interface for ScriptedThreadPlan (PR #70392)

2023-10-27 Thread Alex Langford via lldb-commits
@@ -0,0 +1,40 @@ +//===-- ScriptedThreadInterface.h ---*- C++ -*-===// bulbazord wrote: The header is missing the world `Plan` https://github.com/llvm/llvm-project/pull/70392 ___

[Lldb-commits] [lldb] [lldb] Make use of Scripted{Python, }Interface for ScriptedThreadPlan (PR #70392)

2023-10-27 Thread Alex Langford via lldb-commits
@@ -0,0 +1,40 @@ +//===-- ScriptedThreadInterface.h ---*- C++ -*-===// +// +// 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:

[Lldb-commits] [lldb] [lldb] Make use of Scripted{Python, }Interface for ScriptedThreadPlan (PR #70392)

2023-10-27 Thread Alex Langford via lldb-commits
@@ -0,0 +1,92 @@ +//===-- ScriptedThreadPlanPythonInterface.cpp -===// +// +// 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:

[Lldb-commits] [lldb] [lldb] Replace the usage of module imp with module importlib (PR #70443)

2023-10-27 Thread Alex Langford via lldb-commits
https://github.com/bulbazord commented: `importlib` has been around since Python 3.1, maybe we shouldn't have the conditional logic to use `imp` instead? I'm pretty sure the minimum supported version is 3.6 since that's what LLVM requires. https://github.com/llvm/llvm-project/pull/70443

[Lldb-commits] [lldb] [lldb][AArch64][Linux] Rename IsEnabled to IsPresent (PR #70303)

2023-10-26 Thread Alex Langford via lldb-commits
@@ -610,7 +610,7 @@ NativeRegisterContextLinux_arm64::CacheAllRegisters(uint32_t _size) { return error; // Here this means, does the system have ZA, not whether it is active. bulbazord wrote: You could probably remove this comment

[Lldb-commits] [lldb] [lldb][AArch64][Linux] Rename IsEnabled to IsPresent (PR #70303)

2023-10-26 Thread Alex Langford via lldb-commits
https://github.com/bulbazord edited https://github.com/llvm/llvm-project/pull/70303 ___ lldb-commits mailing list lldb-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits

[Lldb-commits] [lldb] [lldb][AArch64][Linux] Rename IsEnabled to IsPresent (PR #70303)

2023-10-26 Thread Alex Langford via lldb-commits
https://github.com/bulbazord approved this pull request. LGTM  https://github.com/llvm/llvm-project/pull/70303 ___ lldb-commits mailing list lldb-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits

[Lldb-commits] [lldb] [lldb] [mostly NFC] Large WP foundation: WatchpointResources (PR #68845)

2023-10-25 Thread Alex Langford via lldb-commits
@@ -67,18 +67,15 @@ size_t WatchpointResource::GetNumberOfOwners() { bool WatchpointResource::OwnersContains(WatchpointSP _sp) { std::lock_guard guard(m_owners_mutex); const auto = std::find(m_owners.begin(), m_owners.end(), wp_sp); - if (it != m_owners.end()) -

[Lldb-commits] [lldb] [lldb] [mostly NFC] Large WP foundation: WatchpointResources (PR #68845)

2023-10-25 Thread Alex Langford via lldb-commits
https://github.com/bulbazord edited https://github.com/llvm/llvm-project/pull/68845 ___ lldb-commits mailing list lldb-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits

[Lldb-commits] [lldb] [lldb] [mostly NFC] Large WP foundation: WatchpointResources (PR #68845)

2023-10-25 Thread Alex Langford via lldb-commits
@@ -67,18 +67,15 @@ size_t WatchpointResource::GetNumberOfOwners() { bool WatchpointResource::OwnersContains(WatchpointSP _sp) { std::lock_guard guard(m_owners_mutex); const auto = std::find(m_owners.begin(), m_owners.end(), wp_sp); - if (it != m_owners.end()) -

[Lldb-commits] [lldb] [lldb] [mostly NFC] Large WP foundation: WatchpointResources (PR #68845)

2023-10-25 Thread Alex Langford via lldb-commits
@@ -53,44 +49,52 @@ bool WatchpointResource::Contains(addr_t addr) { void WatchpointResource::AddOwner(const WatchpointSP _sp) { std::lock_guard guard(m_owners_mutex); - m_owners.Add(wp_sp); + m_owners.push_back(wp_sp); } void

<    2   3   4   5   6   7   8   9   10   11   >