https://github.com/ZequanWu ready_for_review
https://github.com/llvm/llvm-project/pull/90663
___
lldb-commits mailing list
lldb-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits
https://github.com/ZequanWu updated
https://github.com/llvm/llvm-project/pull/90663
>From 4e83099b593e66f12dc21be5fbac5279e03e Mon Sep 17 00:00:00 2001
From: Zequan Wu
Date: Tue, 30 Apr 2024 16:23:11 -0400
Subject: [PATCH 1/2] [lldb][DWARF] Delay struct/class/union definition DIE
searching
ZequanWu wrote:
> does this cause multiple (an open ended amount?) of declarations for a type
> to be created if the type declarations from multiple CUs are encountered
> separately? Or still only one due to the extra map?
This only creates one even if type declarations are from different CUs.
ZequanWu wrote:
> Hmm - but the byte size wouldn't be known from only a declaration, right? so
> how'd that key work between a declaration and a definition?
For declaration and definition DIEs, we just look at the name. Byte size and
declaration locations are only used as extra info to differe
@@ -1654,6 +1660,99 @@ bool SymbolFileDWARF::CompleteType(CompilerType
&compiler_type) {
return false;
}
+DWARFDIE SymbolFileDWARF::FindDefinitionDIE(const DWARFDIE &die) {
+ auto def_die_it = GetDeclarationDIEToDefinitionDIE().find(die.GetDIE());
+ if (def_die_it != GetD
https://github.com/ZequanWu updated
https://github.com/llvm/llvm-project/pull/90663
>From 4e83099b593e66f12dc21be5fbac5279e03e Mon Sep 17 00:00:00 2001
From: Zequan Wu
Date: Tue, 30 Apr 2024 16:23:11 -0400
Subject: [PATCH 1/3] [lldb][DWARF] Delay struct/class/union definition DIE
searching
@@ -533,9 +540,16 @@ class SymbolFileDWARF : public SymbolFileCommon {
NameToOffsetMap m_function_scope_qualified_name_map;
std::unique_ptr m_ranges;
UniqueDWARFASTTypeMap m_unique_ast_type_map;
+ // A map from DIE to lldb_private::Type. For record type, the key might be
@@ -1654,6 +1660,99 @@ bool SymbolFileDWARF::CompleteType(CompilerType
&compiler_type) {
return false;
}
+DWARFDIE SymbolFileDWARF::FindDefinitionDIE(const DWARFDIE &die) {
+ auto def_die_it = GetDeclarationDIEToDefinitionDIE().find(die.GetDIE());
+ if (def_die_it != GetD
@@ -1631,13 +1631,19 @@ bool SymbolFileDWARF::CompleteType(CompilerType
&compiler_type) {
return true;
}
- DWARFDIE dwarf_die = GetDIE(die_it->getSecond());
+ DWARFDIE dwarf_die = FindDefinitionDIE(GetDIE(die_it->getSecond()));
if (dwarf_die) {
// Once we star
Author: Zequan Wu
Date: 2024-05-02T14:22:03-04:00
New Revision: ee63f287e013ab3424372034d4d5a95512ab5b6b
URL:
https://github.com/llvm/llvm-project/commit/ee63f287e013ab3424372034d4d5a95512ab5b6b
DIFF:
https://github.com/llvm/llvm-project/commit/ee63f287e013ab3424372034d4d5a95512ab5b6b.diff
LOG
https://github.com/ZequanWu updated
https://github.com/llvm/llvm-project/pull/90663
>From 4e83099b593e66f12dc21be5fbac5279e03e Mon Sep 17 00:00:00 2001
From: Zequan Wu
Date: Tue, 30 Apr 2024 16:23:11 -0400
Subject: [PATCH 1/4] [lldb][DWARF] Delay struct/class/union definition DIE
searching
https://github.com/ZequanWu edited
https://github.com/llvm/llvm-project/pull/90663
___
lldb-commits mailing list
lldb-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits
@@ -249,11 +270,10 @@ static void ForcefullyCompleteType(CompilerType type) {
/// This function serves a similar purpose as RequireCompleteType above, but it
/// avoids completing the type if it is not immediately necessary. It only
/// ensures we _can_ complete the type later.
@@ -16,60 +16,65 @@ using namespace lldb_private::plugin::dwarf;
bool UniqueDWARFASTTypeList::Find(const DWARFDIE &die,
const lldb_private::Declaration &decl,
const int32_t byte_size,
+
@@ -1632,6 +1669,96 @@ DWARFASTParserClang::GetCPlusPlusQualifiedName(const
DWARFDIE &die) {
return qualified_name;
}
+bool DWARFASTParserClang::FindDefinitionDIE(const DWARFDIE &die,
+bool &is_forward_declaration) {
-
@@ -1632,6 +1669,96 @@ DWARFASTParserClang::GetCPlusPlusQualifiedName(const
DWARFDIE &die) {
return qualified_name;
}
ZequanWu wrote:
Yes, it does more than finding the DIE. Updated to return `Type*` and renamed
to `FindDefinitionTypeForDIE`.
https://git
https://github.com/ZequanWu commented:
> Though this is mostly meant to be "NFC" (with very large quotes)
Yeah, this is mostly "NFC". A noticeable difference is we now set the type
created from declaration with `TypeSystemClang::SetHasExternalStorage` without
knowing if there's a definition or
@@ -108,6 +108,9 @@ class DWARFASTParserClang : public
lldb_private::plugin::dwarf::DWARFASTParser {
lldb_private::ConstString GetDIEClassTemplateParams(
const lldb_private::plugin::dwarf::DWARFDIE &die) override;
ZequanWu wrote:
Done.
https://github.
@@ -1921,38 +1970,33 @@ DWARFASTParserClang::ParseStructureLikeDIE(const
SymbolContext &sc,
GetClangASTImporter().SetRecordLayout(record_decl, layout);
}
}
-} else if (clang_type_was_created) {
- // Start the definition if the class is not obje
@@ -1921,38 +1970,33 @@ DWARFASTParserClang::ParseStructureLikeDIE(const
SymbolContext &sc,
GetClangASTImporter().SetRecordLayout(record_decl, layout);
}
}
-} else if (clang_type_was_created) {
- // Start the definition if the class is not obje
@@ -60,6 +60,12 @@ class DWARFASTParser {
virtual ConstString GetDIEClassTemplateParams(const DWARFDIE &die) = 0;
+ // Return true if we found the definition DIE for it. is_forward_declaration
+ // is set to true if the parameter die is a declaration.
+ virtual bool
+ F
@@ -1664,13 +1793,40 @@ DWARFASTParserClang::ParseStructureLikeDIE(const
SymbolContext &sc,
}
if (dwarf->GetUniqueDWARFASTTypeMap().Find(
-unique_typename, die, unique_decl, attrs.byte_size.value_or(-1),
-*unique_ast_entry_up)) {
+u
https://github.com/ZequanWu edited
https://github.com/llvm/llvm-project/pull/90663
___
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/90663
___
lldb-commits mailing list
lldb-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits
ZequanWu wrote:
> > > Is any of it testable?
> >
> >
> > Good question. Though this is mostly meant to be "NFC" (with very large
> > quotes), I can imagine us doing something like forcing the parsing of a
> > specific type (`type lookup ` ?), and then checking that the
> > module ast (`image
ZequanWu wrote:
> > > > > Is any of it testable?
> > > >
> > > >
> > > > Good question. Though this is mostly meant to be "NFC" (with very large
> > > > quotes), I can imagine us doing something like forcing the parsing of a
> > > > specific type (`type lookup ` ?), and then checking that the
https://github.com/ZequanWu updated
https://github.com/llvm/llvm-project/pull/90663
>From 4e83099b593e66f12dc21be5fbac5279e03e Mon Sep 17 00:00:00 2001
From: Zequan Wu
Date: Tue, 30 Apr 2024 16:23:11 -0400
Subject: [PATCH 1/5] [lldb][DWARF] Delay struct/class/union definition DIE
searching
https://github.com/ZequanWu closed
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
https://github.com/ZequanWu updated
https://github.com/llvm/llvm-project/pull/90663
>From 4e83099b593e66f12dc21be5fbac5279e03e Mon Sep 17 00:00:00 2001
From: Zequan Wu
Date: Tue, 30 Apr 2024 16:23:11 -0400
Subject: [PATCH 1/6] [lldb][DWARF] Delay struct/class/union definition DIE
searching
@@ -1667,13 +1791,40 @@ DWARFASTParserClang::ParseStructureLikeDIE(const
SymbolContext &sc,
}
if (dwarf->GetUniqueDWARFASTTypeMap().Find(
-unique_typename, die, unique_decl, attrs.byte_size.value_or(-1),
-*unique_ast_entry_up)) {
+u
ZequanWu wrote:
> You could enable logging and check for specific logging after steps. In the
> test I described above if you just print the "Foo *foo" variable, it won't
> need to complete the definition, you could check for logging, and then if you
> print "*foo", then it should complete the
https://github.com/ZequanWu created
https://github.com/llvm/llvm-project/pull/91343
Dwarf 5 says "There is no requirement that the entries be ordered in any
particular way" in 2.17.3 Non-Contiguous Address Ranges for rnglist. Some
places assume the ranges are already sorted but it's not. This
https://github.com/ZequanWu updated
https://github.com/llvm/llvm-project/pull/90663
>From 4e83099b593e66f12dc21be5fbac5279e03e Mon Sep 17 00:00:00 2001
From: Zequan Wu
Date: Tue, 30 Apr 2024 16:23:11 -0400
Subject: [PATCH 1/7] [lldb][DWARF] Delay struct/class/union definition DIE
searching
@@ -0,0 +1,40 @@
+# Test definition DIE searching is delayed until complete type is required.
+
+# RUN: split-file %s %t
+# RUN: %clangxx_host %t/main.cpp %t/t1_def.cpp -g -gsimple-template-names -o
%t.out
+# RUN: %lldb -b %t.out -s %t/lldb.cmd | FileCheck %s
+
+# CHECK: (ll
https://github.com/ZequanWu edited
https://github.com/llvm/llvm-project/pull/90663
___
lldb-commits mailing list
lldb-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits
ZequanWu wrote:
Will leave it open for few days in case anyone has more comments.
https://github.com/llvm/llvm-project/pull/90663
___
lldb-commits mailing list
lldb-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits
ZequanWu wrote:
> > Some places assume the ranges are already sorted but it's not. This fixes
> > it.
>
> What places assumed it was sorted? I assume this means there are some bugs
> that this fixes? Can you give some more details about how you came to write
> this patch?
For example:
https
ZequanWu wrote:
> > For example:
> > https://github.com/llvm/llvm-project/blob/main/lldb/source/Plugins/SymbolFile/DWARF/SymbolFileDWARF.cpp#L922-L927.
> > When parsing function info, it validates low and hi address of the
> > function: `GetMinRangeBase` returns the first range entry base and
https://github.com/ZequanWu updated
https://github.com/llvm/llvm-project/pull/90663
>From 4e83099b593e66f12dc21be5fbac5279e03e Mon Sep 17 00:00:00 2001
From: Zequan Wu
Date: Tue, 30 Apr 2024 16:23:11 -0400
Subject: [PATCH 1/8] [lldb][DWARF] Delay struct/class/union definition DIE
searching
@@ -24,13 +24,16 @@ class UniqueDWARFASTType {
UniqueDWARFASTType() : m_type_sp(), m_die(), m_declaration() {}
UniqueDWARFASTType(lldb::TypeSP &type_sp, const DWARFDIE &die,
- const Declaration &decl, int32_t byte_size)
+ const Decla
@@ -0,0 +1,40 @@
+# Test definition DIE searching is delayed until complete type is required.
+
+# RUN: split-file %s %t
+# RUN: %clangxx_host %t/main.cpp %t/t1_def.cpp -g -gsimple-template-names -o
%t.out
+# RUN: %lldb -b %t.out -s %t/lldb.cmd | FileCheck %s
+
+# CHECK: (ll
https://github.com/ZequanWu edited
https://github.com/llvm/llvm-project/pull/91343
___
lldb-commits mailing list
lldb-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits
@@ -0,0 +1,40 @@
+# Test definition DIE searching is delayed until complete type is required.
+
+# RUN: split-file %s %t
+# RUN: %clangxx_host %t/main.cpp %t/t1_def.cpp -g -gsimple-template-names -o
%t.out
+# RUN: %lldb -b %t.out -s %t/lldb.cmd | FileCheck %s
+
+# CHECK: (ll
@@ -24,13 +24,16 @@ class UniqueDWARFASTType {
UniqueDWARFASTType() : m_type_sp(), m_die(), m_declaration() {}
UniqueDWARFASTType(lldb::TypeSP &type_sp, const DWARFDIE &die,
- const Declaration &decl, int32_t byte_size)
+ const Decla
https://github.com/ZequanWu closed
https://github.com/llvm/llvm-project/pull/91343
___
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/90663
___
lldb-commits mailing list
lldb-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits
ZequanWu wrote:
> So this DIE is just a declaration. Shouldn't this code have tried to find a
> non declaration DIE for "std::ios_base"?
Yes, I suppose `SymbolFileDWARF::CompleteType` will try to find the definition
DIE for it before calling `DWARFASTParserClang::CompleteTypeFromDWARF`. If the
ZequanWu wrote:
> The issue might arise from having a .debug_names table that has DW_IDX_parent
> entries that means that there might be forward declarations included in the
> DWARF index.
Do you mean that the searching in the type index returns a declaration DIE (but
I expected it to always
https://github.com/ZequanWu created
https://github.com/llvm/llvm-project/pull/91799
Fix the problem:
https://github.com/llvm/llvm-project/pull/90663#issuecomment-2105164917 by
enhancing a double-check for #90663
>From 1f6bf890dbfce07b6ab531597e876ab83cfd1298 Mon Sep 17 00:00:00 2001
From: Zeq
ZequanWu wrote:
I sent an alternative fix at https://github.com/llvm/llvm-project/pull/91799.
> The .debug_names spec states that only entries with definitions should be in
> the .debug_names table...
Do it mean the .debug_names is implemented incorrectly?
https://github.com/llvm/llvm-project
ZequanWu wrote:
> To the above function to ensure we don't waste any time trying to parse any
> DIE information for forward declaration when using .debug_names. This will
> cause a TON of churn on our DWARF parser and cause us to pull in and parse
> way too much.
That sounds like a better fix
https://github.com/ZequanWu updated
https://github.com/llvm/llvm-project/pull/91799
>From 1f6bf890dbfce07b6ab531597e876ab83cfd1298 Mon Sep 17 00:00:00 2001
From: Zequan Wu
Date: Fri, 10 May 2024 16:00:22 -0400
Subject: [PATCH 1/2] [lldb][DWARF] Do not complete type from declaration die.
---
l
https://github.com/ZequanWu closed
https://github.com/llvm/llvm-project/pull/91799
___
lldb-commits mailing list
lldb-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits
ZequanWu wrote:
> Could this commit have broken the bots?
> https://green.lab.llvm.org/job/llvm.org/view/LLDB/job/lldb-cmake/1897/
Looks like so, but I cannot repro the test failure locally.
https://github.com/llvm/llvm-project/pull/90663
___
lldb-c
ZequanWu wrote:
> > Could this commit have broken the bots?
> > https://green.lab.llvm.org/job/llvm.org/view/LLDB/job/lldb-cmake/1897/
>
> Looks like so, but I cannot repro the test failure locally.
The error message is different in current latest build
(https://green.lab.llvm.org/job/llvm.or
Author: Zequan Wu
Date: 2021-12-07T10:41:28-08:00
New Revision: a3a8ed33a1d6a5047aae29790e02f3c7955297af
URL:
https://github.com/llvm/llvm-project/commit/a3a8ed33a1d6a5047aae29790e02f3c7955297af
DIFF:
https://github.com/llvm/llvm-project/commit/a3a8ed33a1d6a5047aae29790e02f3c7955297af.diff
LOG
Author: Zequan Wu
Date: 2021-12-22T16:36:56-08:00
New Revision: c3f0e1ea3ef802059e0c2bd60227ea2d83a910ac
URL:
https://github.com/llvm/llvm-project/commit/c3f0e1ea3ef802059e0c2bd60227ea2d83a910ac
DIFF:
https://github.com/llvm/llvm-project/commit/c3f0e1ea3ef802059e0c2bd60227ea2d83a910ac.diff
LOG
Author: Zequan Wu
Date: 2022-01-04T13:50:24-08:00
New Revision: d5b6e30ed3acad794dd0aec400e617daffc6cc3d
URL:
https://github.com/llvm/llvm-project/commit/d5b6e30ed3acad794dd0aec400e617daffc6cc3d
DIFF:
https://github.com/llvm/llvm-project/commit/d5b6e30ed3acad794dd0aec400e617daffc6cc3d.diff
LOG
Author: Zequan Wu
Date: 2022-01-11T16:10:39-08:00
New Revision: 945aa520ef07a3edb655f3f38e4c3023658dd623
URL:
https://github.com/llvm/llvm-project/commit/945aa520ef07a3edb655f3f38e4c3023658dd623
DIFF:
https://github.com/llvm/llvm-project/commit/945aa520ef07a3edb655f3f38e4c3023658dd623.diff
LOG
Author: Zequan Wu
Date: 2022-01-13T14:00:24-08:00
New Revision: f00cd23caed5f920495bcae2055f4c478d8383d6
URL:
https://github.com/llvm/llvm-project/commit/f00cd23caed5f920495bcae2055f4c478d8383d6
DIFF:
https://github.com/llvm/llvm-project/commit/f00cd23caed5f920495bcae2055f4c478d8383d6.diff
LOG
Author: Zequan Wu
Date: 2022-02-02T14:21:08-08:00
New Revision: f3e1ba1d03927a35c23c27c896a13f326f28864a
URL:
https://github.com/llvm/llvm-project/commit/f3e1ba1d03927a35c23c27c896a13f326f28864a
DIFF:
https://github.com/llvm/llvm-project/commit/f3e1ba1d03927a35c23c27c896a13f326f28864a.diff
LOG
Author: Zequan Wu
Date: 2022-02-03T11:27:48-08:00
New Revision: 607ffa5515b9cd9c9c951dacbe4c403b52aa6bdb
URL:
https://github.com/llvm/llvm-project/commit/607ffa5515b9cd9c9c951dacbe4c403b52aa6bdb
DIFF:
https://github.com/llvm/llvm-project/commit/607ffa5515b9cd9c9c951dacbe4c403b52aa6bdb.diff
LOG
Author: Zequan Wu
Date: 2022-02-03T14:12:24-08:00
New Revision: ac73e12ee0ec9b6118def9150d490843047f58e0
URL:
https://github.com/llvm/llvm-project/commit/ac73e12ee0ec9b6118def9150d490843047f58e0
DIFF:
https://github.com/llvm/llvm-project/commit/ac73e12ee0ec9b6118def9150d490843047f58e0.diff
LOG
Author: Zequan Wu
Date: 2022-02-03T15:41:26-08:00
New Revision: 8682947d24e1f623fad30e1261e1a3de59a36f28
URL:
https://github.com/llvm/llvm-project/commit/8682947d24e1f623fad30e1261e1a3de59a36f28
DIFF:
https://github.com/llvm/llvm-project/commit/8682947d24e1f623fad30e1261e1a3de59a36f28.diff
LOG
Author: Zequan Wu
Date: 2022-02-09T13:20:45-08:00
New Revision: 48d889079a8a050bb41defd5688e0b213c1c5655
URL:
https://github.com/llvm/llvm-project/commit/48d889079a8a050bb41defd5688e0b213c1c5655
DIFF:
https://github.com/llvm/llvm-project/commit/48d889079a8a050bb41defd5688e0b213c1c5655.diff
LOG
Author: Zequan Wu
Date: 2022-03-01T13:39:51-08:00
New Revision: 5c9e20d7d0a71439a95875ba6067f9c0fc7a4e04
URL:
https://github.com/llvm/llvm-project/commit/5c9e20d7d0a71439a95875ba6067f9c0fc7a4e04
DIFF:
https://github.com/llvm/llvm-project/commit/5c9e20d7d0a71439a95875ba6067f9c0fc7a4e04.diff
LOG
Author: Zequan Wu
Date: 2022-03-01T14:24:21-08:00
New Revision: b901c404a838400983ece83e25583b42737cfaac
URL:
https://github.com/llvm/llvm-project/commit/b901c404a838400983ece83e25583b42737cfaac
DIFF:
https://github.com/llvm/llvm-project/commit/b901c404a838400983ece83e25583b42737cfaac.diff
LOG
Author: Zequan Wu
Date: 2022-03-02T13:44:19-08:00
New Revision: 15983c28aa819031e08a2b3fe49d02c41839b22c
URL:
https://github.com/llvm/llvm-project/commit/15983c28aa819031e08a2b3fe49d02c41839b22c
DIFF:
https://github.com/llvm/llvm-project/commit/15983c28aa819031e08a2b3fe49d02c41839b22c.diff
LOG
Author: Zequan Wu
Date: 2022-03-02T14:20:14-08:00
New Revision: 302d7179e101ebbf48c386a632828a1150a18769
URL:
https://github.com/llvm/llvm-project/commit/302d7179e101ebbf48c386a632828a1150a18769
DIFF:
https://github.com/llvm/llvm-project/commit/302d7179e101ebbf48c386a632828a1150a18769.diff
LOG
Author: Zequan Wu
Date: 2022-03-04T13:06:15-08:00
New Revision: b31a1b4746c7c806bcc550e877577ec66ea407d9
URL:
https://github.com/llvm/llvm-project/commit/b31a1b4746c7c806bcc550e877577ec66ea407d9
DIFF:
https://github.com/llvm/llvm-project/commit/b31a1b4746c7c806bcc550e877577ec66ea407d9.diff
LOG
Author: Zequan Wu
Date: 2022-03-10T12:40:31-08:00
New Revision: 5e9c9b324a1f7f904b733852d0a05a43e9783cbb
URL:
https://github.com/llvm/llvm-project/commit/5e9c9b324a1f7f904b733852d0a05a43e9783cbb
DIFF:
https://github.com/llvm/llvm-project/commit/5e9c9b324a1f7f904b733852d0a05a43e9783cbb.diff
LOG
Author: Zequan Wu
Date: 2022-06-29T17:18:56-07:00
New Revision: bd2044c108655dc6409e2c724349219d3971b151
URL:
https://github.com/llvm/llvm-project/commit/bd2044c108655dc6409e2c724349219d3971b151
DIFF:
https://github.com/llvm/llvm-project/commit/bd2044c108655dc6409e2c724349219d3971b151.diff
LOG
Author: Zequan Wu
Date: 2022-06-30T14:34:20-07:00
New Revision: 8a790e65f42b27172c40777b0ef2088d9c6df7bb
URL:
https://github.com/llvm/llvm-project/commit/8a790e65f42b27172c40777b0ef2088d9c6df7bb
DIFF:
https://github.com/llvm/llvm-project/commit/8a790e65f42b27172c40777b0ef2088d9c6df7bb.diff
LOG
Author: Zequan Wu
Date: 2022-07-07T10:26:58-07:00
New Revision: 227dffd0b6d78154516ace45f6ed28259c7baa48
URL:
https://github.com/llvm/llvm-project/commit/227dffd0b6d78154516ace45f6ed28259c7baa48
DIFF:
https://github.com/llvm/llvm-project/commit/227dffd0b6d78154516ace45f6ed28259c7baa48.diff
LOG
Author: Zequan Wu
Date: 2022-07-07T15:01:07-07:00
New Revision: 562c3467a6738aa89203f72fc1d1343e5baadf3c
URL:
https://github.com/llvm/llvm-project/commit/562c3467a6738aa89203f72fc1d1343e5baadf3c
DIFF:
https://github.com/llvm/llvm-project/commit/562c3467a6738aa89203f72fc1d1343e5baadf3c.diff
LOG
Author: Zequan Wu
Date: 2022-07-12T10:54:24-07:00
New Revision: b74a01a80b72f581c68d336b0de5ed9757efbaa8
URL:
https://github.com/llvm/llvm-project/commit/b74a01a80b72f581c68d336b0de5ed9757efbaa8
DIFF:
https://github.com/llvm/llvm-project/commit/b74a01a80b72f581c68d336b0de5ed9757efbaa8.diff
LOG
Author: Zequan Wu
Date: 2022-07-19T15:36:35-07:00
New Revision: b8cf916b89d4502569680b8b4cb284db5b7e8c4d
URL:
https://github.com/llvm/llvm-project/commit/b8cf916b89d4502569680b8b4cb284db5b7e8c4d
DIFF:
https://github.com/llvm/llvm-project/commit/b8cf916b89d4502569680b8b4cb284db5b7e8c4d.diff
LOG
Author: Zequan Wu
Date: 2022-08-16T09:59:09-07:00
New Revision: 7ebbef2b303fc1c54950bd9047f79e353ee0129c
URL:
https://github.com/llvm/llvm-project/commit/7ebbef2b303fc1c54950bd9047f79e353ee0129c
DIFF:
https://github.com/llvm/llvm-project/commit/7ebbef2b303fc1c54950bd9047f79e353ee0129c.diff
LOG
Author: Zequan Wu
Date: 2022-08-16T17:01:47-07:00
New Revision: 9fd54cf5c9620504c8c16cf885354b6f9d82f638
URL:
https://github.com/llvm/llvm-project/commit/9fd54cf5c9620504c8c16cf885354b6f9d82f638
DIFF:
https://github.com/llvm/llvm-project/commit/9fd54cf5c9620504c8c16cf885354b6f9d82f638.diff
LOG
Author: Zequan Wu
Date: 2022-08-17T13:37:13-07:00
New Revision: 71d778f33e8615f525f118db351c6541b40199ab
URL:
https://github.com/llvm/llvm-project/commit/71d778f33e8615f525f118db351c6541b40199ab
DIFF:
https://github.com/llvm/llvm-project/commit/71d778f33e8615f525f118db351c6541b40199ab.diff
LOG
Author: Zequan Wu
Date: 2022-08-24T16:00:50-07:00
New Revision: b6d56ddac1bf50d532abdc86a84f9bc8e3e7a266
URL:
https://github.com/llvm/llvm-project/commit/b6d56ddac1bf50d532abdc86a84f9bc8e3e7a266
DIFF:
https://github.com/llvm/llvm-project/commit/b6d56ddac1bf50d532abdc86a84f9bc8e3e7a266.diff
LOG
https://github.com/ZequanWu created
https://github.com/llvm/llvm-project/pull/78210
This allows release teams to customize the bug report url for lldb. It also
removes unnecessary constructions of `llvm::PrettyStackTraceProgram` as it's
already constructed inside `llvm::InitLLVM`.
>From 69623
https://github.com/ZequanWu closed
https://github.com/llvm/llvm-project/pull/78210
___
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/78494
This fixes missing inlined function names when formatting frame and the `Block`
in `SymbolContext` is a lexical block (e.g. `DW_TAG_lexical_block` in Dwarf).
>From dbd04f25ccb37a18b316078df7817a603f007396 Mon S
https://github.com/ZequanWu updated
https://github.com/llvm/llvm-project/pull/78494
>From dbd04f25ccb37a18b316078df7817a603f007396 Mon Sep 17 00:00:00 2001
From: Zequan Wu
Date: Wed, 17 Jan 2024 14:22:01 -0500
Subject: [PATCH 1/3] [lldb][Format] Fix missing inlined function names in
frame form
https://github.com/ZequanWu closed
https://github.com/llvm/llvm-project/pull/78494
___
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/80753
This adds a layer between `SounceBreakpoint`/`FunctionBreakpoint` and
`BreakpointBase` to have better separation and encapsulation so we are not
directly operating on `SBBreakpoint`.
I basically moved the `SB
https://github.com/ZequanWu updated
https://github.com/llvm/llvm-project/pull/80753
>From c4b767909a9ffc2a3015dc9021e4c265da0d877d Mon Sep 17 00:00:00 2001
From: Zequan Wu
Date: Mon, 5 Feb 2024 17:26:48 -0500
Subject: [PATCH 1/2] [lldb-dap][NFC] Add Breakpoint struct to share common
logic.
--
https://github.com/ZequanWu updated
https://github.com/llvm/llvm-project/pull/80753
>From c4b767909a9ffc2a3015dc9021e4c265da0d877d Mon Sep 17 00:00:00 2001
From: Zequan Wu
Date: Mon, 5 Feb 2024 17:26:48 -0500
Subject: [PATCH 1/3] [lldb-dap][NFC] Add Breakpoint struct to share common
logic.
--
https://github.com/ZequanWu created
https://github.com/llvm/llvm-project/pull/81541
This implements functionality to handle `DataBreakpointInfo` request and
`SetDataBreakpoints` request.
It doesn't handle the case when `name` is an expression, see Todo comment for
details.
This is based on t
ZequanWu wrote:
I uploaded https://github.com/llvm/llvm-project/pull/81541 as reference for
reviewers to understand the motivation of this patch.
https://github.com/llvm/llvm-project/pull/80753
___
lldb-commits mailing list
lldb-commits@lists.llvm.org
ZequanWu wrote:
> This looks great overall! Could you split this PR into two? One with the
> refactoring and another one with the new features? That would make reviewing
> easier
Yes, I already split it out: https://github.com/llvm/llvm-project/pull/80753 is
the refactor pr. I'll rebase this
https://github.com/ZequanWu closed
https://github.com/llvm/llvm-project/pull/80753
___
lldb-commits mailing list
lldb-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits
https://github.com/ZequanWu updated
https://github.com/llvm/llvm-project/pull/81541
>From a2d28693da09a569b49bc39a4743e302b2479d87 Mon Sep 17 00:00:00 2001
From: Zequan Wu
Date: Tue, 13 Feb 2024 11:55:33 -0500
Subject: [PATCH] [lldb-dap] Add support for data breakpoint.
This implements functio
ZequanWu wrote:
> just ping me when this PR is rebased
Rebased.
https://github.com/llvm/llvm-project/pull/81541
___
lldb-commits mailing list
lldb-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits
@@ -895,6 +906,32 @@ def request_setFunctionBreakpoints(self, names,
condition=None, hitCondition=Non
}
return self.send_recv(command_dict)
+def request_dataBreakpointInfo(self, variablesReference, name):
+args_dict = {"variablesReference": variabl
https://github.com/ZequanWu edited
https://github.com/llvm/llvm-project/pull/81541
___
lldb-commits mailing list
lldb-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits
https://github.com/ZequanWu updated
https://github.com/llvm/llvm-project/pull/81541
>From a2d28693da09a569b49bc39a4743e302b2479d87 Mon Sep 17 00:00:00 2001
From: Zequan Wu
Date: Tue, 13 Feb 2024 11:55:33 -0500
Subject: [PATCH 1/2] [lldb-dap] Add support for data breakpoint.
This implements fun
@@ -2591,6 +2594,248 @@ void request_setFunctionBreakpoints(const
llvm::json::Object &request) {
g_dap.SendJSON(llvm::json::Value(std::move(response)));
}
+// "DataBreakpointInfoRequest": {
+// "allOf": [ { "$ref": "#/definitions/Request" }, {
+// "type": "object",
+/
@@ -2591,6 +2594,248 @@ void request_setFunctionBreakpoints(const
llvm::json::Object &request) {
g_dap.SendJSON(llvm::json::Value(std::move(response)));
}
+// "DataBreakpointInfoRequest": {
+// "allOf": [ { "$ref": "#/definitions/Request" }, {
+// "type": "object",
+/
101 - 200 of 383 matches
Mail list logo