@@ -1798,6 +1805,13 @@ DWARFASTParserClang::ParseStructureLikeDIE(const
SymbolContext &sc,
}
if (def_die) {
+if (auto [it, inserted] = dwarf->GetDIEToType().try_emplace(
ZequanWu wrote:
This part seems unnecessary as `UniqueDWARFASTType` map already
https://github.com/ZequanWu approved this pull request.
https://github.com/llvm/llvm-project/pull/96751
___
lldb-commits mailing list
lldb-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits
https://github.com/ZequanWu approved this pull request.
https://github.com/llvm/llvm-project/pull/96755
___
lldb-commits mailing list
lldb-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits
https://github.com/ZequanWu created
https://github.com/llvm/llvm-project/pull/98237
Use `--match-full-lines` with FileCheck. Otherwise, the checks for `int` and
`unsigned int` will match to the fields inside two `CustomType`s and FileCheck
will start scanning from there, causing string not fou
ZequanWu wrote:
This also failed for me on Linux. I sent a fix at
https://github.com/llvm/llvm-project/pull/98237 which also enables it on
windows.
https://github.com/llvm/llvm-project/pull/96800
___
lldb-commits mailing list
lldb-commits@lists.llvm.
https://github.com/ZequanWu created
https://github.com/llvm/llvm-project/pull/98361
This is a reapply of https://github.com/llvm/llvm-project/pull/92328 and
https://github.com/llvm/llvm-project/pull/93839.
It now passes the
[test](https://github.com/llvm/llvm-project/commit/de3f1b6d68ab8a0e82
@@ -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
https://github.com/ZequanWu updated
https://github.com/llvm/llvm-project/pull/98361
>From 37b6878b9125c314c75053f7d5b0ba520111e9a3 Mon Sep 17 00:00:00 2001
From: Zequan Wu
Date: Tue, 9 Jul 2024 15:28:19 -0700
Subject: [PATCH 1/2] Reapply [lldb][DWARF] Delay struct/class/union definition
DIE se
@@ -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
https://github.com/ZequanWu updated
https://github.com/llvm/llvm-project/pull/98361
>From 37b6878b9125c314c75053f7d5b0ba520111e9a3 Mon Sep 17 00:00:00 2001
From: Zequan Wu
Date: Tue, 9 Jul 2024 15:28:19 -0700
Subject: [PATCH 1/3] Reapply [lldb][DWARF] Delay struct/class/union definition
DIE se
@@ -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)
@@ -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)
@@ -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
ZequanWu wrote:
Added another set of
@@ -824,6 +824,36 @@ DWARFASTParserClang::GetDIEClassTemplateParams(const
DWARFDIE &die) {
return {};
}
+void DWARFASTParserClang::MappingDeclDIEToDefDIE(
ZequanWu wrote:
Done.
https://github.com/llvm/llvm-project/pull/98361
__
@@ -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
@@ -1603,41 +1633,76 @@ DWARFASTParserClang::GetCPlusPlusQualifiedName(const
DWARFDIE &die) {
TypeSP
DWARFASTParserClang::ParseStructureLikeDIE(const SymbolContext &sc,
- const DWARFDIE &decl_die,
+
https://github.com/ZequanWu updated
https://github.com/llvm/llvm-project/pull/98361
>From 37b6878b9125c314c75053f7d5b0ba520111e9a3 Mon Sep 17 00:00:00 2001
From: Zequan Wu
Date: Tue, 9 Jul 2024 15:28:19 -0700
Subject: [PATCH 1/4] Reapply [lldb][DWARF] Delay struct/class/union definition
DIE se
https://github.com/ZequanWu updated
https://github.com/llvm/llvm-project/pull/98361
>From 37b6878b9125c314c75053f7d5b0ba520111e9a3 Mon Sep 17 00:00:00 2001
From: Zequan Wu
Date: Tue, 9 Jul 2024 15:28:19 -0700
Subject: [PATCH 1/5] Reapply [lldb][DWARF] Delay struct/class/union definition
DIE se
@@ -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
@@ -1659,128 +1709,56 @@ DWARFASTParserClang::ParseStructureLikeDIE(const
SymbolContext &sc,
default_accessibility = eAccessPrivate;
}
- if (attrs.byte_size && *attrs.byte_size == 0 && attrs.name &&
- !decl_die.HasChildren() && cu_language == eLanguageTypeObjC) {
ZequanWu wrote:
This buildkite seems got stuck somehow, no logging at all:
https://buildkite.com/llvm-project/github-pull-requests/builds/81790#0190bca9-bde7-4fad-8478-9dffd4f669f7.
Will merge without waiting for it to finish.
https://github.com/llvm/llvm-project/pull/98361
___
https://github.com/ZequanWu closed
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
ZequanWu wrote:
> I was able to reproduce the failure of these three:
>
> lldb-api :: lang/c/forward/TestForwardDeclaration.py
> lldb-api :: lang/cpp/unique-types3/TestUniqueTypes3.py
> lldb-api :: types/TestRecursiveTypes.py
>
> locally. Reverting this patch and
> https://github.com/llvm/llvm-
ZequanWu wrote:
> your commit deleted that file I think, I added it back when I did the revert
> (possibly a mistake)... It passes on my macOS system but is failing on
> Ubuntu after the revert. I think I'll just disable it for now.
This change adds the new test, so deleting it as part of th
ZequanWu wrote:
> Reverting those two commits seems to have caused this build failure on Ubuntu:
You forgot the delete the newly added test
SymbolFile/DWARF/delayed-definition-die-searching.test in the reverting:
https://github.com/llvm/llvm-project/commit/37b8e5feb1d065a7c474e6595bac6d2f65fae
ZequanWu wrote:
I had a fix to this: Let `SymbolFileDWARF::GetForwardDeclCompilerTypeToDIE` do
the same as `SymbolFileDWARF::GetUniqueDWARFASTTypeMap`: inquery
SymbolFileDWARFDebugMap first to get the shared underlying SymbolFile so the
map is shared among multiple SymbolFileDWARF. It's here:
ZequanWu wrote:
It actually still crashes at the same place even without this PR using the
following command, you can try it on trunk:
```
$ rm -rf lldb/test/API/commands/expression/import-std-module/lldb-api/*
$ out/cmake/bin/lldb-dotest
--lldb-module-cache-dir=out/cmake/lldb-test-build.noinde
https://github.com/ZequanWu created
https://github.com/llvm/llvm-project/pull/92328
This reapplies
https://github.com/llvm/llvm-project/commit/9a7262c2601874e5aa64c5db19746770212d4b44
and
https://github.com/llvm/llvm-project/commit/a7eff59f78f08f8ef0487dfe2a136fb311af4fd0
with a fix.
It was
ZequanWu wrote:
The second commit is the fix.
https://github.com/llvm/llvm-project/pull/92328
___
lldb-commits mailing list
lldb-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits
https://github.com/ZequanWu edited
https://github.com/llvm/llvm-project/pull/92328
___
lldb-commits mailing list
lldb-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits
@@ -2306,6 +2345,11 @@ bool DWARFASTParserClang::CompleteTypeFromDWARF(const
DWARFDIE &die,
if (!die)
return false;
+ ParsedDWARFTypeAttributes attrs(die);
ZequanWu wrote:
This extra check was added in https://github.com/llvm/llvm-project/pull/91799
@@ -321,6 +326,10 @@ class SymbolFileDWARFDebugMap : public SymbolFileCommon {
std::vector m_func_indexes; // Sorted by address
std::vector m_glob_indexes;
std::map>, OSOInfoSP>
m_oso_map;
+ // A map from CompilerType to the struct/class/union/enum DIE (might be a
+ //
@@ -2306,6 +2345,11 @@ bool DWARFASTParserClang::CompleteTypeFromDWARF(const
DWARFDIE &die,
if (!die)
return false;
+ ParsedDWARFTypeAttributes attrs(die);
ZequanWu wrote:
The parsing happens every time when constructing this object, which makes it a
https://github.com/ZequanWu edited
https://github.com/llvm/llvm-project/pull/92328
___
lldb-commits mailing list
lldb-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits
@@ -2306,6 +2345,11 @@ bool DWARFASTParserClang::CompleteTypeFromDWARF(const
DWARFDIE &die,
if (!die)
return false;
+ ParsedDWARFTypeAttributes attrs(die);
ZequanWu wrote:
> How exactly do we get here in that case?
>From https://github.com/llvm/llvm-
@@ -2306,6 +2345,11 @@ bool DWARFASTParserClang::CompleteTypeFromDWARF(const
DWARFDIE &die,
if (!die)
return false;
+ ParsedDWARFTypeAttributes attrs(die);
ZequanWu wrote:
> Why don't those cases lead to a crash? For example, what would happen if the
@@ -2306,6 +2345,11 @@ bool DWARFASTParserClang::CompleteTypeFromDWARF(const
DWARFDIE &die,
if (!die)
return false;
+ ParsedDWARFTypeAttributes attrs(die);
ZequanWu wrote:
> The reason why this crash does not happen when attempting to complete a type
Author: Zequan Wu
Date: 2024-05-28T11:12:21-04:00
New Revision: cde1ae4c14eecd47215f04d4387845231021d939
URL:
https://github.com/llvm/llvm-project/commit/cde1ae4c14eecd47215f04d4387845231021d939
DIFF:
https://github.com/llvm/llvm-project/commit/cde1ae4c14eecd47215f04d4387845231021d939.diff
LOG
https://github.com/ZequanWu updated
https://github.com/llvm/llvm-project/pull/92328
>From d6de8d9a8bc709b5c4761e9a05f9befede938734 Mon Sep 17 00:00:00 2001
From: Zequan Wu
Date: Wed, 15 May 2024 13:58:42 -0400
Subject: [PATCH 1/3] Reapply [lldb][DWARF] Delay struct/class/union definition
DIE s
ZequanWu wrote:
I removed the checking for DW_AT_declaration attributes when completing type
from a DIE and applied https://github.com/llvm/llvm-project/pull/91808 to here
to ensure we always have a definition DIE at that point.
https://github.com/llvm/llvm-project/pull/92328
https://github.com/ZequanWu updated
https://github.com/llvm/llvm-project/pull/92328
>From d6de8d9a8bc709b5c4761e9a05f9befede938734 Mon Sep 17 00:00:00 2001
From: Zequan Wu
Date: Wed, 15 May 2024 13:58:42 -0400
Subject: [PATCH 1/4] Reapply [lldb][DWARF] Delay struct/class/union definition
DIE s
ZequanWu wrote:
Discussed with Pavel, I applied this change to
https://github.com/llvm/llvm-project/pull/92328/ so we can ensure the DIEs from
the index is always definition DIEs and avoid duplicate/expensive checks later.
https://github.com/llvm/llvm-project/pull/91808
___
https://github.com/ZequanWu edited
https://github.com/llvm/llvm-project/pull/92328
___
lldb-commits mailing list
lldb-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits
https://github.com/ZequanWu closed
https://github.com/llvm/llvm-project/pull/92328
___
lldb-commits mailing list
lldb-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits
https://github.com/ZequanWu created
https://github.com/llvm/llvm-project/pull/93839
This fixes
https://github.com/llvm/llvm-project/pull/92328#issuecomment-2139339444.
This contains two fixes:
1. Do not differentiate `DW_TAG_class_type` and `DW_TAG_structure_type` in
`UniqueDWARFASTTypeList`,
ZequanWu wrote:
For this specific case, we could fix it by making `DW_TAG_structure_type`
equals to `DW_TAG_class_type` in the `UniqueDWARFASTTypeList::Find`.
There's few things I noticed with this:
1. If `DW_TAG_structure_type` and `DW_TAG_class_type` are interchangeable, then
this compariso
@@ -13,12 +13,18 @@
using namespace lldb_private::dwarf;
using namespace lldb_private::plugin::dwarf;
+static bool IsStructOrClassTag(llvm::dwarf::Tag Tag) {
ZequanWu wrote:
It's here:
https://github.com/llvm/llvm-project/blob/ed35a92c404650b15a79ff38bcaff41
@@ -2232,6 +2232,11 @@ bool DWARFASTParserClang::CompleteRecordType(const
DWARFDIE &die,
// For objective C we don't start the definition when the class is
// created.
TypeSystemClang::StartTagDeclarationDefinition(clang_type);
+} else if (!clang_type.IsB
@@ -2232,6 +2232,11 @@ bool DWARFASTParserClang::CompleteRecordType(const
DWARFDIE &die,
// For objective C we don't start the definition when the class is
// created.
TypeSystemClang::StartTagDeclarationDefinition(clang_type);
+} else if (!clang_type.IsB
https://github.com/ZequanWu updated
https://github.com/llvm/llvm-project/pull/93839
>From 90cbcf8a97fb2e7c5131ac2cb601b95fe7a331c6 Mon Sep 17 00:00:00 2001
From: Zequan Wu
Date: Thu, 30 May 2024 11:36:10 -0400
Subject: [PATCH 1/2] [lldb][DWARF] Do not differentiate DW_TAG_class_type and
DW_TAG
@@ -13,12 +13,18 @@
using namespace lldb_private::dwarf;
using namespace lldb_private::plugin::dwarf;
+static bool IsStructOrClassTag(llvm::dwarf::Tag Tag) {
ZequanWu wrote:
Yeah, we can probably do it in a different change.
https://github.com/llvm/llvm-proj
https://github.com/ZequanWu updated
https://github.com/llvm/llvm-project/pull/93839
>From 90cbcf8a97fb2e7c5131ac2cb601b95fe7a331c6 Mon Sep 17 00:00:00 2001
From: Zequan Wu
Date: Thu, 30 May 2024 11:36:10 -0400
Subject: [PATCH 1/3] [lldb][DWARF] Do not differentiate DW_TAG_class_type and
DW_TAG
https://github.com/ZequanWu updated
https://github.com/llvm/llvm-project/pull/93839
>From 90cbcf8a97fb2e7c5131ac2cb601b95fe7a331c6 Mon Sep 17 00:00:00 2001
From: Zequan Wu
Date: Thu, 30 May 2024 11:36:10 -0400
Subject: [PATCH 1/4] [lldb][DWARF] Do not differentiate DW_TAG_class_type and
DW_TAG
https://github.com/ZequanWu edited
https://github.com/llvm/llvm-project/pull/93839
___
lldb-commits mailing list
lldb-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits
https://github.com/ZequanWu closed
https://github.com/llvm/llvm-project/pull/93839
___
lldb-commits mailing list
lldb-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits
ZequanWu wrote:
> You can repro this by running ./bin/lldb-dotest -p
> TestConstStaticIntegralMember.py --dwarf-version 5
>
> Could you take a look @ZequanWu ?
It should be fixed by the following. We just need to skip the declaration DIEs
that are struct/class/union. This failure you see is ca
@@ -897,32 +895,39 @@ TypeSP DWARFASTParserClang::ParseEnum(const SymbolContext
&sc,
}
CompilerType clang_type = m_ast.CreateEnumerationType(
- attrs.name.GetStringRef(), GetClangDeclContextContainingDIE(die,
nullptr),
- GetOwningClangModule(die), attrs.decl, e
@@ -4082,6 +4084,260 @@ void request__testGetTargetBreakpoints(const
llvm::json::Object &request) {
g_dap.SendJSON(llvm::json::Value(std::move(response)));
}
+// "SetInstructionBreakpointsRequest" : {
+// "allOf" : [
+// {"$ref" : "#/definitions/Request"}, {
+//
@@ -766,6 +766,102 @@ llvm::json::Value CreateStackFrame(lldb::SBFrame &frame) {
return llvm::json::Value(std::move(object));
}
+// Response to `setInstructionBreakpoints` request.
+// "Breakpoint": {
+// "type": "object",
+// "description": "Response to `setInstructionB
ZequanWu wrote:
Ping.
https://github.com/llvm/llvm-project/pull/69493
___
lldb-commits mailing list
lldb-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits
ZequanWu wrote:
> Can you break up all the changes to tests that replace
> `-debug-info-correlate` with `--profile-correlate=debug-info` into a separate
> PR to reduce the size of this PR?
Done.
https://github.com/llvm/llvm-project/pull/69493
___
ll
@@ -702,6 +708,8 @@ serializeValueProfDataFrom(ValueProfRecordClosure *Closure,
#define INSTR_PROF_COVMAP_COMMON __llvm_covmap
#define INSTR_PROF_COVFUN_COMMON __llvm_covfun
#define INSTR_PROF_ORDERFILE_COMMON __llvm_orderfile
ZequanWu wrote:
Done.
https://gi
@@ -1829,6 +1833,22 @@ void CoverageMappingModuleGen::emit() {
llvm::GlobalValue::InternalLinkage, NamesArrVal,
llvm::getCoverageUnusedNamesVarName());
}
+ const StringRef VarName(INSTR_PROF_QUOTE(INSTR_PROF_RAW_VERSI
@@ -1829,6 +1833,22 @@ void CoverageMappingModuleGen::emit() {
llvm::GlobalValue::InternalLinkage, NamesArrVal,
llvm::getCoverageUnusedNamesVarName());
}
+ const StringRef VarName(INSTR_PROF_QUOTE(INSTR_PROF_RAW_VERSI
@@ -0,0 +1,9 @@
+// RUN: %clang_cc1 -fprofile-instrument=clang -fcoverage-mapping -emit-llvm
-o - %s | FileCheck %s
+// RUN: %clang_cc1 -mllvm -profile-correlate=binary -fprofile-instrument=clang
-fcoverage-mapping -emit-llvm -o - %s | FileCheck %s
--check-prefix=BIN-CORRELATE
https://github.com/ZequanWu closed
https://github.com/llvm/llvm-project/pull/69493
___
lldb-commits mailing list
lldb-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits
ZequanWu wrote:
> Seems like a mismatch on the diff, so maybe the check is too stringent.
>
> If this will take a while to fix, would you mind reverting until it can be
> addressed?
It passed for me locally on x64. Maybe I should use `diff <(llvm-profdata show
--all-functions --counts %t.norm
ZequanWu wrote:
> Well, seems like someone broke ToT w/ a compiler error. I'll let you know if
> the forward fix fails to address the issue.
The latest build passed:
https://luci-milo.appspot.com/ui/p/fuchsia/builders/toolchain.ci/clang-linux-x64/b8761696377585255057/overview.
https://github.
Author: Zequan Wu
Date: 2024-01-04T12:32:40-05:00
New Revision: 4004f655ceb9623608ba0471aa7037c142956e31
URL:
https://github.com/llvm/llvm-project/commit/4004f655ceb9623608ba0471aa7037c142956e31
DIFF:
https://github.com/llvm/llvm-project/commit/4004f655ceb9623608ba0471aa7037c142956e31.diff
LOG
ZequanWu wrote:
Ping.
https://github.com/llvm/llvm-project/pull/81909
___
lldb-commits mailing list
lldb-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits
https://github.com/ZequanWu closed
https://github.com/llvm/llvm-project/pull/81909
___
lldb-commits mailing list
lldb-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits
https://github.com/ZequanWu closed
https://github.com/llvm/llvm-project/pull/81680
___
lldb-commits mailing list
lldb-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits
https://github.com/ZequanWu approved this pull request.
https://github.com/llvm/llvm-project/pull/83162
___
lldb-commits mailing list
lldb-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits
https://github.com/ZequanWu created
https://github.com/llvm/llvm-project/pull/83192
If a SetDataBreakpointsRequest contains a list data breakpoints which have
duplicate starting addresses, the current behaviour is returning `{verified:
true}` to both watchpoints with duplicated starting addres
https://github.com/ZequanWu closed
https://github.com/llvm/llvm-project/pull/83192
___
lldb-commits mailing list
lldb-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits
https://github.com/ZequanWu created
https://github.com/llvm/llvm-project/pull/86568
`ParseLineTable` not only parses .debug_line but also constructs `LineTable`.
This moves `m_parse_time` into the the function body of `ParseLLVMLineTable` to
more accurately reflect parsing time on .debug_line.
@@ -1228,10 +1231,9 @@ bool SymbolFileDWARF::ParseLineTable(CompileUnit
&comp_unit) {
if (offset == DW_INVALID_OFFSET)
return false;
- ElapsedTime elapsed(m_parse_time);
ZequanWu wrote:
My understanding is m_parse_time is the time spent only on parsin
https://github.com/ZequanWu updated
https://github.com/llvm/llvm-project/pull/86568
>From 19dd9a13c21d70b42b9d68aed6fb0b5a5e494685 Mon Sep 17 00:00:00 2001
From: Zequan Wu
Date: Mon, 25 Mar 2024 15:49:42 -0400
Subject: [PATCH 1/2] [lldb][Dwarf] Fix dwarf parse time for line table and
.debug_ab
https://github.com/ZequanWu edited
https://github.com/llvm/llvm-project/pull/86568
___
lldb-commits mailing list
lldb-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits
https://github.com/ZequanWu edited
https://github.com/llvm/llvm-project/pull/86568
___
lldb-commits mailing list
lldb-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits
https://github.com/ZequanWu closed
https://github.com/llvm/llvm-project/pull/86568
___
lldb-commits mailing list
lldb-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits
https://github.com/ZequanWu created
https://github.com/llvm/llvm-project/pull/88792
If user sets a breakpoint at `_dl_debug_state` before the process launched, the
breakpoint is not resolved yet. When lldb loads dynamic loader module, it's
created with `Target::GetOrCreateModule` which notifie
ZequanWu wrote:
> why not just call ModulesDidLoad and delegate this (and possibly other
> binary-just-loaded) behaviors to it?
That's what I did first, but it breaks the test
`TestModuleLoadedNotifys.ModuleLoadedNotifysTestCase.test_launch_notifications`
because of extra broadcaster event. S
ZequanWu wrote:
> I'm missing why the _dl_debug_state breakpoint is special here, such that it
> requires a force load of the section info? How does that happen?
Jason's comment explains it well. It's because ld.so's loading is special here.
Normal binaries are loaded via `DynamicLoaderPOSIXDY
https://github.com/ZequanWu updated
https://github.com/llvm/llvm-project/pull/88792
>From 26528cd679478448edf446e0e82e5f207ffd6113 Mon Sep 17 00:00:00 2001
From: Zequan Wu
Date: Mon, 15 Apr 2024 16:30:38 -0400
Subject: [PATCH 1/2] [lldb][DynamicLoader] Fix lldb unable to stop at
_dl_debug_stat
https://github.com/ZequanWu updated
https://github.com/llvm/llvm-project/pull/88792
>From 26528cd679478448edf446e0e82e5f207ffd6113 Mon Sep 17 00:00:00 2001
From: Zequan Wu
Date: Mon, 15 Apr 2024 16:30:38 -0400
Subject: [PATCH 1/3] [lldb][DynamicLoader] Fix lldb unable to stop at
_dl_debug_stat
ZequanWu wrote:
> > > why not just call ModulesDidLoad and delegate this (and possibly other
> > > binary-just-loaded) behaviors to it?
> >
> >
> > That's what I did first, but it breaks the test
> > `TestModuleLoadedNotifys.ModuleLoadedNotifysTestCase.test_launch_notifications`
> > because
ZequanWu wrote:
> Can you check where does the second event get sent from? Is it by any chance
> when we go through
> [this](https://github.com/llvm/llvm-project/blob/main/lldb/source/Plugins/DynamicLoader/POSIX-DYLD/DynamicLoaderPOSIXDYLD.cpp#L460)
> place ?
The first event is sent when crea
https://github.com/ZequanWu updated
https://github.com/llvm/llvm-project/pull/88792
>From 26528cd679478448edf446e0e82e5f207ffd6113 Mon Sep 17 00:00:00 2001
From: Zequan Wu
Date: Mon, 15 Apr 2024 16:30:38 -0400
Subject: [PATCH 1/4] [lldb][DynamicLoader] Fix lldb unable to stop at
_dl_debug_stat
ZequanWu wrote:
> So, could the fix be as simple as passing notify=false in the first call ?
Yeah, absolutely. Updated.
https://github.com/llvm/llvm-project/pull/88792
___
lldb-commits mailing list
lldb-commits@lists.llvm.org
https://lists.llvm.org/cg
https://github.com/ZequanWu updated
https://github.com/llvm/llvm-project/pull/88792
>From 26528cd679478448edf446e0e82e5f207ffd6113 Mon Sep 17 00:00:00 2001
From: Zequan Wu
Date: Mon, 15 Apr 2024 16:30:38 -0400
Subject: [PATCH 1/5] [lldb][DynamicLoader] Fix lldb unable to stop at
_dl_debug_stat
@@ -572,9 +572,14 @@ ModuleSP DynamicLoaderPOSIXDYLD::LoadInterpreterModule() {
ModuleSpec module_spec(file, target.GetArchitecture());
if (ModuleSP module_sp = target.GetOrCreateModule(module_spec,
-true /* notify */)) {
https://github.com/ZequanWu closed
https://github.com/llvm/llvm-project/pull/88792
___
lldb-commits mailing list
lldb-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits
ZequanWu wrote:
Ping.
https://github.com/llvm/llvm-project/pull/87649
___
lldb-commits mailing list
lldb-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits
Author: Zequan Wu
Date: 2024-04-18T10:40:35-04:00
New Revision: a1e7c83af11ee111994ec19029494e6e9ea97dbd
URL:
https://github.com/llvm/llvm-project/commit/a1e7c83af11ee111994ec19029494e6e9ea97dbd
DIFF:
https://github.com/llvm/llvm-project/commit/a1e7c83af11ee111994ec19029494e6e9ea97dbd.diff
LOG
Author: Zequan Wu
Date: 2024-04-18T11:13:17-04:00
New Revision: d3993ac1890731d2b24543646961c95680788207
URL:
https://github.com/llvm/llvm-project/commit/d3993ac1890731d2b24543646961c95680788207
DIFF:
https://github.com/llvm/llvm-project/commit/d3993ac1890731d2b24543646961c95680788207.diff
LOG
https://github.com/ZequanWu created
https://github.com/llvm/llvm-project/pull/89427
This removes `m_forward_decl_die_to_compiler_type` which is a map from `const
DWARFDebugInfoEntry *` to `lldb::opaque_compiler_type_t`. This map is currently
used in `DWARFASTParserClang::ParseEnum` and
`DWARF
https://github.com/ZequanWu edited
https://github.com/llvm/llvm-project/pull/89427
___
lldb-commits mailing list
lldb-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits
https://github.com/ZequanWu closed
https://github.com/llvm/llvm-project/pull/89427
___
lldb-commits mailing list
lldb-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits
https://github.com/ZequanWu created
https://github.com/llvm/llvm-project/pull/90663
This is the implementation for
https://discourse.llvm.org/t/rfc-delay-definition-die-searching-when-parse-a-declaration-die-for-record-type/78526.
Motivation
Currently, lldb eagerly searches for definition
1 - 100 of 381 matches
Mail list logo