[Lldb-commits] [lldb] [LLDB][NativePDB] Fix name access for classes in `CVTagRecord::name` (PR #151190)

2025-07-29 Thread Pavel Labath via lldb-commits
https://github.com/labath approved this pull request. https://github.com/llvm/llvm-project/pull/151190 ___ lldb-commits mailing list lldb-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits

[Lldb-commits] [lldb] [LLDB] added getName method in SBModule (PR #150331)

2025-07-29 Thread Pavel Labath via lldb-commits
@@ -18,6 +18,26 @@ def tearDown(self): if self.background_pid: os.kill(self.background_pid, signal.SIGKILL) +def test_getname(self): +"""Test the SBModule::GetName() method""" +self.build() +target, _, _, _ = lldbutil.run_to_sour

[Lldb-commits] [lldb] [lldb] Support DW_OP_WASM_location in DWARFExpression (PR #151010)

2025-07-29 Thread Jonas Devlieghere via lldb-commits
https://github.com/JDevlieghere edited https://github.com/llvm/llvm-project/pull/151010 ___ lldb-commits mailing list lldb-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits

[Lldb-commits] [lldb] [lldb] Implement RegisterContextWasm (PR #151056)

2025-07-29 Thread Jonas Devlieghere via lldb-commits
@@ -23,19 +27,68 @@ def format_register_value(val): return result +class WasmStackFrame: +def __init__(self, address): +self._address = address + +def format(self): +return format_register_value(LOAD_ADDRESS | self._address) + + +class WasmCallStac

[Lldb-commits] [lldb] [lldb][cmake] Remove unnecessary target dependency (PR #150300)

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

[Lldb-commits] [lldb] [lldb][cmake] Remove unnecessary target dependency (PR #150300)

2025-07-29 Thread Alex Langford via lldb-commits
bulbazord wrote: Makes sense to me. Generally in CMake, if you have a file generated by a command and multiple independent targets depend on said file, you should "wrap" the file into a custom target and have everything depend on the custom target instead. Only one target should depend on thes

[Lldb-commits] [lldb] [lldb] Add LLDB test for UBSan trap frame recognizer (PR #151231)

2025-07-29 Thread Anthony Tran via lldb-commits
https://github.com/anthonyhatran created https://github.com/llvm/llvm-project/pull/151231 @Michael137 @delcypher Part of a GSoC 2025 Project. >From bb767753b00a51fb7757e78f6b45cc556d3d3683 Mon Sep 17 00:00:00 2001 From: Anthony Tran Date: Tue, 29 Jul 2025 14:06:48 -0700 Subject: [PATCH] Add

[Lldb-commits] [lldb] [llvm] [lldb-dap] Add network symbol optimization configuration options (PR #150777)

2025-07-29 Thread via lldb-commits
jimingham wrote: Loading of symbols in lldb is controlled by user settings because lldb serves a lot of different usage cases and how to load symbols is an important part of that. One of those settings is: symbols.enable-background-lookup -- Alias for backward compatibility: when enabled t

[Lldb-commits] [lldb] [llvm] [lldb-dap] Add network symbol optimization configuration options (PR #150777)

2025-07-29 Thread via lldb-commits
@@ -1105,6 +1148,15 @@ void DAP::ConfigureSourceMaps() { RunLLDBCommands("Setting source map:", {sourceMapCommand}); } +// REMOVED: DetectNetworkSymbolServices - no longer needed due to core fixes jimingham wrote: We don't record features that were removed

[Lldb-commits] [lldb] [lldb][test] Fix running TestWithLimitDebugInfo.py on Windows (PR #150579)

2025-07-29 Thread Igor Kudrin via lldb-commits
@@ -1775,16 +1775,20 @@ def no_reason(_): attrvalue, "__no_debug_info_test__", False ): # If any debug info categories were explicitly tagged, assume that list to be -# authoritative. If none were specified, try with

[Lldb-commits] [lldb] [lldb] Implement RegisterContextWasm (PR #151056)

2025-07-29 Thread Max Desiatov via lldb-commits
@@ -1998,6 +1998,61 @@ threads (live system debug) / cores (JTAG) in your program have stopped and allows LLDB to display and control your program correctly. +## qWasmCallStack + +Get the Wasm call stack for the given thread id. This returns a hex-encoded +list of PC values,

[Lldb-commits] [lldb] [lldb] add software watchpoints support (PR #151195)

2025-07-29 Thread via lldb-commits
@@ -356,7 +356,7 @@ class LLDB_API SBValue { /// return due to a value not being contained in memory, too /// large, or watchpoint resources are not available or all in /// use. - lldb::SBWatchpoint Watch(bool resolve_location, bool read, bool write, + lldb:

[Lldb-commits] [lldb] [lldb] Support DW_OP_WASM_location in DWARFExpression (PR #151010)

2025-07-29 Thread Jonas Devlieghere via lldb-commits
@@ -2300,9 +2301,40 @@ llvm::Expected DWARFExpression::Evaluate( break; } +case DW_OP_WASM_location: { + uint8_t wasm_op = opcodes.GetU8(&offset); + uint32_t index; + + /* LLDB doesn't have an address space to represents WebAssembly locals, +

[Lldb-commits] [lldb] [lldb] Support DW_OP_WASM_location in DWARFExpression (PR #151010)

2025-07-29 Thread Jonas Devlieghere via lldb-commits
@@ -0,0 +1,78 @@ +//===--===// +// +// 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: Apac

[Lldb-commits] [lldb] [lldb] Support DW_OP_WASM_location in DWARFExpression (PR #151010)

2025-07-29 Thread Jonas Devlieghere via lldb-commits
@@ -667,138 +736,331 @@ static auto testExpressionVendorExtensions(lldb::ModuleSP module_sp, TEST(DWARFExpression, Extensions) { const char *yamldata = R"( !ELF +--- !WASM FileHeader: - Class: ELFCLASS64 - Data:ELFDATA2LSB - Type:ET_EXEC - Machine: EM_38

[Lldb-commits] [lldb] [lldb] Support DW_OP_WASM_location in DWARFExpression (PR #151010)

2025-07-29 Thread Jonas Devlieghere via lldb-commits
https://github.com/JDevlieghere updated https://github.com/llvm/llvm-project/pull/151010 >From fe6624eafac163aa5e62c0af72d63831a1ec3160 Mon Sep 17 00:00:00 2001 From: Jonas Devlieghere Date: Mon, 28 Jul 2025 10:38:02 -0700 Subject: [PATCH 1/2] [lldb] Support DW_OP_WASM_location in DWARFExpressi

[Lldb-commits] [lldb] [LLDB] added getName method in SBModule (PR #150331)

2025-07-29 Thread Jacob Lalonde via lldb-commits
@@ -18,6 +18,26 @@ def tearDown(self): if self.background_pid: os.kill(self.background_pid, signal.SIGKILL) +def test_getname(self): +"""Test the SBModule::GetName() method""" +self.build() +target, _, _, _ = lldbutil.run_to_sour

[Lldb-commits] [lldb] [lldb] refactor PlatformAndroid (PR #145382)

2025-07-29 Thread Chad Smith via lldb-commits
https://github.com/cs01 edited https://github.com/llvm/llvm-project/pull/145382 ___ lldb-commits mailing list lldb-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits

[Lldb-commits] [lldb] [lldb] refactor PlatformAndroid (PR #145382)

2025-07-29 Thread Chad Smith via lldb-commits
cs01 wrote: I think I have everything in order now, it's ready for another pass. Thank you so much for your time and help on this! https://github.com/llvm/llvm-project/pull/145382 ___ lldb-commits mailing list lldb-commits@lists.llvm.org https://lists

[Lldb-commits] [lldb] [lldb] refactor PlatformAndroid (PR #145382)

2025-07-29 Thread Chad Smith via lldb-commits
https://github.com/cs01 ready_for_review https://github.com/llvm/llvm-project/pull/145382 ___ lldb-commits mailing list lldb-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits

[Lldb-commits] [lldb] [lldb] refactor PlatformAndroid (PR #145382)

2025-07-29 Thread Chad Smith via lldb-commits
https://github.com/cs01 updated https://github.com/llvm/llvm-project/pull/145382 >From 4756820fa10e1c9b98616947780eb4dc83bc98e1 Mon Sep 17 00:00:00 2001 From: Chad Smith Date: Tue, 29 Jul 2025 10:00:02 -0700 Subject: [PATCH] refactor android platform --- .../Plugins/Platform/Android/AdbClient.

[Lldb-commits] [lldb] Logging setup for lldb-dap extension (PR #146884)

2025-07-29 Thread via lldb-commits
award999 wrote: Yes but then the log file misses the debug messages until you change the log level after the fact https://github.com/llvm/llvm-project/pull/146884 ___ lldb-commits mailing list lldb-commits@lists.llvm.org https://lists.llvm.org/cgi-bin

[Lldb-commits] [lldb] Logging setup for lldb-dap extension (PR #146884)

2025-07-29 Thread John Harrison via lldb-commits
ashgti wrote: If you create an output logger then you can use the output UI to set the log level and view / save logs. For example, creating an output channel called 'lldb-dap' ```ts const logger = vscode.window.createOutputChannel('lldb-dap', {log: true}); logger.info("Info..."); logger.onDid

[Lldb-commits] [lldb] [lldb] add TemplateRange and NameQualifiersRange to DemangledNameInfo (PR #150999)

2025-07-29 Thread Charles Zablit via lldb-commits
@@ -435,142 +435,202 @@ struct DemanglingPartsTestCase { DemanglingPartsTestCase g_demangling_parts_test_cases[] = { // clang-format off { "_ZNVKO3BarIN2ns3QuxIiEEE1CIPFi3FooIS_IiES6_EEE6methodIS6_EENS5_IT_SC_E5InnerIiEESD_SD_", - { /*.BasenameRange=*/{92, 98}, /*.S

[Lldb-commits] [lldb] [lldb] Implement DW_CFA_val_offset and DW_CFA_val_offset_sf (PR #150732)

2025-07-29 Thread Daniel Sanders via lldb-commits
dsandersllvm wrote: I don't think combining them in ConcreteRegisterLocation completely makes sense like it did for AbstractRegisterLocation because there's a difference in semantics. eRegisterInRegister refers to a storage location whereas eRegisterIsRegisterPlusOffset is a computed value wit

[Lldb-commits] [lldb] [lldb] add TemplateRange and NameQualifiersRange to DemangledNameInfo (PR #150999)

2025-07-29 Thread Charles Zablit via lldb-commits
@@ -89,6 +89,8 @@ A complete list of currently supported format string variables is listed below: +---+---

[Lldb-commits] [lldb] [lldb] add TemplateRange and NameQualifiersRange to DemangledNameInfo (PR #150999)

2025-07-29 Thread Charles Zablit via lldb-commits
https://github.com/charles-zablit updated https://github.com/llvm/llvm-project/pull/150999 >From 9b3551c6dbf8629c49f2bf3ed3f34e7b4e52e65f Mon Sep 17 00:00:00 2001 From: Charles Zablit Date: Mon, 28 Jul 2025 18:58:44 +0200 Subject: [PATCH 1/2] [lldb] add TemplateRange and NameQualifiersRange to

[Lldb-commits] [lldb] [LLDB][NativePDB] Allow type lookup in namespaces (PR #149876)

2025-07-29 Thread Michael Buch via lldb-commits
@@ -2291,6 +2298,8 @@ void SymbolFileNativePDB::BuildParentMap() { TypeIndex fwd = full_to_forward[full]; m_parent_types[fwd] = m_parent_types[full]; } + + m_type_base_names.Sort(); Michael137 wrote: Or is this all a giant for-loop? Github makes it

[Lldb-commits] [lldb] [LLDB][NativePDB] Allow type lookup in namespaces (PR #149876)

2025-07-29 Thread Michael Buch via lldb-commits
@@ -2291,6 +2298,8 @@ void SymbolFileNativePDB::BuildParentMap() { TypeIndex fwd = full_to_forward[full]; m_parent_types[fwd] = m_parent_types[full]; } + + m_type_base_names.Sort(); Michael137 wrote: Can we move this up to just after we appended to

[Lldb-commits] [lldb] [LLDB][NativePDB] Allow type lookup in namespaces (PR #149876)

2025-07-29 Thread Michael Buch via lldb-commits
@@ -72,6 +72,14 @@ struct CVTagRecord { return cvunion.Name; } + CompilerContextKind contextKind() const { +if (m_kind == Struct || m_kind == Class) + return CompilerContextKind::ClassOrStruct; +if (m_kind == Enum) + return CompilerContextKind::Enum; +

[Lldb-commits] [lldb] [lldb][cmake] Create dependencies for LLDB header targets (PR #150995)

2025-07-29 Thread Chelsea Cassanova via lldb-commits
chelcassanova wrote: Thanks for the confirmation Jim! https://github.com/llvm/llvm-project/pull/150995 ___ lldb-commits mailing list lldb-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits

[Lldb-commits] [lldb] [LLDB][NativePDB] Allow type lookup in namespaces (PR #149876)

2025-07-29 Thread via lldb-commits
@@ -134,7 +134,9 @@ bool TypeQuery::ContextMatches( if (ctx == ctx_end) return false; // Pattern too long. -if (ctx->kind == CompilerContextKind::Namespace && ctx->name.IsEmpty()) { +if ((ctx->kind & CompilerContextKind::Namespace) == Nerixyz

[Lldb-commits] [lldb] [LLDB][NativePDB] Allow type lookup in namespaces (PR #149876)

2025-07-29 Thread via lldb-commits
https://github.com/Nerixyz updated https://github.com/llvm/llvm-project/pull/149876 >From fa3c96b19ba174904036b031015a073cfd759c76 Mon Sep 17 00:00:00 2001 From: Nerixyz Date: Mon, 21 Jul 2025 20:32:58 +0200 Subject: [PATCH 1/5] [LLDB][NativePDB] Allow type lookup in namespaces --- .../Native

[Lldb-commits] [lldb] [lldb] refactor PlatformAndroid (PR #145382)

2025-07-29 Thread Chad Smith via lldb-commits
cs01 wrote: Hi, yes sorry about that. I did not mean to push the file that state, so I marked the PR as draft while I get it in order. Generally it's ready for a review other than the ConnectionFileDescriptor changes if you want to give a look with that in mind. Btw I see there are workflows w

[Lldb-commits] [lldb] [LLDB] added getName method in SBModule (PR #150331)

2025-07-29 Thread Jacob Lalonde via lldb-commits
@@ -18,6 +18,26 @@ def tearDown(self): if self.background_pid: os.kill(self.background_pid, signal.SIGKILL) +def test_getname(self): +"""Test the SBModule::GetName() method""" +self.build() +target, _, _, _ = lldbutil.run_to_sour

[Lldb-commits] [lldb] [lldb][Expression] Encode Module and DIE UIDs into function AsmLabels (PR #148877)

2025-07-29 Thread Pavel Labath via lldb-commits
@@ -121,6 +121,15 @@ size_t Module::GetNumberAllocatedModules() { return GetModuleCollection().size(); } +Module *Module::GetAllocatedModuleWithUID(lldb::user_id_t uid) { + std::lock_guard guard( + GetAllocationModuleCollectionMutex()); + for (Module *mod : GetModuleC

[Lldb-commits] [lldb] [lldb] refactor PlatformAndroid (PR #145382)

2025-07-29 Thread Pavel Labath via lldb-commits
https://github.com/labath commented: I have a feeling something went wrong with the latest update. (I don't think you meant to undo the last months changes to ConnectionFileDescriptor). Can you fix that? I'm fine with a force-push, if needed. Did you also want to drop the "Draft" annotation (m

[Lldb-commits] [lldb] [LLDB][NativePDB] Allow type lookup in namespaces (PR #149876)

2025-07-29 Thread Pavel Labath via lldb-commits
@@ -2203,9 +2207,13 @@ void SymbolFileNativePDB::BuildParentMap() { RecordIndices &indices = record_indices[tag.asTag().getUniqueName()]; if (tag.asTag().isForwardRef()) labath wrote: Add braces on both sides. https://github.com/llvm/llvm-project/pull/

[Lldb-commits] [lldb] [LLDB][NativePDB] Allow type lookup in namespaces (PR #149876)

2025-07-29 Thread Pavel Labath via lldb-commits
https://github.com/labath commented: This looks good to me, unless someone has additional comments (?) https://github.com/llvm/llvm-project/pull/149876 ___ lldb-commits mailing list lldb-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/lis

[Lldb-commits] [lldb] [LLDB][NativePDB] Allow type lookup in namespaces (PR #149876)

2025-07-29 Thread Pavel Labath via lldb-commits
@@ -134,7 +134,9 @@ bool TypeQuery::ContextMatches( if (ctx == ctx_end) return false; // Pattern too long. -if (ctx->kind == CompilerContextKind::Namespace && ctx->name.IsEmpty()) { +if ((ctx->kind & CompilerContextKind::Namespace) == labath

[Lldb-commits] [lldb] [LLDB][NativePDB] Allow type lookup in namespaces (PR #149876)

2025-07-29 Thread Pavel Labath via lldb-commits
https://github.com/labath edited https://github.com/llvm/llvm-project/pull/149876 ___ lldb-commits mailing list lldb-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits

[Lldb-commits] [lldb] Logging setup for lldb-dap extension (PR #146884)

2025-07-29 Thread via lldb-commits
https://github.com/award999 updated https://github.com/llvm/llvm-project/pull/146884 >From ba55b877b38f9668250caa15b89f0416f802b9cb Mon Sep 17 00:00:00 2001 From: Adam Ward Date: Thu, 3 Jul 2025 09:13:41 -0400 Subject: [PATCH 1/8] Logging setup for lldb-dap extension - Add `winston` dependency

[Lldb-commits] [lldb] [lldb] Zero extend APInt when piece size is bigger than the bitwidth (PR #150149)

2025-07-29 Thread Pavel Labath via lldb-commits
@@ -1978,7 +1978,12 @@ llvm::Expected DWARFExpression::Evaluate( // grows to the nearest host integer type. llvm::APInt fail_value(1, 0, false); llvm::APInt ap_int = scalar.UInt128(fail_value); -assert(ap_int.getBitWidth() >= bit_

[Lldb-commits] [lldb] Logging setup for lldb-dap extension (PR #146884)

2025-07-29 Thread via lldb-commits
award999 wrote: @ashgti do you have a different view or does that perspective sway you? https://github.com/llvm/llvm-project/pull/146884 ___ lldb-commits mailing list lldb-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-comm

[Lldb-commits] [lldb] Logging setup for lldb-dap extension (PR #146884)

2025-07-29 Thread via lldb-commits
https://github.com/award999 ready_for_review https://github.com/llvm/llvm-project/pull/146884 ___ lldb-commits mailing list lldb-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits

[Lldb-commits] [lldb] Logging setup for lldb-dap extension (PR #146884)

2025-07-29 Thread via lldb-commits
https://github.com/award999 updated https://github.com/llvm/llvm-project/pull/146884 >From ba55b877b38f9668250caa15b89f0416f802b9cb Mon Sep 17 00:00:00 2001 From: Adam Ward Date: Thu, 3 Jul 2025 09:13:41 -0400 Subject: [PATCH 1/7] Logging setup for lldb-dap extension - Add `winston` dependency

[Lldb-commits] [clang] [lldb] [Clang] Initial support for P2841 (Variable template and concept template parameters) (PR #150823)

2025-07-29 Thread Timm Baeder via lldb-commits
@@ -310,6 +310,16 @@ class CollectUnexpandedParameterPacksVisitor return DynamicRecursiveASTVisitor::TraverseLambdaCapture(Lambda, C, Init); } +bool TraverseUnresolvedLookupExpr(UnresolvedLookupExpr *E) override { + if (E->getNumDecls() == 1) { +Nam

[Lldb-commits] [clang] [lldb] [Clang] Initial support for P2841 (Variable template and concept template parameters) (PR #150823)

2025-07-29 Thread Timm Baeder via lldb-commits
@@ -1071,12 +1074,27 @@ makeTemplateArgumentListInfo(Sema &S, TemplateIdAnnotation &TemplateId) { bool Sema::CheckTypeConstraint(TemplateIdAnnotation *TypeConstr) { TemplateName TN = TypeConstr->Template.get(); - ConceptDecl *CD = cast(TN.getAsTemplateDecl()); + NamedDecl

[Lldb-commits] [clang] [lldb] [Clang] Initial support for P2841 (Variable template and concept template parameters) (PR #150823)

2025-07-29 Thread Timm Baeder via lldb-commits
@@ -396,6 +396,16 @@ SourceLocation CXXPseudoDestructorExpr::getEndLoc() const { return End; } +static bool UnresolvedLookupExprIsVariableOrConceptParameterPack( +UnresolvedSetIterator Begin, UnresolvedSetIterator End) { + if (std::distance(Begin, End) != 1) +return

[Lldb-commits] [clang] [lldb] [Clang] Initial support for P2841 (Variable template and concept template parameters) (PR #150823)

2025-07-29 Thread Timm Baeder via lldb-commits
@@ -2343,22 +2342,25 @@ TemplateInstantiator::TransformOpenACCRoutineDeclAttr( } ExprResult TemplateInstantiator::transformNonTypeTemplateParmRef( -Decl *AssociatedDecl, const NonTypeTemplateParmDecl *parm, -SourceLocation loc, TemplateArgument arg, UnsignedOrNone Pack

[Lldb-commits] [clang] [lldb] [Clang] Initial support for P2841 (Variable template and concept template parameters) (PR #150823)

2025-07-29 Thread Timm Baeder via lldb-commits
@@ -3341,7 +3359,12 @@ inline TemplateDecl *getAsTypeTemplateDecl(Decl *D) { return TD && (isa(TD) || isa(TD) || isa(TD) || -isa(TD)) +[&]() { + if (TemplateTemplateParmDecl *TTP = --

[Lldb-commits] [clang] [lldb] [Clang] Initial support for P2841 (Variable template and concept template parameters) (PR #150823)

2025-07-29 Thread Timm Baeder via lldb-commits
@@ -6665,7 +6668,8 @@ QualType ASTContext::getAutoTypeInternal( Canon = DeducedType.getCanonicalType(); } else if (TypeConstraintConcept) { bool AnyNonCanonArgs = false; - ConceptDecl *CanonicalConcept = TypeConstraintConcept->getCanonicalDecl(); + Te

[Lldb-commits] [lldb] [lldb] add TemplateRange and NameQualifiersRange to DemangledNameInfo (PR #150999)

2025-07-29 Thread Charles Zablit via lldb-commits
@@ -30,6 +30,16 @@ struct DemangledNameInfo { /// \endcode std::pair BasenameRange; + /// A [start, end) pair for the function template arguments. + /// The basename is the name without scope qualifiers + /// and without template parameters. E.g., + /// \code{.cpp} +

[Lldb-commits] [clang] [lldb] [Clang] Initial support for P2841 (Variable template and concept template parameters) (PR #150823)

2025-07-29 Thread Corentin Jabot via lldb-commits
@@ -1746,6 +1754,16 @@ class TemplateTemplateParmDecl final return SourceRange(getTemplateParameters()->getTemplateLoc(), End); } + TemplateNameKind kind() const { cor3ntin wrote: Oh, I somehow completely misread your point. I will think about it. No

[Lldb-commits] [lldb] [lldb][FreeBSD] Add Auxv numbers for HWCAP3 and HWCAP4 (PR #151152)

2025-07-29 Thread via lldb-commits
llvmbot wrote: @llvm/pr-subscribers-lldb Author: David Spickett (DavidSpickett) Changes These entries serve the same purpose as the Linux HWCAPs but have been assigned different numbers as FreeBSD had already used the Linux ones. The numbers were assigned in: https://github.com/freebsd/f

[Lldb-commits] [lldb] [lldb][FreeBSD] Add Auxv numbers for HWCAP3 and HWCAP4 (PR #151152)

2025-07-29 Thread David Spickett via lldb-commits
https://github.com/DavidSpickett edited https://github.com/llvm/llvm-project/pull/151152 ___ lldb-commits mailing list lldb-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits

[Lldb-commits] [lldb] [lldb][FreeBSD] Add Auxv numbers for HWCAP3 and HWCAP4 (PR #151152)

2025-07-29 Thread David Spickett via lldb-commits
https://github.com/DavidSpickett created https://github.com/llvm/llvm-project/pull/151152 These entries serve the same purpose as the Linux HWCAPs but have been assigned different numbers as FreeBSD had already used the Linux ones. The numbers were assigned in: https://github.com/freebsd/freeb

[Lldb-commits] [lldb] [llvm] [lldb][windows] use Windows APIs to print to the console (PR #149493)

2025-07-29 Thread Charles Zablit via lldb-commits
@@ -247,6 +248,28 @@ uint32_t File::GetPermissions(Status &error) const { return file_stats.st_mode & (S_IRWXU | S_IRWXG | S_IRWXO); } +NativeFile::NativeFile() +: m_descriptor(kInvalidDescriptor), m_stream(kInvalidStream) {} charles-zablit wrote: Fixed

[Lldb-commits] [lldb] [llvm] [lldb][windows] use Windows APIs to print to the console (PR #149493)

2025-07-29 Thread Charles Zablit via lldb-commits
https://github.com/charles-zablit updated https://github.com/llvm/llvm-project/pull/149493 >From 77bf2b7acb82ea930702c8b0587c019fd48dc0f2 Mon Sep 17 00:00:00 2001 From: Charles Zablit Date: Fri, 18 Jul 2025 12:29:31 +0200 Subject: [PATCH 1/6] [windows][lldb] force the console to use a UTF-8 cod

[Lldb-commits] [clang] [lldb] [Clang] Initial support for P2841 (Variable template and concept template parameters) (PR #150823)

2025-07-29 Thread Erich Keane via lldb-commits
@@ -1746,6 +1754,16 @@ class TemplateTemplateParmDecl final return SourceRange(getTemplateParameters()->getTemplateLoc(), End); } + TemplateNameKind kind() const { erichkeane wrote: Right, i wasn't suggesting changing the num name, just that `kind` isn

[Lldb-commits] [lldb] Logging setup for lldb-dap extension (PR #146884)

2025-07-29 Thread via lldb-commits
award999 wrote: @ashgti The reason I don't want to use the LogOutputChannel is to always write the debug or trace levels to a log file. For the most part the Output channels are user facing and the users wouldn't often want to see the verbose logging. But if an issue happens, it would be benef

[Lldb-commits] [lldb] [lldb] add TemplateRange and NameQualifiersRange to DemangledNameInfo (PR #150999)

2025-07-29 Thread Michael Buch via lldb-commits
@@ -89,6 +89,8 @@ A complete list of currently supported format string variables is listed below: +---+---

[Lldb-commits] [lldb] [lldb] add TemplateRange and NameQualifiersRange to DemangledNameInfo (PR #150999)

2025-07-29 Thread Michael Buch via lldb-commits
@@ -435,142 +435,202 @@ struct DemanglingPartsTestCase { DemanglingPartsTestCase g_demangling_parts_test_cases[] = { // clang-format off { "_ZNVKO3BarIN2ns3QuxIiEEE1CIPFi3FooIS_IiES6_EEE6methodIS6_EENS5_IT_SC_E5InnerIiEESD_SD_", - { /*.BasenameRange=*/{92, 98}, /*.S

[Lldb-commits] [lldb] [lldb] add TemplateRange and NameQualifiersRange to DemangledNameInfo (PR #150999)

2025-07-29 Thread Michael Buch via lldb-commits
@@ -30,6 +30,16 @@ struct DemangledNameInfo { /// \endcode std::pair BasenameRange; + /// A [start, end) pair for the function template arguments. + /// The basename is the name without scope qualifiers + /// and without template parameters. E.g., + /// \code{.cpp} +

[Lldb-commits] [lldb] [lldb] add TemplateRange and NameQualifiersRange to DemangledNameInfo (PR #150999)

2025-07-29 Thread Michael Buch via lldb-commits
@@ -30,6 +30,16 @@ struct DemangledNameInfo { /// \endcode std::pair BasenameRange; + /// A [start, end) pair for the function template arguments. + /// The basename is the name without scope qualifiers + /// and without template parameters. E.g., + /// \code{.cpp} +

[Lldb-commits] [lldb] [lldb][AArch64] Fix arm64 hardware breakpoint/watchpoint to arm32 process. (PR #147198)

2025-07-29 Thread LLVM Continuous Integration via lldb-commits
llvm-ci wrote: LLVM Buildbot has detected a new failure on builder `lldb-aarch64-windows` running on `linaro-armv8-windows-msvc-05` while building `lldb` at step 6 "test". Full details are available at: https://lab.llvm.org/buildbot/#/builders/141/builds/10458 Here is the relevant piece of

[Lldb-commits] [lldb] [lldb][AArch64] Fix arm64 hardware breakpoint/watchpoint to arm32 process. (PR #147198)

2025-07-29 Thread David Spickett via lldb-commits
DavidSpickett wrote: Ignore that failure, it "fixed" itself. https://github.com/llvm/llvm-project/pull/147198 ___ lldb-commits mailing list lldb-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits

[Lldb-commits] [lldb] [lldb][Expression] Encode Module and DIE UIDs into function AsmLabels (PR #148877)

2025-07-29 Thread Michael Buch via lldb-commits
https://github.com/Michael137 updated https://github.com/llvm/llvm-project/pull/148877 >From 382395408c4b9a38206e984328ab472c25e7c55f Mon Sep 17 00:00:00 2001 From: Michael Buch Date: Fri, 15 Nov 2024 01:59:36 + Subject: [PATCH 01/15] [lldb][Expression] Encode Module and DIE UIDs into func

[Lldb-commits] [lldb] [lldb] Implement RegisterContextWasm (PR #151056)

2025-07-29 Thread David Spickett via lldb-commits
DavidSpickett wrote: > This PR implements a register context for Wasm, which uses virtual registers > to resolve Wasm local, globals and stack values. As I understand it, we internally are adding virtual registers, because that's the metaphor lldb is used to. For users, `register read --all`

[Lldb-commits] [lldb] [lldb] Add WebAssembly Process Plugin (PR #150143)

2025-07-29 Thread David Spickett via lldb-commits
https://github.com/DavidSpickett approved this pull request. LGTM. https://github.com/llvm/llvm-project/pull/150143 ___ lldb-commits mailing list lldb-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits

[Lldb-commits] [lldb] [lldb] Add WebAssembly Process Plugin (PR #150143)

2025-07-29 Thread David Spickett via lldb-commits
DavidSpickett wrote: Thanks! Ok good enough for me, and at some point I'll put some time into working with Wasm so I can better review in future. https://github.com/llvm/llvm-project/pull/150143 ___ lldb-commits mailing list lldb-commits@lists.llvm.or

[Lldb-commits] [lldb] [lldb] Implement RegisterContextWasm (PR #151056)

2025-07-29 Thread David Spickett via lldb-commits
@@ -23,19 +27,68 @@ def format_register_value(val): return result +class WasmStackFrame: +def __init__(self, address): +self._address = address + +def format(self): +return format_register_value(LOAD_ADDRESS | self._address) + + +class WasmCallStac

[Lldb-commits] [lldb] [lldb] Implement RegisterContextWasm (PR #151056)

2025-07-29 Thread David Spickett via lldb-commits
@@ -23,19 +27,68 @@ def format_register_value(val): return result +class WasmStackFrame: +def __init__(self, address): +self._address = address + +def format(self): +return format_register_value(LOAD_ADDRESS | self._address) + + +class WasmCallStac

[Lldb-commits] [lldb] [lldb] Implement RegisterContextWasm (PR #151056)

2025-07-29 Thread David Spickett via lldb-commits
@@ -32,3 +33,22 @@ llvm::Expected> ThreadWasm::GetWasmCallStack() { } return llvm::createStringError("no process"); } + +lldb::RegisterContextSP +ThreadWasm::CreateRegisterContextForFrame(StackFrame *frame) { + lldb::RegisterContextSP reg_ctx_sp; DavidSpi

[Lldb-commits] [lldb] [lldb] Implement RegisterContextWasm (PR #151056)

2025-07-29 Thread David Spickett via lldb-commits
@@ -2014,6 +2014,45 @@ read packet: $9c010040e5010040fe010040# supported by the [WAMR](https://github.com/bytecodealliance/wasm-micro-runtime) and [V8](https://v8.dev) Wasm runtimes. +## qWasmGlobal + +Get the value of a Wasm global variable for the gi

[Lldb-commits] [lldb] [lldb] Implement RegisterContextWasm (PR #151056)

2025-07-29 Thread David Spickett via lldb-commits
@@ -131,3 +131,64 @@ ProcessWasm::GetWasmCallStack(lldb::tid_t tid) { return call_stack_pcs; } + +llvm::Expected ProcessWasm::GetWasmLocal(int frame_index, DavidSpickett wrote: This feels like the same code with 3 different qWhatever. Can it be made into a

[Lldb-commits] [lldb] [lldb] Implement RegisterContextWasm (PR #151056)

2025-07-29 Thread David Spickett via lldb-commits
@@ -2014,6 +2014,45 @@ read packet: $9c010040e5010040fe010040# supported by the [WAMR](https://github.com/bytecodealliance/wasm-micro-runtime) and [V8](https://v8.dev) Wasm runtimes. +## qWasmGlobal DavidSpickett wrote: Add a subtitle

[Lldb-commits] [lldb] [lldb] Implement RegisterContextWasm (PR #151056)

2025-07-29 Thread David Spickett via lldb-commits
@@ -0,0 +1,128 @@ +//===--===// +// +// 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: Apa

[Lldb-commits] [lldb] [lldb] Implement RegisterContextWasm (PR #151056)

2025-07-29 Thread David Spickett via lldb-commits
@@ -2014,6 +2014,45 @@ read packet: $9c010040e5010040fe010040# supported by the [WAMR](https://github.com/bytecodealliance/wasm-micro-runtime) and [V8](https://v8.dev) Wasm runtimes. +## qWasmGlobal + +Get the value of a Wasm global variable for the gi

[Lldb-commits] [lldb] [lldb] Implement RegisterContextWasm (PR #151056)

2025-07-29 Thread David Spickett via lldb-commits
@@ -2014,6 +2014,45 @@ read packet: $9c010040e5010040fe010040# supported by the [WAMR](https://github.com/bytecodealliance/wasm-micro-runtime) and [V8](https://v8.dev) Wasm runtimes. +## qWasmGlobal + +Get the value of a Wasm global variable for the gi

[Lldb-commits] [lldb] [lldb] Implement RegisterContextWasm (PR #151056)

2025-07-29 Thread David Spickett via lldb-commits
@@ -2014,6 +2014,45 @@ read packet: $9c010040e5010040fe010040# supported by the [WAMR](https://github.com/bytecodealliance/wasm-micro-runtime) and [V8](https://v8.dev) Wasm runtimes. +## qWasmGlobal + +Get the value of a Wasm global variable for the gi

[Lldb-commits] [lldb] [lldb] Implement RegisterContextWasm (PR #151056)

2025-07-29 Thread David Spickett via lldb-commits
@@ -2014,6 +2014,45 @@ read packet: $9c010040e5010040fe010040# supported by the [WAMR](https://github.com/bytecodealliance/wasm-micro-runtime) and [V8](https://v8.dev) Wasm runtimes. +## qWasmGlobal + +Get the value of a Wasm global variable for the gi

[Lldb-commits] [lldb] [lldb] Implement RegisterContextWasm (PR #151056)

2025-07-29 Thread David Spickett via lldb-commits
@@ -2014,6 +2014,45 @@ read packet: $9c010040e5010040fe010040# supported by the [WAMR](https://github.com/bytecodealliance/wasm-micro-runtime) and [V8](https://v8.dev) Wasm runtimes. +## qWasmGlobal + +Get the value of a Wasm global variable for the gi

[Lldb-commits] [lldb] [lldb] Implement RegisterContextWasm (PR #151056)

2025-07-29 Thread David Spickett via lldb-commits
@@ -2014,6 +2014,45 @@ read packet: $9c010040e5010040fe010040# supported by the [WAMR](https://github.com/bytecodealliance/wasm-micro-runtime) and [V8](https://v8.dev) Wasm runtimes. +## qWasmGlobal + +Get the value of a Wasm global variable for the gi

[Lldb-commits] [lldb] [lldb] Implement RegisterContextWasm (PR #151056)

2025-07-29 Thread David Spickett via lldb-commits
@@ -0,0 +1,228 @@ +--- !WASM DavidSpickett wrote: In one of the test 3 files here, you need to explain how this was generated. I see a C file, do you compile that to Wasm with DWARF debug enabled? https://github.com/llvm/llvm-project/pull/151056 ___

[Lldb-commits] [lldb] [lldb] Implement RegisterContextWasm (PR #151056)

2025-07-29 Thread David Spickett via lldb-commits
@@ -2014,6 +2014,45 @@ read packet: $9c010040e5010040fe010040# supported by the [WAMR](https://github.com/bytecodealliance/wasm-micro-runtime) and [V8](https://v8.dev) Wasm runtimes. +## qWasmGlobal + +Get the value of a Wasm global variable for the gi

[Lldb-commits] [lldb] [lldb] Implement RegisterContextWasm (PR #151056)

2025-07-29 Thread David Spickett via lldb-commits
@@ -0,0 +1,128 @@ +//===--===// +// +// 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: Apa

[Lldb-commits] [lldb] [lldb] Implement RegisterContextWasm (PR #151056)

2025-07-29 Thread David Spickett via lldb-commits
https://github.com/DavidSpickett edited https://github.com/llvm/llvm-project/pull/151056 ___ lldb-commits mailing list lldb-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits

[Lldb-commits] [lldb] [lldb] Implement RegisterContextWasm (PR #151056)

2025-07-29 Thread David Spickett via lldb-commits
@@ -131,3 +131,64 @@ ProcessWasm::GetWasmCallStack(lldb::tid_t tid) { return call_stack_pcs; } + +llvm::Expected ProcessWasm::GetWasmLocal(int frame_index, DavidSpickett wrote: DoGetWasmValue maybe. It's private so the name is not that important. https://g

[Lldb-commits] [lldb] [lldb] Implement RegisterContextWasm (PR #151056)

2025-07-29 Thread David Spickett via lldb-commits
https://github.com/DavidSpickett commented: Looks to be a stacked PR, so I just looked at the last commit. https://github.com/llvm/llvm-project/pull/151056 ___ lldb-commits mailing list lldb-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman

[Lldb-commits] [lldb] [lldb] Support DW_OP_WASM_location in DWARFExpression (PR #151010)

2025-07-29 Thread David Spickett via lldb-commits
@@ -2300,9 +2301,40 @@ llvm::Expected DWARFExpression::Evaluate( break; } +case DW_OP_WASM_location: { + uint8_t wasm_op = opcodes.GetU8(&offset); + uint32_t index; + + /* LLDB doesn't have an address space to represents WebAssembly locals, +

[Lldb-commits] [lldb] [lldb] Support DW_OP_WASM_location in DWARFExpression (PR #151010)

2025-07-29 Thread David Spickett via lldb-commits
@@ -2300,9 +2301,40 @@ llvm::Expected DWARFExpression::Evaluate( break; } +case DW_OP_WASM_location: { + uint8_t wasm_op = opcodes.GetU8(&offset); + uint32_t index; + + /* LLDB doesn't have an address space to represents WebAssembly locals, +

[Lldb-commits] [lldb] [lldb] Support DW_OP_WASM_location in DWARFExpression (PR #151010)

2025-07-29 Thread David Spickett via lldb-commits
@@ -0,0 +1,78 @@ +//===--===// +// +// 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: Apac

[Lldb-commits] [lldb] [lldb] Support DW_OP_WASM_location in DWARFExpression (PR #151010)

2025-07-29 Thread David Spickett via lldb-commits
@@ -18,27 +21,114 @@ #include "lldb/Core/dwarf.h" #include "lldb/Host/HostInfo.h" #include "lldb/Symbol/ObjectFile.h" +#include "lldb/Target/RegisterContext.h" +#include "lldb/Utility/RegisterValue.h" #include "lldb/Utility/StreamString.h" #include "llvm/ADT/StringExtras.h"

[Lldb-commits] [lldb] [lldb] Support DW_OP_WASM_location in DWARFExpression (PR #151010)

2025-07-29 Thread David Spickett via lldb-commits
@@ -0,0 +1,78 @@ +//===--===// +// +// 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: Apac

[Lldb-commits] [lldb] [lldb] Support DW_OP_WASM_location in DWARFExpression (PR #151010)

2025-07-29 Thread David Spickett via lldb-commits
@@ -2300,9 +2301,40 @@ llvm::Expected DWARFExpression::Evaluate( break; } +case DW_OP_WASM_location: { + uint8_t wasm_op = opcodes.GetU8(&offset); + uint32_t index; + + /* LLDB doesn't have an address space to represents WebAssembly locals, +

[Lldb-commits] [lldb] [lldb] Support DW_OP_WASM_location in DWARFExpression (PR #151010)

2025-07-29 Thread David Spickett via lldb-commits
@@ -667,138 +736,331 @@ static auto testExpressionVendorExtensions(lldb::ModuleSP module_sp, TEST(DWARFExpression, Extensions) { const char *yamldata = R"( !ELF +--- !WASM FileHeader: - Class: ELFCLASS64 - Data:ELFDATA2LSB - Type:ET_EXEC - Machine: EM_38

[Lldb-commits] [lldb] [lldb] Support DW_OP_WASM_location in DWARFExpression (PR #151010)

2025-07-29 Thread David Spickett via lldb-commits
@@ -2300,9 +2301,40 @@ llvm::Expected DWARFExpression::Evaluate( break; } +case DW_OP_WASM_location: { + uint8_t wasm_op = opcodes.GetU8(&offset); + uint32_t index; + + /* LLDB doesn't have an address space to represents WebAssembly locals, +

[Lldb-commits] [lldb] [lldb] Support DW_OP_WASM_location in DWARFExpression (PR #151010)

2025-07-29 Thread David Spickett via lldb-commits
@@ -18,27 +21,114 @@ #include "lldb/Core/dwarf.h" #include "lldb/Host/HostInfo.h" #include "lldb/Symbol/ObjectFile.h" +#include "lldb/Target/RegisterContext.h" +#include "lldb/Utility/RegisterValue.h" #include "lldb/Utility/StreamString.h" #include "llvm/ADT/StringExtras.h"

[Lldb-commits] [lldb] [lldb] Support DW_OP_WASM_location in DWARFExpression (PR #151010)

2025-07-29 Thread David Spickett via lldb-commits
@@ -2300,9 +2301,40 @@ llvm::Expected DWARFExpression::Evaluate( break; } +case DW_OP_WASM_location: { + uint8_t wasm_op = opcodes.GetU8(&offset); + uint32_t index; DavidSpickett wrote: Init this to 0. In theory it doesn't make a diff

  1   2   >