[Lldb-commits] [lldb] [lldb] Fix breakpoint resolver serialization bug (PR #76766)

2024-01-03 Thread Alex Langford via lldb-commits
bulbazord wrote: @clayborg I was able to write a test similar to what you suggested (without needing to set two breakpoints). I also changed the actual fix since a module's object name isn't quite what I wanted in the first place. https://github.com/llvm/llvm-project/pull/76766 ___

[Lldb-commits] [lldb] [lldb] Fix breakpoint resolver serialization bug (PR #76766)

2024-01-03 Thread Alex Langford via lldb-commits
https://github.com/bulbazord updated https://github.com/llvm/llvm-project/pull/76766 >From a9b6b6fee19fd19bf1fdce6fe8e9ed35f7c1567a Mon Sep 17 00:00:00 2001 From: Alex Langford Date: Tue, 2 Jan 2024 15:44:30 -0800 Subject: [PATCH] [lldb] Fix breakpoint resolver serialization bug BreakpointReso

[Lldb-commits] [lldb] [lldb] Fix breakpoint resolver serialization bug (PR #76766)

2024-01-02 Thread Alex Langford via lldb-commits
bulbazord wrote: > Can this be tested? I took a look at existing tests, but I'm not sure how to best test this. I think we would need to create a breakpoint in a module by address and make sure the resolver correctly serializes the name (in `statistics dump` or otherwise). Does that sound app

[Lldb-commits] [lldb] [lldb] Fix breakpoint resolver serialization bug (PR #76766)

2024-01-02 Thread Alex Langford via lldb-commits
https://github.com/bulbazord created https://github.com/llvm/llvm-project/pull/76766 BreakpointResolverAddress optionally can include the module name related to the address that gets resolved. Currently this will never work because it sets the name to itself (which is empty). >From 519f2db688

[Lldb-commits] [lldb] [LLDB] Fix write permission error in TestGlobalModuleCache.py (PR #76171)

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

[Lldb-commits] [lldb] [lldb] Add actionable feedback when overwriting a command fails (PR #76030)

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

[Lldb-commits] [lldb] [DRAFT] Add support for inline DWARF source files. (PR #75880)

2023-12-19 Thread Alex Langford via lldb-commits
@@ -38,7 +65,10 @@ class FileSpecList { FileSpecList(FileSpecList &&rhs) = default; /// Initialize this object from a vector of FileSpecs - FileSpecList(std::vector &&rhs) : m_files(std::move(rhs)) {} + FileSpecList(std::vector &&rhs) { +for (auto &fs : rhs) + m

[Lldb-commits] [lldb] [lldb][Type] Add TypeQuery::SetLanguages API (PR #75926)

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

[Lldb-commits] [lldb] [lldb] Improve maintainability and readability for ValueObject methods (PR #75865)

2023-12-19 Thread Alex Langford via lldb-commits
@@ -1777,30 +1783,31 @@ static const char *SkipLeadingExpressionPathSeparators(const char *expression) { ValueObjectSP ValueObject::GetSyntheticExpressionPathChild(const char *expression, bool can_create) { - ValueObjectSP syntheti

[Lldb-commits] [lldb] [lldb] Improve maintainability and readability for ValueObject methods (PR #75865)

2023-12-18 Thread Alex Langford via lldb-commits
@@ -1623,62 +1623,68 @@ bool ValueObject::IsUninitializedReference() { ValueObjectSP ValueObject::GetSyntheticArrayMember(size_t index, bool can_create) { - ValueObjectSP synthetic_child_sp; - if (IsPointerType() || IsArrayT

[Lldb-commits] [lldb] [lldb] Improve maintainability and readability for ValueObject methods (PR #75865)

2023-12-18 Thread Alex Langford via lldb-commits
@@ -1992,71 +1999,67 @@ void ValueObject::GetExpressionPath(Stream &s, } ValueObjectSP ValueObject::GetValueForExpressionPath( -llvm::StringRef expression, ExpressionPathScanEndReason *reason_to_stop, -ExpressionPathEndResultType *final_value_type, +llvm::StringRef

[Lldb-commits] [lldb] [lldb] Improve maintainability and readability for ValueObject methods (PR #75865)

2023-12-18 Thread Alex Langford via lldb-commits
@@ -1992,71 +1999,67 @@ void ValueObject::GetExpressionPath(Stream &s, } ValueObjectSP ValueObject::GetValueForExpressionPath( -llvm::StringRef expression, ExpressionPathScanEndReason *reason_to_stop, -ExpressionPathEndResultType *final_value_type, +llvm::StringRef

[Lldb-commits] [lldb] [lldb] Improve maintainability and readability for ValueObject methods (PR #75865)

2023-12-18 Thread Alex Langford via lldb-commits
@@ -1623,62 +1623,68 @@ bool ValueObject::IsUninitializedReference() { ValueObjectSP ValueObject::GetSyntheticArrayMember(size_t index, bool can_create) { - ValueObjectSP synthetic_child_sp; - if (IsPointerType() || IsArrayT

[Lldb-commits] [lldb] [lldb] Improve maintainability and readability for ValueObject methods (PR #75865)

2023-12-18 Thread Alex Langford via lldb-commits
@@ -1777,30 +1783,31 @@ static const char *SkipLeadingExpressionPathSeparators(const char *expression) { ValueObjectSP ValueObject::GetSyntheticExpressionPathChild(const char *expression, bool can_create) { - ValueObjectSP syntheti

[Lldb-commits] [lldb] [DRAFT] Add support for inline DWARF source files. (PR #75880)

2023-12-18 Thread Alex Langford via lldb-commits
@@ -17,13 +17,40 @@ namespace lldb_private { class Stream; +/// Represents a source file whose contents is known (for example +/// because it can be reconstructed from debug info), but that +/// hasn't been written to a local disk yet. +struct LazyFileSpec { + virtual ~LazyFi

[Lldb-commits] [lldb] [DRAFT] Add support for inline DWARF source files. (PR #75880)

2023-12-18 Thread Alex Langford via lldb-commits
@@ -38,7 +65,10 @@ class FileSpecList { FileSpecList(FileSpecList &&rhs) = default; /// Initialize this object from a vector of FileSpecs - FileSpecList(std::vector &&rhs) : m_files(std::move(rhs)) {} + FileSpecList(std::vector &&rhs) { +for (auto &fs : rhs) + m

[Lldb-commits] [lldb] [lldb] Remove unused GetChildAtIndexPath(...) methods from ValueObject.cpp (PR #75870)

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

[Lldb-commits] [lldb] Remove unused FileSPec::IsResolved() functionality. (PR #75840)

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

[Lldb-commits] [lldb] [lldb][PDB] Update max matches test for type queries (PR #75813)

2023-12-18 Thread Alex Langford via lldb-commits
https://github.com/bulbazord approved this pull request. Seems like a good clean up to me! https://github.com/llvm/llvm-project/pull/75813 ___ lldb-commits mailing list lldb-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-co

[Lldb-commits] [lldb] [lldb][NFCI] Remove unused parameter from BreakpointResolver*::CreateFromStructuredData (PR #75374)

2023-12-15 Thread Alex Langford via lldb-commits
https://github.com/bulbazord closed https://github.com/llvm/llvm-project/pull/75374 ___ lldb-commits mailing list lldb-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits

[Lldb-commits] [lldb] [LLDB] Add more helper functions to CompilerType class (second try). (PR #73472)

2023-12-13 Thread Alex Langford via lldb-commits
https://github.com/bulbazord approved this pull request. Seems okay to me. I don't see anything in here that wouldn't make sense in at least some other languages (other than C++). https://github.com/llvm/llvm-project/pull/73472 ___ lldb-commits mailin

[Lldb-commits] [lldb] Fix a crash from character type confusion interaction with libedit (PR #75388)

2023-12-13 Thread Alex Langford via lldb-commits
@@ -978,8 +978,14 @@ void Editline::DisplayCompletions( break; fprintf(editline.m_output_file, "More (Y/n/a): "); -char reply = 'n'; -int got_char = el_getc(editline.m_editline, &reply); +// The type for the output and the type for the parameter are diffe

[Lldb-commits] [lldb] [lldb][NFCI] Remove unused parameter from BreakpointResolver*::CreateFromStructuredData (PR #75374)

2023-12-13 Thread Alex Langford via lldb-commits
https://github.com/bulbazord created https://github.com/llvm/llvm-project/pull/75374 These appear to be unused. >From e00884c8a9e6010b339932a9bff840634462beb7 Mon Sep 17 00:00:00 2001 From: Alex Langford Date: Wed, 13 Dec 2023 11:35:49 -0800 Subject: [PATCH] [lldb][NFCI] Remove unused paramete

[Lldb-commits] [lldb] [LLDB] Add more helper functions to CompilerType class (second try). (PR #73472)

2023-12-13 Thread Alex Langford via lldb-commits
https://github.com/bulbazord commented: Seems okay to me... Quick question: Why do you need `CompilerType::GetTemplateArgumentType`? This seems pretty specific to C++. Is there a more general concept we could capture? Like something related to "Generics"? https://github.com/llvm/llvm-project/

[Lldb-commits] [lldb] lldb: add support for thread names on Windows (PR #74731)

2023-12-11 Thread Alex Langford via lldb-commits
bulbazord wrote: @compnerd Perhaps you can take a look at this one? Not sure who does Windows work on LLDB these days. https://github.com/llvm/llvm-project/pull/74731 ___ lldb-commits mailing list lldb-commits@lists.llvm.org https://lists.llvm.org/cgi

[Lldb-commits] [lldb] [lldb-dap] Emit declarations along with variables (PR #74865)

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

[Lldb-commits] [lldb] [lldb-dap] Emit declarations along with variables (PR #74865)

2023-12-11 Thread Alex Langford via lldb-commits
bulbazord wrote: > > Is this extension to the protocol documented anywhere I can see? Or is this > > an ad-hoc thing? I think it would be useful to write down somewhere other > > than a commit message (in docs, comments, or otherwise) that this is an > > extension. > > @bulbazord , it's an ad

[Lldb-commits] [lldb] [lldb-dap] Include [opt] in the frame name only if a custom frame format is not specified. (PR #74861)

2023-12-11 Thread Alex Langford via lldb-commits
bulbazord wrote: > `{${function.is-optimized} [opt]}` is how is already is and can be done with > frame formats, so I agree with this patch that if the user customizes it, > they have complete control and we shouldn't add anything. Does everyone else > agree? I think I agree with this in prin

[Lldb-commits] [lldb] [lldb-dap] Emit declarations along with variables (PR #74865)

2023-12-11 Thread Alex Langford via lldb-commits
bulbazord wrote: Is this extension to the protocol documented anywhere I can see? Or is this an ad-hoc thing? I think it would be useful to write down somewhere other than a commit message (in docs, comments, or otherwise) that this is an extension. https://github.com/llvm/llvm-project/pull/74

[Lldb-commits] [lldb] [lldb-dap] Emit declarations along with variables (PR #74865)

2023-12-08 Thread Alex Langford via lldb-commits
@@ -1101,6 +1101,29 @@ std::string CreateUniqueVariableNameForDisplay(lldb::SBValue v, // can use this optional information to present the // children in a paged UI and fetch them in chunks." // } +// "declaration": { +//

[Lldb-commits] [lldb] [lldb-dap] Include [opt] in the frame name only if a custom frame format is not specified. (PR #74861)

2023-12-08 Thread Alex Langford via lldb-commits
https://github.com/bulbazord commented: I think conceptually this makes sense, but I somewhat wonder if folks would get confused when they have a custom frame format and don't see the [opt] in there? The current behavior is that [opt] is always there so folks know they don't have to put it in

[Lldb-commits] [lldb] [lldb-dap] Implement command directives (PR #74808)

2023-12-08 Thread Alex Langford via lldb-commits
@@ -33,14 +39,49 @@ void RunLLDBCommands(llvm::StringRef prefix, const char *error = result.GetError(); strm << error; } + }; + + lldb::SBCommandInterpreter interp = g_dap.debugger.GetCommandInterpreter(); + for (llvm::StringRef command : commands) { +lld

[Lldb-commits] [lldb] [lldb][NFC] Simplify DWARRFDeclContext::GetQualifiedName (PR #74788)

2023-12-08 Thread Alex Langford via lldb-commits
https://github.com/bulbazord approved this pull request. TIL about this overload of `llvm::interleave`!!! https://github.com/llvm/llvm-project/pull/74788 ___ lldb-commits mailing list lldb-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/l

[Lldb-commits] [lldb] [SymbolFileDWARF][NFC] Remove duplicated code checking for type tags (PR #74773)

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

[Lldb-commits] [llvm] [lldb] [lldb] Rename lldb-vscode to lldb-dap (PR #69264)

2023-12-07 Thread Alex Langford via lldb-commits
bulbazord wrote: > @JDevlieghere Can you delete the `llvm-project/lldb/tools/lldb-vscode` > directory from git after this commit to clean up our codebase? There are > still two copies of the `lldb-dap` code in the sources: > > ``` > lldb/tools/lldb-dap > lldb/tools/lldb-vscode > ``` > > I wor

[Lldb-commits] [lldb] lldb: add support for thread names on Windows (PR #74731)

2023-12-07 Thread Alex Langford via lldb-commits
https://github.com/bulbazord commented: The implementation looks fine to me. Can you write a test? https://github.com/llvm/llvm-project/pull/74731 ___ lldb-commits mailing list lldb-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo

[Lldb-commits] [lldb] Fix a stall in running `quit` while a live process is running (PR #74687)

2023-12-07 Thread Alex Langford via lldb-commits
@@ -558,7 +558,10 @@ class Process : public std::enable_shared_from_this, /// /// Subclasses that override this method should always call this superclass /// method. - virtual void Finalize(); + /// If you are running Finalize in your Process subclass Destructor, pass

[Lldb-commits] [lldb] Fix a stall in running `quit` while a live process is running (PR #74687)

2023-12-07 Thread Alex Langford via lldb-commits
https://github.com/bulbazord approved this pull request. LGTM, small typo https://github.com/llvm/llvm-project/pull/74687 ___ lldb-commits mailing list lldb-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits

[Lldb-commits] [lldb] Fix a stall in running `quit` while a live process is running (PR #74687)

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

[Lldb-commits] [lldb] [lldb][SymbolFileDWARF][NFC] Remove unnecessary calls to GetDWARFDeclContext (PR #74523)

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

[Lldb-commits] [lldb] [lldb] Sync OpenBSD GetOSVersion() closer to NetBSD function (PR #74396)

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

[Lldb-commits] [lldb] Add option to pass thread ID to thread select command (PR #73596)

2023-12-04 Thread Alex Langford via lldb-commits
@@ -1296,10 +1296,11 @@ enum CompletionType { eRemoteDiskFileCompletion = (1u << 22), eRemoteDiskDirectoryCompletion = (1u << 23), eTypeCategoryNameCompletion = (1u << 24), + eThreadIDCompletion = (1u << 25), bulbazord wrote: Independent of the API stan

[Lldb-commits] [lldb] [lldb] Additional pieces towards OpenBSD support (PR #74198)

2023-12-04 Thread Alex Langford via lldb-commits
@@ -1,4 +1,7 @@ #include +#ifdef __OpenBSD__ bulbazord wrote: For consistency, can you change this to `if defined(__OpenBSD__)`? Not a big deal though https://github.com/llvm/llvm-project/pull/74198 ___ lldb-commits

[Lldb-commits] [lldb] [lldb] Additional pieces towards OpenBSD support (PR #74198)

2023-12-04 Thread Alex Langford via lldb-commits
https://github.com/bulbazord approved this pull request. LGTM overall, small nit https://github.com/llvm/llvm-project/pull/74198 ___ lldb-commits mailing list lldb-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits

[Lldb-commits] [lldb] [lldb] Additional pieces towards OpenBSD support (PR #74198)

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

[Lldb-commits] [lldb] [lldb] Delete unreachable code and unnecessary string conversions (PR #74119)

2023-12-01 Thread Alex Langford via lldb-commits
https://github.com/bulbazord approved this pull request. 🎉 https://github.com/llvm/llvm-project/pull/74119 ___ 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 LD_LIBRARY_PATH on OpenBSD (PR #74017)

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

[Lldb-commits] [lldb] [lldb] Simplify pipe2(2) handling on FreeBSD (PR #74019)

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

[Lldb-commits] [lldb] [lldb/test] Add OpenBSD to _get_platform_os (PR #74036)

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

[Lldb-commits] [lldb] [lldb] pipe2(2) is also supported by OpenBSD (PR #74012)

2023-11-30 Thread Alex Langford via lldb-commits
https://github.com/bulbazord approved this pull request. If [this man page](https://man.openbsd.org/pipe2) is to be believed, this seems alright to do. https://github.com/llvm/llvm-project/pull/74012 ___ lldb-commits mailing list lldb-commits@lists.ll

[Lldb-commits] [lldb] [lldb] Remove pre GCC 4.8 workaround (PR #73981)

2023-11-30 Thread Alex Langford via lldb-commits
https://github.com/bulbazord approved this pull request. LGTM >From the look of it, it looks like the minimum version of GCC that is >currently supported is 7.1. (See: >`llvm/cmake/modules/CheckCompilerVersion.cmake`) https://github.com/llvm/llvm-project/pull/73981 ___

[Lldb-commits] [lldb] [lldb][progress] Add discrete boolean flag to progress reports (PR #69516)

2023-11-30 Thread Alex Langford via lldb-commits
https://github.com/bulbazord requested changes to this pull request. There looks to be a ton of unrelated changes in ObjectFileMachO.cpp. Mostly formatting from what I can tell. Please revert to preserve blame history. https://github.com/llvm/llvm-project/pull/69516

[Lldb-commits] [lldb] [lldb][progress] Add discrete boolean flag to progress reports (PR #69516)

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

[Lldb-commits] [lldb] [lldb][progress] Add discrete boolean flag to progress reports (PR #69516)

2023-11-30 Thread Alex Langford via lldb-commits
@@ -1451,7 +1451,8 @@ static lldb::SectionType GetSectionType(uint32_t flags, static ConstString g_sect_name_dwarf_debug_line_str("__debug_line_str"); static ConstString g_sect_name_dwarf_debug_loc("__debug_loc"); static ConstString g_sect_name_dwarf_debug_loclists("__deb

[Lldb-commits] [lldb] [LLDB] Add more helper functions to CompilerType class (second try). (PR #73472)

2023-11-29 Thread Alex Langford via lldb-commits
@@ -302,6 +303,256 @@ bool CompilerType::IsBeingDefined() const { return false; } +bool CompilerType::IsSmartPtrType() const { + // These regular expressions cover shared, unique and weak pointers both from + // stdlibc++ and libc+++. + + static llvm::Regex k_libcxx_std_u

[Lldb-commits] [lldb] [lldb][test] Remove `reason` from `unittest2.expectedFailure` usage (PR #73028)

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

[Lldb-commits] [lldb] [LLDB] Add more helper functions to CompilerType class (second try). (PR #73472)

2023-11-27 Thread Alex Langford via lldb-commits
@@ -302,6 +303,256 @@ bool CompilerType::IsBeingDefined() const { return false; } +bool CompilerType::IsSmartPtrType() const { + // These regular expressions cover shared, unique and weak pointers both from + // stdlibc++ and libc+++. bulbazord wrote: If

[Lldb-commits] [lldb] [LLDB] Add more helper functions to CompilerType class (second try). (PR #73472)

2023-11-27 Thread Alex Langford via lldb-commits
@@ -302,6 +303,256 @@ bool CompilerType::IsBeingDefined() const { return false; } +bool CompilerType::IsSmartPtrType() const { + // These regular expressions cover shared, unique and weak pointers both from + // stdlibc++ and libc+++. + + static llvm::Regex k_libcxx_std_u

[Lldb-commits] [lldb] [LLDB] Add more helper functions to CompilerType class (second try). (PR #73472)

2023-11-27 Thread Alex Langford via lldb-commits
@@ -302,6 +303,256 @@ bool CompilerType::IsBeingDefined() const { return false; } +bool CompilerType::IsSmartPtrType() const { + // These regular expressions cover shared, unique and weak pointers both from + // stdlibc++ and libc+++. + + static llvm::Regex k_libcxx_std_u

[Lldb-commits] [lldb] [LLDB] Add more helper functions to CompilerType class (second try). (PR #73472)

2023-11-27 Thread Alex Langford via lldb-commits
https://github.com/bulbazord commented: Seems okay to me in general. Left some inline comments and I also agree with all of Jonas's inline comments I saw too. https://github.com/llvm/llvm-project/pull/73472 ___ lldb-commits mailing list lldb-commits@

[Lldb-commits] [lldb] [LLDB] Add more helper functions to CompilerType class (second try). (PR #73472)

2023-11-27 Thread Alex Langford via lldb-commits
@@ -302,6 +303,256 @@ bool CompilerType::IsBeingDefined() const { return false; } +bool CompilerType::IsSmartPtrType() const { + // These regular expressions cover shared, unique and weak pointers both from + // stdlibc++ and libc+++. + + static llvm::Regex k_libcxx_std_u

[Lldb-commits] [lldb] [LLDB] Add more helper functions to CompilerType class (second try). (PR #73472)

2023-11-27 Thread Alex Langford via lldb-commits
@@ -302,6 +303,256 @@ bool CompilerType::IsBeingDefined() const { return false; } +bool CompilerType::IsSmartPtrType() const { + // These regular expressions cover shared, unique and weak pointers both from + // stdlibc++ and libc+++. + + static llvm::Regex k_libcxx_std_u

[Lldb-commits] [lldb] [LLDB] Add more helper functions to CompilerType class (second try). (PR #73472)

2023-11-27 Thread Alex Langford via lldb-commits
@@ -302,6 +303,256 @@ bool CompilerType::IsBeingDefined() const { return false; } +bool CompilerType::IsSmartPtrType() const { + // These regular expressions cover shared, unique and weak pointers both from + // stdlibc++ and libc+++. + + static llvm::Regex k_libcxx_std_u

[Lldb-commits] [lldb] [LLDB] Add more helper functions to CompilerType class (second try). (PR #73472)

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

[Lldb-commits] [lldb] [lldb][dap] always add column field in StackFrame body (PR #73393)

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

[Lldb-commits] [lldb] [lldb][test] Remove `reason` from `unittest2.expectedFailure` usage (PR #73028)

2023-11-26 Thread Alex Langford via lldb-commits
https://github.com/bulbazord commented: I suppose we don't really lose anything by moving away from `expectedFailure` from decorators? Is it worth deleting the custom decorator that we have as well? 😄 https://github.com/llvm/llvm-project/pull/73028 ___

[Lldb-commits] [lldb] [lldb] Improve error message for script commands when there's no interpreter (PR #73321)

2023-11-26 Thread Alex Langford via lldb-commits
https://github.com/bulbazord approved this pull request. I think overall this is a better error message. I think "mode" probably refers to the configuration LLDB was built with (e.g. `LLDB_ENABLE_PYTHON`) but that's really unhelpful for developers actually using LLDB. This message has been aro

[Lldb-commits] [lldb] [lldb][dap] always add column field in StackFrame body (PR #73393)

2023-11-26 Thread Alex Langford via lldb-commits
@@ -817,8 +817,7 @@ llvm::json::Value CreateStackFrame(lldb::SBFrame &frame) { if (line && line != LLDB_INVALID_LINE_NUMBER) object.try_emplace("line", line); bulbazord wrote: >From the [DAP >specification](https://microsoft.github.io/debug-adapter-p

[Lldb-commits] [lldb] Fix command escape bug in lldb-dap (PR #72902)

2023-11-20 Thread Alex Langford via lldb-commits
https://github.com/bulbazord approved this pull request. LGTM. It may be a good idea to move these APIs over to use std::optional instead of taking a default value so we can use 'value_or' instead of having to write logic to handle the default value through a parameter. https://github.com/llvm

[Lldb-commits] [lldb] [lldb] Remove unused Status::SetMachError (NFC) (PR #72668)

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

[Lldb-commits] [lldb] Add new API in SBTarget for loading core from SBFile (PR #71769)

2023-11-16 Thread Alex Langford via lldb-commits
@@ -184,6 +184,7 @@ class LLDB_API SBTarget { SBProcess LoadCore(const char *core_file); SBProcess LoadCore(const char *core_file, lldb::SBError &error); + SBProcess LoadCore(SBFile &file, lldb::SBError &error); bulbazord wrote: Actually, can the `SBFile

[Lldb-commits] [lldb] Add new API in SBTarget for loading core from SBFile (PR #71769)

2023-11-16 Thread Alex Langford via lldb-commits
https://github.com/bulbazord approved this pull request. LGTM I think, but wait a little bit for Jonas and/or Greg to give it another pass. https://github.com/llvm/llvm-project/pull/71769 ___ lldb-commits mailing list lldb-commits@lists.llvm.org https

[Lldb-commits] [lldb] Add --copyExecutable and --ignoreNegativeCache to dsymForUUID invoke (PR #72579)

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

[Lldb-commits] [lldb] a322d50 - [lldb] Add forward declaration for SBWatchpointOptions in SBDefines.h

2023-11-16 Thread Alex Langford via lldb-commits
Author: Alex Langford Date: 2023-11-16T12:13:44-08:00 New Revision: a322d50804c5248f9e2981f3733bcb598fa13d51 URL: https://github.com/llvm/llvm-project/commit/a322d50804c5248f9e2981f3733bcb598fa13d51 DIFF: https://github.com/llvm/llvm-project/commit/a322d50804c5248f9e2981f3733bcb598fa13d51.diff

[Lldb-commits] [lldb] [lldb][test] Remove `self` references from decorators (PR #72416)

2023-11-15 Thread Alex Langford via lldb-commits
https://github.com/bulbazord approved this pull request. Beautiful, thank you for working on this. After this change, what's left to get us using the python-provided `unittest`? https://github.com/llvm/llvm-project/pull/72416 ___ lldb-commits mailing l

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

2023-11-15 Thread Alex Langford via lldb-commits
@@ -0,0 +1,142 @@ +//===-- SymbolLocatorDebuginfod.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: Ap

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

2023-11-15 Thread Alex Langford via lldb-commits
@@ -62,15 +66,25 @@ bool canUseDebuginfod() { } SmallVector getDefaultDebuginfodUrls() { - const char *DebuginfodUrlsEnv = std::getenv("DEBUGINFOD_URLS"); - if (DebuginfodUrlsEnv == nullptr) -return SmallVector(); - - SmallVector DebuginfodUrls; - StringRef(DebuginfodU

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

2023-11-15 Thread Alex Langford via lldb-commits
https://github.com/bulbazord approved this pull request. LGTM as well. I like the name Constituents quite a bit as well! 😄 I think most feedback at this point can probably be handled in follow-ups, esp. since some of it pertains to existing interfaces. https://github.com/llvm/llvm-project/pul

[Lldb-commits] [lldb] [llvm] Remove hardware index from watchpoints and breakpoints (PR #72012)

2023-11-14 Thread Alex Langford via lldb-commits
bulbazord wrote: > > > The Linux MIPS support has been ripped out and the remaining support for > > > MIPS probably gets no real testing > > > > > > Don't know the status but the BSD's still have some MIPS support. > > Yeah I've been trying to keep the MIPS watchpoint code in the sources

[Lldb-commits] [lldb] [llvm] Remove hardware index from watchpoints and breakpoints (PR #72012)

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

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

2023-11-14 Thread Alex Langford via lldb-commits
@@ -1255,6 +1258,676 @@ class CommandObjectScriptingObject : public CommandObjectRaw { CompletionType m_completion_type = eNoCompletion; }; + +/// This command implements a lldb parsed scripted command. The command +/// provides a definition of the options and arguments, a

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

2023-11-14 Thread Alex Langford via lldb-commits
@@ -2755,6 +2755,58 @@ bool ScriptInterpreterPythonImpl::RunScriptBasedCommand( return ret_val; } +bool ScriptInterpreterPythonImpl::RunScriptBasedParsedCommand( +StructuredData::GenericSP impl_obj_sp, Args &args, +ScriptedCommandSynchronicity synchronicity, +lld

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

2023-11-14 Thread Alex Langford via lldb-commits
@@ -476,6 +476,14 @@ class ScriptInterpreter : public PluginInterface { return false; } + virtual bool RunScriptBasedParsedCommand( + StructuredData::GenericSP impl_obj_sp, Args& args, + ScriptedCommandSynchronicity synchronicity, + lldb_private::CommandR

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

2023-11-14 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-14 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-14 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-14 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-14 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] [lldb] Remove StructuredData::Array::GetItemAtIndexAsArray (PR #71994)

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

[Lldb-commits] [lldb] [lldb-dap] Add an option to provide a format for stack frames (PR #71843)

2023-11-11 Thread Alex Langford via lldb-commits
@@ -0,0 +1,72 @@ + +//===-- SBFormat.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: A

[Lldb-commits] [lldb] [lldb-dap] Add an option to provide a format for stack frames (PR #71843)

2023-11-11 Thread Alex Langford via lldb-commits
@@ -1779,18 +1779,36 @@ void StackFrame::CalculateExecutionContext(ExecutionContext &exe_ctx) { exe_ctx.SetContext(shared_from_this()); } +bool StackFrame::DumpUsingFormat(Stream &strm, + const FormatEntity::Entry *format, +

[Lldb-commits] [lldb] Remove hardware index from watchpoints and breakpoints (PR #72012)

2023-11-11 Thread Alex Langford via lldb-commits
https://github.com/bulbazord commented: Oh, one more thing: Can you document the deprecation of this method into the release notes? The file is `llvm-project/llvm/docs/ReleaseNotes.rst` and there is an LLDB section. https://github.com/llvm/llvm-project/pull/72012 __

[Lldb-commits] [lldb] Remove hardware index from watchpoints and breakpoints (PR #72012)

2023-11-11 Thread Alex Langford via lldb-commits
https://github.com/bulbazord approved this pull request. This makes sense to me. I don't think we should worry too much about MIPS support -- my understanding is that LLDB doesn't really support any MIPS targets right now anyway. The Linux MIPS support has been ripped out and the remaining sup

[Lldb-commits] [lldb] Remove hardware index from watchpoints and breakpoints (PR #72012)

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

[Lldb-commits] [lldb] Remove hardware index from watchpoints and breakpoints (PR #72012)

2023-11-11 Thread Alex Langford via lldb-commits
@@ -94,16 +94,11 @@ SBError SBWatchpoint::GetError() { int32_t SBWatchpoint::GetHardwareIndex() { LLDB_INSTRUMENT_VA(this); - int32_t hw_index = -1; - - lldb::WatchpointSP watchpoint_sp(GetSP()); - if (watchpoint_sp) { -std::lock_guard guard( -watchpoint_sp->G

[Lldb-commits] [lldb] [lldb] Remove StructuredData::Array::GetItemAtIndexAsArray (PR #71994)

2023-11-10 Thread Alex Langford via lldb-commits
https://github.com/bulbazord created https://github.com/llvm/llvm-project/pull/71994 This method is completely unused. >From 96d7701aa01312e1decdf43c1c1287c9a4e3da91 Mon Sep 17 00:00:00 2001 From: Alex Langford Date: Fri, 10 Nov 2023 14:40:21 -0800 Subject: [PATCH] [lldb] Remove StructuredData

[Lldb-commits] [lldb] [lldb] Change interface of StructuredData::Array::GetItemAtIndexAsInteger (PR #71993)

2023-11-10 Thread Alex Langford via lldb-commits
https://github.com/bulbazord created https://github.com/llvm/llvm-project/pull/71993 This is a follow-up to (#71613) and (#71961). >From c6b3f622c32634db628cb76eaca556ae3d8ad6f4 Mon Sep 17 00:00:00 2001 From: Alex Langford Date: Fri, 10 Nov 2023 14:06:48 -0800 Subject: [PATCH] [lldb] Change in

[Lldb-commits] [lldb] [lldb] Change interface of StructuredData::Array::GetItemAtIndexAsDictionary (PR #71961)

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

[Lldb-commits] [lldb] [lldb] Change interface of StructuredData::Array::GetItemAtIndexAsDictionary (PR #71961)

2023-11-10 Thread Alex Langford via lldb-commits
bulbazord wrote: > A great future patch would be to have StructuredData backed by the llvm::json > stuff instead of our own custom version of this a JSON style object hiearchy I think that I agree. Unfortunately I don't have time to drive that right now and it might appear to not make sense wh

[Lldb-commits] [lldb] [lldb] Change interface of StructuredData::Array::GetItemAtIndexAsDictionary (PR #71961)

2023-11-10 Thread Alex Langford via lldb-commits
https://github.com/bulbazord created https://github.com/llvm/llvm-project/pull/71961 Similar to my previous patch (#71613) where I changed `GetItemAtIndexAsString`, this patch makes the same change to `GetItemAtIndexAsDictionary`. `GetItemAtIndexAsDictionary` now returns a std::optional that i

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