[Lldb-commits] [lldb] [lldb] Refactor TypeQuery::ContextMatches (PR #99305)

2024-07-18 Thread Pavel Labath via lldb-commits
labath wrote: > LGTM (left some minor questions) > > I've also recently bumped into the issue of `FindTypes`/`FindNamespace`/etc. > failing to find matches due to presence of `(anonymous namespace)` entries in > the context, so thanks for fixing that We're not there yet. :) https://github.co

[Lldb-commits] [lldb] [lldb] Refactor TypeQuery::ContextMatches (PR #99305)

2024-07-18 Thread Pavel Labath via lldb-commits
@@ -153,19 +127,89 @@ void TypeQuery::SetLanguages(LanguageSet languages) { bool TypeQuery::ContextMatches( llvm::ArrayRef context_chain) const { - if (GetExactMatch() || context_chain.size() == m_context.size()) -return ::contextMatches(context_chain, m_context); - -

[Lldb-commits] [lldb] [LLDB][test] Update Makefile.rules to support Windows host+Linux target (PR #99266)

2024-07-17 Thread Pavel Labath via lldb-commits
@@ -56,15 +57,12 @@ LLDB_BASE_DIR := $(THIS_FILE_DIR)/../../../../../ # inherited all the way down to the process spawned for make. #-- ifeq "$(HOST_OS)" "" - HOST_OS := $(shell uname -s) -endif - -ifneq (,$(f

[Lldb-commits] [lldb] [LLDB][test] Update Makefile.rules to support Windows host+Linux target (PR #99266)

2024-07-17 Thread Pavel Labath via lldb-commits
@@ -296,11 +313,13 @@ endif CFLAGS += $(CFLAGS_EXTRAS) CXXFLAGS += -std=c++11 $(CFLAGS) $(ARCH_CXXFLAGS) LD = $(CC) -LDFLAGS ?= $(CFLAGS) +# Copy common options to the linker flags (dwarf, arch. & etc). +#Note: we get some 'garbage' options for linker here (such as -I, --isyste

[Lldb-commits] [lldb] [LLDB][test] Update Makefile.rules to support Windows host+Linux target (PR #99266)

2024-07-17 Thread Pavel Labath via lldb-commits
https://github.com/labath commented: It may be better to split this into smaller patches, given the fragility of this code. (Basically, one patch for each of your bullet points). Also, can you elaborate on this part? > Paths are turned into POSIX-style since some tests and Unix utilities use

[Lldb-commits] [lldb] [LLDB][test] Update Makefile.rules to support Windows host+Linux target (PR #99266)

2024-07-17 Thread Pavel Labath via lldb-commits
@@ -432,18 +468,18 @@ ifeq (1,$(USE_LIBCPP)) ifneq "$(LIBCPP_INCLUDE_TARGET_DIR)" "" CXXFLAGS += -cxx-isystem $(LIBCPP_INCLUDE_TARGET_DIR) endif - LDFLAGS += -L$(LIBCPP_LIBRARY_DIR) -Wl,-rpath,$(LIBCPP

[Lldb-commits] [lldb] [LLDB][test] Update Makefile.rules to support Windows host+Linux target (PR #99266)

2024-07-17 Thread Pavel Labath via lldb-commits
@@ -296,11 +313,13 @@ endif CFLAGS += $(CFLAGS_EXTRAS) CXXFLAGS += -std=c++11 $(CFLAGS) $(ARCH_CXXFLAGS) LD = $(CC) -LDFLAGS ?= $(CFLAGS) +# Copy common options to the linker flags (dwarf, arch. & etc). +#Note: we get some 'garbage' options for linker here (such as -I, --isyste

[Lldb-commits] [lldb] [LLDB][test] Update Makefile.rules to support Windows host+Linux target (PR #99266)

2024-07-17 Thread Pavel Labath via lldb-commits
@@ -80,9 +78,21 @@ endif # Also reset BUILDDIR value because "pwd" returns cygwin or msys path # which needs to be converted to windows path. #-- -ifeq "$(OS)" "Windows_NT" - SHELL = $(WINDIR)\system32\cm

[Lldb-commits] [lldb] [LLDB][test] Update Makefile.rules to support Windows host+Linux target (PR #99266)

2024-07-17 Thread Pavel Labath via lldb-commits
@@ -418,11 +437,28 @@ ifeq (1, $(USE_SYSTEM_STDLIB)) endif endif +# No C++ library has been specifieed. Use libstdc++ by default. +ifeq (,$(filter 1, $(USE_LIBSTDCPP) $(USE_LIBCPP) $(USE_SYSTEM_STDLIB))) + # If no explicit request was made, but we have paths to a custo

[Lldb-commits] [lldb] [LLDB][test] Update Makefile.rules to support Windows host+Linux target (PR #99266)

2024-07-17 Thread Pavel Labath via lldb-commits
@@ -263,9 +280,9 @@ CFLAGS += $(NO_LIMIT_DEBUG_INFO_FLAGS) $(ARCH_CFLAGS) # Use this one if you want to build one part of the result without debug information: ifeq "$(OS)" "Darwin" - CFLAGS_NO_DEBUG = -O0 $(ARCHFLAG) $(ARCH) $(FRAMEWORK_INCLUDES) $(ARCH_CFLAGS) $(CFLA

[Lldb-commits] [lldb] [LLDB][test] Update Makefile.rules to support Windows host+Linux target (PR #99266)

2024-07-17 Thread Pavel Labath via lldb-commits
@@ -456,21 +492,15 @@ ifeq (1, $(USE_SYSTEM_STDLIB)) endif CXXFLAGS += -nostdlib++ -nostdinc++ -cxx-isystem $(SDKROOT)/usr/include/c++/v1 LDFLAGS += -L$(SDKROOT)/usr/lib -Wl,-rpath,$(SDKROOT)/usr/lib -lc++ +else +ifneq (,$(findstring clang,$

[Lldb-commits] [lldb] [LLDB][test] Update Makefile.rules to support Windows host+Linux target (PR #99266)

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

[Lldb-commits] [lldb] [lldb] Refactor TypeQuery::ContextMatches (PR #99305)

2024-07-17 Thread Pavel Labath via lldb-commits
https://github.com/labath created https://github.com/llvm/llvm-project/pull/99305 This is a preparatory step for teaching the function about anonymous namespaces. It started out as a way to remove the assumption that the pattern and target contexts must be of the same length -- that's will not

[Lldb-commits] [lldb] [lldb] change .sbss section type to eSectionTypeZeroFill (PR #99044)

2024-07-16 Thread Pavel Labath via lldb-commits
https://github.com/labath commented: I'm wondering if there's a more fundamental fix to be made here. Like perhaps treating treating any allocatable SHT_NOBITS section as ZeroFill. Basically to add `case SHT_NOBITS: if (H.sh_flags & SHF_ALLOC) return eSectionTypeZeroFill;` to `GetSectionType`

[Lldb-commits] [lldb] Fix test assertions in TestDAP_stepInTargets.py (PR #96687)

2024-07-16 Thread Pavel Labath via lldb-commits
https://github.com/labath closed https://github.com/llvm/llvm-project/pull/96687 ___ lldb-commits mailing list lldb-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits

[Lldb-commits] [lldb] Fix test assertions in TestDAP_stepInTargets.py (PR #96687)

2024-07-16 Thread Pavel Labath via lldb-commits
@@ -10,9 +10,10 @@ class TestDAP_stepInTargets(lldbdap_testcase.DAPTestCaseBase): -@skipIf( -archs=no_match(["x86_64"]) -) # InstructionControlFlowKind for ARM is not supported yet. +@skipIf +# InstructionControlFlowKind for ARM is not supported yet.

[Lldb-commits] [lldb] Reapply [lldb][DWARF] Delay struct/class/union definition DIE searching when parsing declaration DIEs. (PR #98361)

2024-07-16 Thread Pavel Labath via lldb-commits
@@ -1595,49 +1627,67 @@ DWARFASTParserClang::GetCPlusPlusQualifiedName(const DWARFDIE &die) { if (qualified_name.empty()) qualified_name.append("::"); - qualified_name.append(name); + qualified_name.append(unique_typename.GetCString()); qualified_name.append(GetDIE

[Lldb-commits] [lldb] Reapply [lldb][DWARF] Delay struct/class/union definition DIE searching when parsing declaration DIEs. (PR #98361)

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

[Lldb-commits] [lldb] Reapply [lldb][DWARF] Delay struct/class/union definition DIE searching when parsing declaration DIEs. (PR #98361)

2024-07-16 Thread Pavel Labath via lldb-commits
https://github.com/labath approved this pull request. Looks good. Third time's the charm. https://github.com/llvm/llvm-project/pull/98361 ___ lldb-commits mailing list lldb-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-com

[Lldb-commits] [lldb] [LLDB] Make 'process load' take remote os path delimiter into account (PR #98690)

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

[Lldb-commits] [lldb] [API] add GetSyntheticValue (PR #95959)

2024-07-15 Thread Pavel Labath via lldb-commits
https://github.com/labath closed https://github.com/llvm/llvm-project/pull/95959 ___ lldb-commits mailing list lldb-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits

[Lldb-commits] [lldb] [LLDB] Make 'process load' take remote os path delimiter into account (PR #98690)

2024-07-15 Thread Pavel Labath via lldb-commits
@@ -405,8 +405,11 @@ def run_step_over_load(self): # We can't find a breakpoint location for d_init before launching because # executable dependencies are resolved relative to the debuggers PWD. Bug? +# The remote lldb server resolves the executable dependencies co

[Lldb-commits] [lldb] Reapply [lldb][DWARF] Delay struct/class/union definition DIE searching when parsing declaration DIEs. (PR #98361)

2024-07-15 Thread Pavel Labath via lldb-commits
@@ -824,6 +824,36 @@ DWARFASTParserClang::GetDIEClassTemplateParams(const DWARFDIE &die) { return {}; } +void DWARFASTParserClang::MappingDeclDIEToDefDIE( +const lldb_private::plugin::dwarf::DWARFDIE &decl_die, +const lldb_private::plugin::dwarf::DWARFDIE &def_die)

[Lldb-commits] [lldb] Fix test assertions in TestDAP_stepInTargets.py (PR #96687)

2024-07-15 Thread Pavel Labath via lldb-commits
@@ -10,9 +10,10 @@ class TestDAP_stepInTargets(lldbdap_testcase.DAPTestCaseBase): -@skipIf( -archs=no_match(["x86_64"]) -) # InstructionControlFlowKind for ARM is not supported yet. +@skipIf +# InstructionControlFlowKind for ARM is not supported yet.

[Lldb-commits] [lldb] [lldb][test] Add a layout simulator test for std::unique_ptr (PR #98330)

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

[Lldb-commits] [lldb] [lldb][riscv] Fix setting breakpoint for undecoded instruction (PR #90075)

2024-07-15 Thread Pavel Labath via lldb-commits
https://github.com/labath approved this pull request. Thanks for pinging this. Sorry it dropped off my radar. https://github.com/llvm/llvm-project/pull/90075 ___ lldb-commits mailing list lldb-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailm

[Lldb-commits] [lldb] Reapply [lldb][DWARF] Delay struct/class/union definition DIE searching when parsing declaration DIEs. (PR #98361)

2024-07-11 Thread Pavel Labath via lldb-commits
@@ -1603,41 +1633,76 @@ DWARFASTParserClang::GetCPlusPlusQualifiedName(const DWARFDIE &die) { TypeSP DWARFASTParserClang::ParseStructureLikeDIE(const SymbolContext &sc, - const DWARFDIE &decl_die, +

[Lldb-commits] [lldb] Reapply [lldb][DWARF] Delay struct/class/union definition DIE searching when parsing declaration DIEs. (PR #98361)

2024-07-11 Thread Pavel Labath via lldb-commits
@@ -824,6 +824,36 @@ DWARFASTParserClang::GetDIEClassTemplateParams(const DWARFDIE &die) { return {}; } +void DWARFASTParserClang::MappingDeclDIEToDefDIE( +const lldb_private::plugin::dwarf::DWARFDIE &decl_die, +const lldb_private::plugin::dwarf::DWARFDIE &def_die)

[Lldb-commits] [lldb] Reapply [lldb][DWARF] Delay struct/class/union definition DIE searching when parsing declaration DIEs. (PR #98361)

2024-07-11 Thread Pavel Labath via lldb-commits
@@ -4,8 +4,8 @@ // REQUIRES: lld -// RUN: %clang --target=x86_64-pc-linux -c %s -o %t-a.o -g -gsimple-template-names -DFILE_A -// RUN: %clang --target=x86_64-pc-linux -c %s -o %t-b.o -g -gsimple-template-names -DFILE_B labath wrote: We should keep the exis

[Lldb-commits] [lldb] Reapply [lldb][DWARF] Delay struct/class/union definition DIE searching when parsing declaration DIEs. (PR #98361)

2024-07-11 Thread Pavel Labath via lldb-commits
@@ -824,6 +824,36 @@ DWARFASTParserClang::GetDIEClassTemplateParams(const DWARFDIE &die) { return {}; } +void DWARFASTParserClang::MappingDeclDIEToDefDIE( labath wrote: nit: Maybe you're reading this another way, but this name does not sound like a verb p

[Lldb-commits] [lldb] Reapply [lldb][DWARF] Delay struct/class/union definition DIE searching when parsing declaration DIEs. (PR #98361)

2024-07-11 Thread Pavel Labath via lldb-commits
https://github.com/labath commented: Thanks. I think this looks pretty good now, just a couple of details to sort out. https://github.com/llvm/llvm-project/pull/98361 ___ lldb-commits mailing list lldb-commits@lists.llvm.org https://lists.llvm.org/cgi

[Lldb-commits] [lldb] Reapply [lldb][DWARF] Delay struct/class/union definition DIE searching when parsing declaration DIEs. (PR #98361)

2024-07-11 Thread Pavel Labath via lldb-commits
@@ -824,6 +824,36 @@ DWARFASTParserClang::GetDIEClassTemplateParams(const DWARFDIE &die) { return {}; } +void DWARFASTParserClang::MappingDeclDIEToDefDIE( +const lldb_private::plugin::dwarf::DWARFDIE &decl_die, +const lldb_private::plugin::dwarf::DWARFDIE &def_die)

[Lldb-commits] [lldb] Reapply [lldb][DWARF] Delay struct/class/union definition DIE searching when parsing declaration DIEs. (PR #98361)

2024-07-11 Thread Pavel Labath via lldb-commits
@@ -1631,27 +1638,49 @@ bool SymbolFileDWARF::CompleteType(CompilerType &compiler_type) { return true; } - DWARFDIE dwarf_die = GetDIE(die_it->getSecond()); - if (dwarf_die) { -// Once we start resolving this type, remove it from the forward -// declaration ma

[Lldb-commits] [lldb] Reapply [lldb][DWARF] Delay struct/class/union definition DIE searching when parsing declaration DIEs. (PR #98361)

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

[Lldb-commits] [lldb] Reapply [lldb][DWARF] Delay struct/class/union definition DIE searching when parsing declaration DIEs. (PR #98361)

2024-07-11 Thread Pavel Labath via lldb-commits
@@ -1631,26 +1638,48 @@ bool SymbolFileDWARF::CompleteType(CompilerType &compiler_type) { return true; } - DWARFDIE dwarf_die = GetDIE(die_it->getSecond()); - if (dwarf_die) { -// Once we start resolving this type, remove it from the forward -// declaration ma

[Lldb-commits] [lldb] [lldb] Fix ThreadList assignment race (PR #98293)

2024-07-11 Thread Pavel Labath via lldb-commits
https://github.com/labath closed https://github.com/llvm/llvm-project/pull/98293 ___ lldb-commits mailing list lldb-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits

[Lldb-commits] [lldb] [lldb] Fix ThreadList assignment race (PR #98293)

2024-07-11 Thread Pavel Labath via lldb-commits
labath wrote: > LGTM. > > As a nice to have, maybe add a short explanation to the first mutex > explaining that these operations are only allowed between thread lists > belonging to the same process. Your current comment makes it sound as if that > only applies _if_ the processes are the same

[Lldb-commits] [lldb] [lldb] Fix ThreadList assignment race (PR #98293)

2024-07-11 Thread Pavel Labath via lldb-commits
https://github.com/labath updated https://github.com/llvm/llvm-project/pull/98293 >From 0a594fea0a5db3ebc8de74edbcd051cbac911697 Mon Sep 17 00:00:00 2001 From: Pavel Labath Date: Wed, 10 Jul 2024 04:06:42 +0200 Subject: [PATCH 1/2] [lldb] Fix ThreadList assignment race ThreadList uses the Proc

[Lldb-commits] [lldb] [lldb] Support new libc++ __compressed_pair layout (PR #96538)

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

[Lldb-commits] [lldb] [lldb] Support new libc++ __compressed_pair layout (PR #96538)

2024-07-11 Thread Pavel Labath via lldb-commits
@@ -254,6 +256,29 @@ lldb_private::formatters::LibcxxStdMapSyntheticFrontEnd:: Update(); } +llvm::Expected +lldb_private::formatters::LibcxxStdMapSyntheticFrontEnd:: +CalculateNumChildrenForOldCompressedPairLayout() { + ValueObjectSP node_sp(m_tree->GetChildMemberWith

[Lldb-commits] [lldb] [lldb] Support new libc++ __compressed_pair layout (PR #96538)

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

[Lldb-commits] [lldb] [WIP][lldb][test] Add a layout simulator test for std::unique_ptr (PR #98330)

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

[Lldb-commits] [lldb] [WIP][lldb][test] Add a layout simulator test for std::unique_ptr (PR #98330)

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

[Lldb-commits] [lldb] [WIP][lldb][test] Add a layout simulator test for std::unique_ptr (PR #98330)

2024-07-11 Thread Pavel Labath via lldb-commits
@@ -0,0 +1,89 @@ +#ifndef STD_LLDB_COMPRESSED_PAIR_H +#define STD_LLDB_COMPRESSED_PAIR_H + +#include <__memory/compressed_pair.h> +#include + +namespace std { +namespace __lldb { + +#if COMPRESSED_PAIR_REV == 0 // Post-c88580c layout +struct __value_init_tag {}; +struct __default

[Lldb-commits] [lldb] [WIP][lldb][test] Add a layout simulator test for std::unique_ptr (PR #98330)

2024-07-11 Thread Pavel Labath via lldb-commits
@@ -0,0 +1,89 @@ +#ifndef STD_LLDB_COMPRESSED_PAIR_H +#define STD_LLDB_COMPRESSED_PAIR_H + +#include <__memory/compressed_pair.h> +#include + +namespace std { +namespace __lldb { + +#if COMPRESSED_PAIR_REV == 0 // Post-c88580c layout +struct __value_init_tag {}; +struct __default

[Lldb-commits] [lldb] [WIP][lldb][test] Add a layout simulator test for std::unique_ptr (PR #98330)

2024-07-11 Thread Pavel Labath via lldb-commits
@@ -0,0 +1,43 @@ +#include "../compressed_pair.h" labath wrote: We have some common includes in `packages/Python/lldbsuite/test/make/`. I think it'd be better to put this there (probably in a subdirectory) https://github.com/llvm/llvm-project/pull/98330 ___

[Lldb-commits] [lldb] [WIP][lldb][test] Add a layout simulator test for std::unique_ptr (PR #98330)

2024-07-11 Thread Pavel Labath via lldb-commits
https://github.com/labath commented: I'm like this approach. It can be a lot of work, so we may not be able to get every contributor to do this, but I'd certainly encourage everyone to try. https://github.com/llvm/llvm-project/pull/98330 ___ lldb-comm

[Lldb-commits] [lldb] [WIP][lldb][test] Add a layout simulator test for std::unique_ptr (PR #98330)

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

[Lldb-commits] [lldb] [lldb] Add support for displaying `__float128` variables (PR #98369)

2024-07-11 Thread Pavel Labath via lldb-commits
@@ -170,6 +170,10 @@ enum Format { eFormatHex, eFormatHexUppercase, eFormatFloat, + eFormatFloat128, //< Disambiguate between 128-bit `long double` (which uses labath wrote: This list should be appended to at the end to preserve the values of existing

[Lldb-commits] [lldb] [lldb] Add support for displaying `__float128` variables (PR #98369)

2024-07-11 Thread Pavel Labath via lldb-commits
@@ -334,6 +334,8 @@ static const llvm::fltSemantics &GetFloatSemantics(const TargetSP &target_sp, return llvm::APFloat::IEEEsingle(); case 8: return llvm::APFloat::IEEEdouble(); +case 16: + return llvm::APFloat::IEEEquad(); labath wrot

[Lldb-commits] [lldb] [lldb] Add support for displaying `__float128` variables (PR #98369)

2024-07-11 Thread Pavel Labath via lldb-commits
@@ -819,6 +823,7 @@ enum BasicType { eBasicTypeFloat, eBasicTypeDouble, eBasicTypeLongDouble, + eBasicTypeFloat128, labath wrote: The same goes here, although apparently https://reviews.llvm.org/D120690 has snuck through and nobody noticed. https://gi

[Lldb-commits] [lldb] [lldb] Fix a bug for PT_TLS segments getting loaded when they shouldn't. (PR #98432)

2024-07-11 Thread Pavel Labath via lldb-commits
https://github.com/labath approved this pull request. LGTM. Coincidentally, I was just working on a bug where this was (a part of) the problem. :) https://github.com/llvm/llvm-project/pull/98432 ___ lldb-commits mailing list lldb-commits@lists.llvm.or

[Lldb-commits] [lldb] [lldb] Fix ThreadList assignment race (PR #98293)

2024-07-11 Thread Pavel Labath via lldb-commits
@@ -27,12 +27,13 @@ class ThreadList : public ThreadCollection { friend class Process; public: - ThreadList(Process *process); + ThreadList(Process &process); ThreadList(const ThreadList &rhs); ~ThreadList() override; + // Precondition: both thread lists must

[Lldb-commits] [lldb] [lldb] Fix ThreadList assignment race (PR #98293)

2024-07-11 Thread Pavel Labath via lldb-commits
@@ -736,11 +734,12 @@ void ThreadList::NotifySelectedThreadChanged(lldb::tid_t tid) { void ThreadList::Update(ThreadList &rhs) { if (this != &rhs) { -// Lock both mutexes to make sure neither side changes anyone on us while -// the assignment occurs -std::scoped

[Lldb-commits] [lldb] [lldb] Fix ThreadList assignment race (PR #98293)

2024-07-10 Thread Pavel Labath via lldb-commits
labath wrote: Previous attempt to fix this issue: https://reviews.llvm.org/D158034 https://github.com/llvm/llvm-project/pull/98293 ___ lldb-commits mailing list lldb-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits

[Lldb-commits] [lldb] [lldb] Fix ThreadList assignment race (PR #98293)

2024-07-10 Thread Pavel Labath via lldb-commits
https://github.com/labath created https://github.com/llvm/llvm-project/pull/98293 ThreadList uses the Process mutex to guard its state. This means its not possible to safely modify its process member, as the member is required to lock the mutex. Fortunately for us, we never actually need to c

[Lldb-commits] [lldb] 14ba847 - [lldb] Bump timeouts in TestCallWithTimeout

2024-07-10 Thread Pavel Labath via lldb-commits
Author: Pavel Labath Date: 2024-07-10T09:36:26Z New Revision: 14ba847d273a0defe0f4617bcfe9e1b2163e2bbc URL: https://github.com/llvm/llvm-project/commit/14ba847d273a0defe0f4617bcfe9e1b2163e2bbc DIFF: https://github.com/llvm/llvm-project/commit/14ba847d273a0defe0f4617bcfe9e1b2163e2bbc.diff LOG:

[Lldb-commits] [lldb] [LLDB] Add AST node classes, functions, etc. for Data Inspection Lang… (PR #95738)

2024-07-09 Thread Pavel Labath via lldb-commits
@@ -0,0 +1,446 @@ +//===-- DILAST.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: Ap

[Lldb-commits] [lldb] [lldb] Small cleanup of ProcessEventData::ShouldStop (PR #98154)

2024-07-09 Thread Pavel Labath via lldb-commits
https://github.com/labath closed https://github.com/llvm/llvm-project/pull/98154 ___ lldb-commits mailing list lldb-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits

[Lldb-commits] [lldb] [lldb] Small cleanup of ProcessEventData::ShouldStop (PR #98154)

2024-07-09 Thread Pavel Labath via lldb-commits
@@ -4194,8 +4188,7 @@ bool Process::ProcessEventData::ShouldStop(Event *event_ptr, // is, and it's better to let the user decide than continue behind their // backs. - for (idx = 0; idx < not_suspended_thread_list.GetSize(); ++idx) { -curr_thread_list = process_sp->G

[Lldb-commits] [lldb] [lldb] Small cleanup of ProcessEventData::ShouldStop (PR #98154)

2024-07-09 Thread Pavel Labath via lldb-commits
https://github.com/labath updated https://github.com/llvm/llvm-project/pull/98154 >From 27d419b047d0c2e95978b8c88dd84641aae423f2 Mon Sep 17 00:00:00 2001 From: Pavel Labath Date: Tue, 9 Jul 2024 15:00:05 +0200 Subject: [PATCH] [lldb] Small cleanup of ProcessEventData::ShouldStop While looking

[Lldb-commits] [lldb] [lldb][test] Set target OS for API tests in case of remote testing (PR #96654)

2024-07-09 Thread Pavel Labath via lldb-commits
https://github.com/labath approved this pull request. Thank you. https://github.com/llvm/llvm-project/pull/96654 ___ lldb-commits mailing list lldb-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits

[Lldb-commits] [lldb] [lldb] Small cleanup of ProcessEventData::ShouldStop (PR #98154)

2024-07-09 Thread Pavel Labath via lldb-commits
https://github.com/labath created https://github.com/llvm/llvm-project/pull/98154 While looking at a TSAN report (patch coming soon) in the ThreadList class, I noticed that this code would be simpler if it did not use the ThreadList class. >From 2e74468a99015645f1abbfdf42f6e5c9893e7cf3 Mon Sep

[Lldb-commits] [lldb] [lldb][test] Set target OS for API tests in case of remote testing (PR #96654)

2024-07-09 Thread Pavel Labath via lldb-commits
@@ -113,6 +130,10 @@ def _get_platform_os(p): platform = "openbsd" return platform +# Triple is not available if we're not connected yet +if p.GetName() == "remote-linux": +return "linux" + labath wrote: Yes, I would very m

[Lldb-commits] [lldb] [lldb] Use correct path separator for C++ library files lookup (PR #98144)

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

[Lldb-commits] [lldb] [lldb][test] Set target OS for API tests in case of remote testing (PR #96654)

2024-07-09 Thread Pavel Labath via lldb-commits
@@ -113,6 +130,10 @@ def _get_platform_os(p): platform = "openbsd" return platform +# Triple is not available if we're not connected yet +if p.GetName() == "remote-linux": +return "linux" + labath wrote: Can you explain why

[Lldb-commits] [lldb] [LLDB] Add AST node classes, functions, etc. for Data Inspection Lang… (PR #95738)

2024-07-09 Thread Pavel Labath via lldb-commits
@@ -0,0 +1,446 @@ +//===-- DILAST.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: Ap

[Lldb-commits] [lldb] [LLDB] Add AST node classes, functions, etc. for Data Inspection Lang… (PR #95738)

2024-07-09 Thread Pavel Labath via lldb-commits
@@ -0,0 +1,446 @@ +//===-- DILAST.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: Ap

[Lldb-commits] [lldb] [LLDB] Add AST node classes, functions, etc. for Data Inspection Lang… (PR #95738)

2024-07-09 Thread Pavel Labath via lldb-commits
@@ -0,0 +1,468 @@ +//===-- DILAST.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] [lldb] [LLDB] Add AST node classes, functions, etc. for Data Inspection Lang… (PR #95738)

2024-07-09 Thread Pavel Labath via lldb-commits
@@ -0,0 +1,446 @@ +//===-- DILAST.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: Ap

[Lldb-commits] [lldb] [LLDB] Add AST node classes, functions, etc. for Data Inspection Lang… (PR #95738)

2024-07-09 Thread Pavel Labath via lldb-commits
@@ -0,0 +1,446 @@ +//===-- DILAST.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: Ap

[Lldb-commits] [lldb] [LLDB] Add AST node classes, functions, etc. for Data Inspection Lang… (PR #95738)

2024-07-09 Thread Pavel Labath via lldb-commits
@@ -0,0 +1,446 @@ +//===-- DILAST.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: Ap

[Lldb-commits] [lldb] [LLDB] Add AST node classes, functions, etc. for Data Inspection Lang… (PR #95738)

2024-07-09 Thread Pavel Labath via lldb-commits
@@ -0,0 +1,43 @@ +(* LLDB Debug Expressions, a subset of C++ *) +(* Insired by https://www.nongnu.org/hcb *) + +expression = cast_expression; + +cast_expression = unary_expression; + +unary_expression = postfix_expression + | unary_operator cast_expression; + +unar

[Lldb-commits] [lldb] [LLDB] Add AST node classes, functions, etc. for Data Inspection Lang… (PR #95738)

2024-07-09 Thread Pavel Labath via lldb-commits
@@ -0,0 +1,446 @@ +//===-- DILAST.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: Ap

[Lldb-commits] [lldb] [LLDB] Add AST node classes, functions, etc. for Data Inspection Lang… (PR #95738)

2024-07-09 Thread Pavel Labath via lldb-commits
@@ -0,0 +1,446 @@ +//===-- DILAST.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: Ap

[Lldb-commits] [lldb] [LLDB] Add AST node classes, functions, etc. for Data Inspection Lang… (PR #95738)

2024-07-09 Thread Pavel Labath via lldb-commits
@@ -0,0 +1,43 @@ +(* LLDB Debug Expressions, a subset of C++ *) +(* Insired by https://www.nongnu.org/hcb *) + +expression = cast_expression; + +cast_expression = unary_expression; + +unary_expression = postfix_expression + | unary_operator cast_expression; + +unar

[Lldb-commits] [lldb] [LLDB] Add AST node classes, functions, etc. for Data Inspection Lang… (PR #95738)

2024-07-09 Thread Pavel Labath via lldb-commits
@@ -0,0 +1,446 @@ +//===-- DILAST.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: Ap

[Lldb-commits] [lldb] [LLDB] Add AST node classes, functions, etc. for Data Inspection Lang… (PR #95738)

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

[Lldb-commits] [lldb] [LLDB] Add AST node classes, functions, etc. for Data Inspection Lang… (PR #95738)

2024-07-09 Thread Pavel Labath via lldb-commits
@@ -0,0 +1,468 @@ +//===-- DILAST.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] [lldb] [LLDB] Add AST node classes, functions, etc. for Data Inspection Lang… (PR #95738)

2024-07-09 Thread Pavel Labath via lldb-commits
@@ -0,0 +1,446 @@ +//===-- DILAST.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: Ap

[Lldb-commits] [lldb] [LLDB] Add AST node classes, functions, etc. for Data Inspection Lang… (PR #95738)

2024-07-09 Thread Pavel Labath via lldb-commits
https://github.com/labath commented: > BTW, I have verified that this stripped down version passes all the frame > variable tests in LLDB. That's cool. Just to confirm, have you looked at replacing `target variable` as well? It uses the same language as "frame var" under the hood, which but i

[Lldb-commits] [lldb] [lldb] Put the new debugger in synchronous mode in TestGlobalModuleCache (PR #98041)

2024-07-09 Thread Pavel Labath via lldb-commits
https://github.com/labath closed https://github.com/llvm/llvm-project/pull/98041 ___ lldb-commits mailing list lldb-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits

[Lldb-commits] [lldb] [lldb] Put the new debugger in synchronous mode in TestGlobalModuleCache (PR #98041)

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

[Lldb-commits] [lldb] [lldb] Put the new debugger in synchronous mode in TestGlobalModuleCache (PR #98041)

2024-07-08 Thread Pavel Labath via lldb-commits
labath wrote: This explains why the `test_OneTargetTwoDebuggers` flavour of the test was crashing. It doesn't explain why would the other two versions crash. However I'm not sure if the other two flavours are indeed crashing (all of the crashes I've seen were in this flavour). https://github.

[Lldb-commits] [lldb] [lldb] Put the new debugger in synchronous mode in TestGlobalModuleCache (PR #98041)

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

[Lldb-commits] [lldb] [lldb] Put the new debugger in synchronous mode in TestGlobalModuleCache (PR #98041)

2024-07-08 Thread Pavel Labath via lldb-commits
https://github.com/labath created https://github.com/llvm/llvm-project/pull/98041 In async mode, the test terminates sooner that it should (`run_to_source_breakpoint` does not work in this mode), and then the test crashes due to #98038. Most of the time, the test does not fail because its alr

[Lldb-commits] [lldb] [llvm] [lldb] [lldb-server] Introduce Host/qnx and NativeProcessQNX (PR #97630)

2024-07-08 Thread Pavel Labath via lldb-commits
@@ -36,10 +38,17 @@ using namespace lldb; using namespace lldb_private; static sig_atomic_t g_signal_flags[NSIG]; +#if defined(__QNX__) +static llvm::DenseMap g_signal_info; labath wrote: This code is definitely not async-signal-safe. However, before you try

[Lldb-commits] [lldb] [llvm] [lldb] [lldb-server] Introduce Host/qnx and NativeProcessQNX (PR #97630)

2024-07-08 Thread Pavel Labath via lldb-commits
@@ -222,6 +232,148 @@ struct ForkLaunchInfo { // End of code running in the child process. +#if defined(__QNX__) +static ::pid_t PosixSpawn(const ForkLaunchInfo &info, labath wrote: This is basically reimplementing `LaunchProcessPosixSpawn` inside `ProcessL

[Lldb-commits] [lldb] [llvm] [lldb] [lldb-server] Introduce Host/qnx and NativeProcessQNX (PR #97630)

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

[Lldb-commits] [lldb] [llvm] [lldb] [lldb-server] Introduce Host/qnx and NativeProcessQNX (PR #97630)

2024-07-08 Thread Pavel Labath via lldb-commits
https://github.com/labath commented: This is only a very light review. I agree with others that an RFC thread is a better place to discuss this. After we sort that out, this patch should be further subdivided into smaller pieces. https://github.com/llvm/llvm-project/pull/97630

[Lldb-commits] [lldb] [llvm] [lldb] [lldb-server] Introduce Host/qnx and NativeProcessQNX (PR #97630)

2024-07-08 Thread Pavel Labath via lldb-commits
@@ -35,6 +39,10 @@ #include #endif +#if !defined(EOK) labath wrote: Everything else just uses zero (`0`) as "no error". I don't see a reason for this code to be different. https://github.com/llvm/llvm-project/pull/97630

[Lldb-commits] [lldb] [lldb][test] Set target OS for API tests in case of remote testing (PR #96654)

2024-07-08 Thread Pavel Labath via lldb-commits
@@ -56,6 +56,10 @@ def target_is_android(): return configuration.lldb_platform_name == "remote-android" +def target_is_remote_linux(): +return configuration.lldb_platform_name == "remote-linux" + + labath wrote: I guess this isn't used anymore. http

[Lldb-commits] [lldb] [lldb][test] Set target OS for API tests in case of remote testing (PR #96654)

2024-07-08 Thread Pavel Labath via lldb-commits
@@ -92,11 +96,22 @@ def match_android_device(device_arch, valid_archs=None, valid_api_levels=None): def finalize_build_dictionary(dictionary): +if dictionary is None: +dictionary = {} if target_is_android(): -if dictionary is None: -dicti

[Lldb-commits] [lldb] [lldb][DataFormatter] Simplify std::map formatter (PR #97579)

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

[Lldb-commits] [lldb] [lldb][test] Fix type error when calling random.randrange with 'float' arg (PR #97328)

2024-07-08 Thread Pavel Labath via lldb-commits
https://github.com/labath closed https://github.com/llvm/llvm-project/pull/97328 ___ lldb-commits mailing list lldb-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits

[Lldb-commits] [lldb] [lldb][test] Fix type error when calling random.randrange with 'float' arg (PR #97328)

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

[Lldb-commits] [lldb] Fix flake in TestZerothFrame.py (PR #96685)

2024-07-08 Thread Pavel Labath via lldb-commits
https://github.com/labath closed https://github.com/llvm/llvm-project/pull/96685 ___ lldb-commits mailing list lldb-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits

[Lldb-commits] [lldb] Fix flake in TestZerothFrame.py (PR #96685)

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

[Lldb-commits] [lldb] [lldb][DataFormatter] Simplify std::unordered_map::iterator formatter (PR #97754)

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

[Lldb-commits] [lldb] [lldb][DataFormatter] Simplify std::unordered_map::iterator formatter (PR #97754)

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

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