https://github.com/omjavaid approved this pull request.
Looks Good. Sorry about delayed review!
https://github.com/llvm/llvm-project/pull/110104
___
lldb-commits mailing list
lldb-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/l
@@ -0,0 +1,486 @@
+"""
+Specification, compiler, disassembler, and interpreter
+for LLDB dataformatter bytecode.
+
+See formatter-bytecode.md for more details.
+"""
+from __future__ import annotations
+
+# Types
+type_String = 1
+type_Int = 2
+type_UInt = 3
+type_Object = 4
+type_
https://github.com/EricWF updated
https://github.com/llvm/llvm-project/pull/110303
>From 2d0bc95ac75d404493d4c8883e9fc9880675147f Mon Sep 17 00:00:00 2001
From: Eric Fiselier
Date: Thu, 24 Oct 2024 13:30:07 -0400
Subject: [PATCH 1/2] Allow Specifying the builder image.
This change attempts to
https://github.com/walter-erquinigo approved this pull request.
https://github.com/llvm/llvm-project/pull/113593
___
lldb-commits mailing list
lldb-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits
llvmbot wrote:
@llvm/pr-subscribers-lldb
Author: Michael Buch (Michael137)
Changes
When running in constrained environments like docker, disable ASLR might fail
with errors like:
```
AssertionError: False is not true : launch failed (Cannot launch
'/__w/.../lldb-dap/stackTrace/subtleFrame
mstorsjo wrote:
> Remove `SymbolFilePDB` in favor of always using `SymbolFileNativePDB`. This
> effectively makes `LLDB_USE_NATIVE_PDB_READER` the default. The non-native
> (DIA based) PDB symbol file implementation was unmaintained and known to have
> issues.
While this certainly is true, un
DavidSpickett wrote:
> The non-native (DIA based) PDB symbol file implementation was unmaintained
> and known to have issues.
FWIW I have seen feedback from users who have no idea what this does or why
there would be two things when one is always worse in their experience.
Unfortunately I've
@@ -0,0 +1,165 @@
+# A bytecode for (LLDB) data formatters
+
+## Background
+
+LLDB provides very rich customization options to display data types (see
https://lldb.llvm.org/use/variable.html ). To use custom data formatters,
developers typically need to edit the global `~/.lldb
https://github.com/kusmour updated
https://github.com/llvm/llvm-project/pull/112657
>From 6ee1560ed4c0c2e77943b90fdf97523309f1e754 Mon Sep 17 00:00:00 2001
From: Wanyi Ye
Date: Mon, 14 Oct 2024 22:37:50 -0700
Subject: [PATCH] [lldb] Fix write only file action to truncate the file
---
lldb/sou
@@ -2758,6 +2758,15 @@ void SymbolFileDWARF::FindTypes(const TypeQuery &query,
TypeResults &results) {
return true; // Keep iterating over index types, language mismatch.
}
+// Since mangled names are unique, we only need to check if the names are
+// the
https://github.com/walter-erquinigo edited
https://github.com/llvm/llvm-project/pull/113521
___
lldb-commits mailing list
lldb-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits
DavidSpickett wrote:
Compiling languages into this is intriguing.
MLIR noob thinking out loud: if MLIR could lower into this could you write your
formatter in Fortran? :rofl:
https://github.com/llvm/llvm-project/pull/113398
___
lldb-commits mailing
@@ -614,7 +614,7 @@ DWARFDebugInfoEntry::GetAbbreviationDeclarationPtr(const
DWARFUnit *cu) const {
}
bool DWARFDebugInfoEntry::IsGlobalOrStaticScopeVariable() const {
- if (Tag() != DW_TAG_variable)
+ if (Tag() != DW_TAG_variable && Tag() != DW_TAG_member)
https://github.com/jeffreytan81 updated
https://github.com/llvm/llvm-project/pull/113596
>From 65b0349f7b136ffef1ab75a1a47bb3a5f763cf28 Mon Sep 17 00:00:00 2001
From: jeffreytan81
Date: Thu, 24 Oct 2024 10:42:18 -0700
Subject: [PATCH] Fix pointer to reference type
---
lldb/source/Core/ValueOb
https://github.com/Michael137 approved this pull request.
Seems reasonable to me
Yea not entirely sure how to test this either. As Greg points out, type
mangling isn't really a thing LLDB cared about for C++. Maybe if we had this
option exposed somehow (e.g., through `lldb-test`) we could come
mstorsjo wrote:
> Interesting. Based on a conversation at the dev meeting, I was under the
> impression that the DIA-based implementation was in worse shape and the
> native one in better shape. I also have a memory of bug reports about PDB
> parsing where originators were asked to check with
Author: Michael Buch
Date: 2024-10-25T12:06:57+01:00
New Revision: 2d26ef09fc87472cd42ea219c8f9267599872958
URL:
https://github.com/llvm/llvm-project/commit/2d26ef09fc87472cd42ea219c8f9267599872958
DIFF:
https://github.com/llvm/llvm-project/commit/2d26ef09fc87472cd42ea219c8f9267599872958.diff
@@ -0,0 +1,165 @@
+# A bytecode for (LLDB) data formatters
+
+## Background
+
+LLDB provides very rich customization options to display data types (see
https://lldb.llvm.org/use/variable.html ). To use custom data formatters,
developers typically need to edit the global `~/.lldb
https://github.com/Michael137 updated
https://github.com/llvm/llvm-project/pull/113593
>From 135092caf94e69c0aac25bcb73190ea69776d60e Mon Sep 17 00:00:00 2001
From: Michael Buch
Date: Thu, 24 Oct 2024 17:50:02 +0100
Subject: [PATCH 1/2] [lldb-dap][test] Set disableASLR to False for tests
When
JDevlieghere wrote:
Interesting. Based on a conversation at the dev meeting, I was under the
impression that the DIA-based implementation was in worse shape and the native
one in better shape. I also have a memory of bug reports about PDB parsing
where originators were asked to check with `LLD
@@ -0,0 +1,486 @@
+"""
+Specification, compiler, disassembler, and interpreter
+for LLDB dataformatter bytecode.
+
+See formatter-bytecode.md for more details.
+"""
+from __future__ import annotations
+
+# Types
+type_String = 1
+type_Int = 2
+type_UInt = 3
+type_Object = 4
+type_
@@ -0,0 +1,165 @@
+# A bytecode for (LLDB) data formatters
+
+## Background
+
+LLDB provides very rich customization options to display data types (see
https://lldb.llvm.org/use/variable.html ). To use custom data formatters,
developers typically need to edit the global `~/.lldb
https://github.com/dingxiangfei2009 closed
https://github.com/llvm/llvm-project/pull/113066
___
lldb-commits mailing list
lldb-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits
https://github.com/clayborg requested changes to this pull request.
https://github.com/llvm/llvm-project/pull/113007
___
lldb-commits mailing list
lldb-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits
https://github.com/kastiglione edited
https://github.com/llvm/llvm-project/pull/113734
___
lldb-commits mailing list
lldb-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits
omjavaid wrote:
We set DIA SDK as the default symbol provider on windows. So I don think this
change is appropriate at this stage without testing the complete fallout.
Although I believe we should move in that direction sooner or later.
https://github.com/llvm/llvm-project/pull/113647
https://github.com/omjavaid requested changes to this pull request.
I will test this and may be we can move ahead in case failures are trivial
https://github.com/llvm/llvm-project/pull/113647
___
lldb-commits mailing list
lldb-commits@lists.llvm.org
h
https://github.com/Michael137 closed
https://github.com/llvm/llvm-project/pull/113593
___
lldb-commits mailing list
lldb-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits
https://github.com/kusmour edited
https://github.com/llvm/llvm-project/pull/112657
___
lldb-commits mailing list
lldb-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits
@@ -182,6 +182,9 @@ class SymbolFileOnDemand : public lldb_private::SymbolFile {
lldb_private::StatsDuration::Duration GetDebugInfoParseTime() override;
lldb_private::StatsDuration::Duration GetDebugInfoIndexTime() override;
+ void ResetDebugInfoParseTime() override;
+ v
@@ -789,6 +789,7 @@ void Debugger::Destroy(DebuggerSP &debugger_sp) {
(*debugger_sp->GetAsyncErrorStream()) << result.GetErrorData() << '\n';
}
+ DebuggerStats::ResetStatistics(*debugger_sp, nullptr);
clayborg wrote:
We probably don't need to call th
@@ -236,6 +236,27 @@ void
TargetStats::IncreaseSourceRealpathCompatibleCount(uint32_t count) {
bool DebuggerStats::g_collecting_stats = false;
+void DebuggerStats::ResetStatistics(Debugger &debugger, Target *target) {
+ const uint64_t num_modules = target != nullptr
+
@@ -236,6 +236,27 @@ void
TargetStats::IncreaseSourceRealpathCompatibleCount(uint32_t count) {
bool DebuggerStats::g_collecting_stats = false;
+void DebuggerStats::ResetStatistics(Debugger &debugger, Target *target) {
+ const uint64_t num_modules = target != nullptr
---
@@ -555,6 +555,18 @@ StatsDuration::Duration
SymbolFileOnDemand::GetDebugInfoIndexTime() {
return m_sym_file_impl->GetDebugInfoIndexTime();
}
+void SymbolFileOnDemand::ResetDebugInfoParseTime() {
+ LLDB_LOG(GetLog(), "[{0}] {1} is not skipped", GetSymbolFileName(),
+
@@ -83,6 +83,8 @@ class DWARFIndex {
StatsDuration::Duration GetIndexTime() { return m_index_time; }
+ void ResetIndexTime() { m_index_time.reset(); }
+
clayborg wrote:
Switch to `ResetStatistics` and use similar function in all other classes.
https://gi
@@ -4464,6 +4464,11 @@ StatsDuration::Duration
SymbolFileDWARF::GetDebugInfoIndexTime() {
return {};
}
+void SymbolFileDWARF::ResetDebugInfoIndexTime() {
+ if (m_index)
+return m_index->ResetIndexTime();
+}
+
clayborg wrote:
Change to `ResetStatistics
@@ -236,6 +236,27 @@ void
TargetStats::IncreaseSourceRealpathCompatibleCount(uint32_t count) {
bool DebuggerStats::g_collecting_stats = false;
+void DebuggerStats::ResetStatistics(Debugger &debugger, Target *target) {
+ const uint64_t num_modules = target != nullptr
+
@@ -422,6 +422,13 @@ class SymbolFile : public PluginInterface {
/// hasn't been indexed yet, or a valid duration if it has.
virtual StatsDuration::Duration GetDebugInfoIndexTime() { return {}; }
+ /// Reset the time taken to parse the debug information.
+ virtual void R
@@ -0,0 +1,165 @@
+# A bytecode for (LLDB) data formatters
+
+## Background
+
+LLDB provides very rich customization options to display data types (see
https://lldb.llvm.org/use/variable.html ). To use custom data formatters,
developers typically need to edit the global `~/.lldb
adrian-prantl wrote:
> Compiling languages into this is intriguing.
>
> MLIR noob thinking out loud: if MLIR could lower into this could you write
> your formatter in Fortran? 🤣
It is well known that Fortran is superbly suited to process text:
https://en.wikipedia.org/wiki/Colossal_Cave_Adven
https://github.com/adrian-prantl edited
https://github.com/llvm/llvm-project/pull/113398
___
lldb-commits mailing list
lldb-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits
@@ -0,0 +1,165 @@
+# A bytecode for (LLDB) data formatters
+
+## Background
+
+LLDB provides very rich customization options to display data types (see
https://lldb.llvm.org/use/variable.html ). To use custom data formatters,
developers typically need to edit the global `~/.lldb
@@ -0,0 +1,165 @@
+# A bytecode for (LLDB) data formatters
+
+## Background
+
+LLDB provides very rich customization options to display data types (see
https://lldb.llvm.org/use/variable.html ). To use custom data formatters,
developers typically need to edit the global `~/.lldb
@@ -0,0 +1,486 @@
+"""
+Specification, compiler, disassembler, and interpreter
+for LLDB dataformatter bytecode.
+
+See formatter-bytecode.md for more details.
+"""
+from __future__ import annotations
+
+# Types
+type_String = 1
+type_Int = 2
+type_UInt = 3
+type_Object = 4
+type_
kastiglione wrote:
> Compiling languages into this is intriguing.
@DavidSpickett A minimal example of Python compiling into this assembly for
this bytecode: https://github.com/llvm/llvm-project/pull/113734
https://github.com/llvm/llvm-project/pull/113398
___
https://github.com/adrian-prantl updated
https://github.com/llvm/llvm-project/pull/113398
>From dcab1a5a65fe5345f9c2de9346b7884f74ab7f4d Mon Sep 17 00:00:00 2001
From: Adrian Prantl
Date: Tue, 22 Oct 2024 16:29:50 -0700
Subject: [PATCH] Add a compiler/interpreter of LLDB data formatter bytecode
https://github.com/adrian-prantl updated
https://github.com/llvm/llvm-project/pull/113398
>From 0b88de8fe7f5e4ea7f4089be403b271cd7b086d0 Mon Sep 17 00:00:00 2001
From: Adrian Prantl
Date: Tue, 22 Oct 2024 16:29:50 -0700
Subject: [PATCH] Add a compiler/interpreter of LLDB data formatter bytecode
https://github.com/adrian-prantl created
https://github.com/llvm/llvm-project/pull/113743
Add support for type summaries embedded into the binary.
These embedded summaries will typically be generated by Swift macros, but can
also be generated by any other means.
rdar://115184658
This upstrea
llvmbot wrote:
@llvm/pr-subscribers-lldb
Author: Adrian Prantl (adrian-prantl)
Changes
Add support for type summaries embedded into the binary.
These embedded summaries will typically be generated by Swift macros, but can
also be generated by any other means.
rdar://115184658
This upst
@@ -0,0 +1,486 @@
+"""
+Specification, compiler, disassembler, and interpreter
+for LLDB dataformatter bytecode.
+
+See formatter-bytecode.md for more details.
+"""
+from __future__ import annotations
+
+# Types
+type_String = 1
+type_Int = 2
+type_UInt = 3
+type_Object = 4
+type_
@@ -318,6 +318,9 @@ class SymbolFileDWARF : public SymbolFileCommon {
StatsDuration &GetDebugInfoParseTimeRef() { return m_parse_time; }
+ void ResetDebugInfoParseTime() override { m_parse_time.reset(); }
+ void ResetDebugInfoIndexTime() override;
+
clayb
@@ -408,6 +408,9 @@ class SymbolFileDWARF : public SymbolFileCommon {
bool ParseSupportFiles(DWARFUnit &dwarf_cu, const lldb::ModuleSP &module,
SupportFileList &support_files);
+ lldb::VariableSP ParseStaticConstMemberDIE(const SymbolContext &sc,
+
@@ -362,6 +369,23 @@ void ManualDWARFIndex::IndexUnitImpl(DWARFUnit &unit,
set.namespaces.Insert(ConstString(name), ref);
break;
+case DW_TAG_member: {
+ // In DWARF 4 and earlier `static const` members of a struct, a class or
a
+ // union have an
@@ -0,0 +1,12 @@
+class Vars {
Michael137 wrote:
Lets remove this new test given we adjusted the existing ones
https://github.com/llvm/llvm-project/pull/111859
___
lldb-commits mailing list
lldb-commits@lists.llvm.org
@@ -3490,7 +3490,7 @@ VariableSP SymbolFileDWARF::ParseVariableDIE(const
SymbolContext &sc,
ModuleSP module = GetObjectFile()->GetModule();
if (tag != DW_TAG_variable && tag != DW_TAG_constant &&
- (tag != DW_TAG_formal_parameter || !sc.function))
+ tag != DW_TA
https://github.com/Michael137 edited
https://github.com/llvm/llvm-project/pull/111859
___
lldb-commits mailing list
lldb-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits
https://github.com/Michael137 edited
https://github.com/llvm/llvm-project/pull/111859
___
lldb-commits mailing list
lldb-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits
Michael137 wrote:
FYI, had to adjust the flag in one other place. Feel free to rebase the branch
on `main`. I merged the changes
https://github.com/llvm/llvm-project/pull/110303
___
lldb-commits mailing list
lldb-commits@lists.llvm.org
https://lists.l
https://github.com/jeffreytan81 created
https://github.com/llvm/llvm-project/pull/113723
"statistics dump" currently report the statistics of all targets in debugger
instead of current target. This is wrong because there is a "statistics dump
--all-targets" option that supposed to include ever
https://github.com/jeffreytan81 ready_for_review
https://github.com/llvm/llvm-project/pull/113723
___
lldb-commits mailing list
lldb-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits
llvmbot wrote:
@llvm/pr-subscribers-lldb
Author: None (jeffreytan81)
Changes
"statistics dump" currently report the statistics of all targets in debugger
instead of current target. This is wrong because there is a "statistics dump
--all-targets" option that supposed to include everything
@@ -6,6 +6,8 @@
//
//===--===//
+#include
bulbazord wrote:
Will this work on windows?
https://github.com/llvm/llvm-project/pull/112657
___
lldb
@@ -6,6 +6,8 @@
//
//===--===//
+#include
kusmour wrote:
Good question, from the code search it seems a lot of base classes have that
#include. I don't have a windows machine to test with
https://github.com/bulbazord approved this pull request.
https://github.com/llvm/llvm-project/pull/113412
___
lldb-commits mailing list
lldb-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits
@@ -0,0 +1,165 @@
+# A bytecode for (LLDB) data formatters
+
+## Background
+
+LLDB provides very rich customization options to display data types (see
https://lldb.llvm.org/use/variable.html ). To use custom data formatters,
developers typically need to edit the global `~/.lldb
https://github.com/kastiglione created
https://github.com/llvm/llvm-project/pull/113734
None
>From 57223942e91c47d0a61b148a65247cd9cbb16496 Mon Sep 17 00:00:00 2001
From: Dave Lee
Date: Fri, 25 Oct 2024 12:56:00 -0700
Subject: [PATCH] [lldb] Proof of concept data formatter compiler for Python
github-actions[bot] wrote:
:warning: Python code formatter, darker found issues in your code. :warning:
You can test this locally with the following command:
``bash
darker --check --diff -r
eb9f4756bc3daaa4b19f4f46521dc05180814de4...57223942e91c47d0a61b148a65247cd9cbb16496
lldb/
llvmbot wrote:
@llvm/pr-subscribers-lldb
Author: Dave Lee (kastiglione)
Changes
---
Full diff: https://github.com/llvm/llvm-project/pull/113734.diff
2 Files Affected:
- (added) lldb/examples/formatter-bytecode/optional_summary.py (+14)
- (added) lldb/examples/formatter-bytecode/pytho
https://github.com/kastiglione converted_to_draft
https://github.com/llvm/llvm-project/pull/113734
___
lldb-commits mailing list
lldb-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits
https://github.com/jeffreytan81 updated
https://github.com/llvm/llvm-project/pull/113723
>From debd58ec81a8c245475531c990e969b39770bc1e Mon Sep 17 00:00:00 2001
From: jeffreytan81
Date: Thu, 24 Oct 2024 17:14:55 -0700
Subject: [PATCH] Report statistics per target
---
lldb/include/lldb/API/SBD
@@ -0,0 +1,165 @@
+# A bytecode for (LLDB) data formatters
+
+## Background
+
+LLDB provides very rich customization options to display data types (see
https://lldb.llvm.org/use/variable.html ). To use custom data formatters,
developers typically need to edit the global `~/.lldb
https://github.com/clayborg requested changes to this pull request.
https://github.com/llvm/llvm-project/pull/113723
___
lldb-commits mailing list
lldb-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits
@@ -0,0 +1,486 @@
+"""
+Specification, compiler, disassembler, and interpreter
+for LLDB dataformatter bytecode.
+
+See formatter-bytecode.md for more details.
+"""
+from __future__ import annotations
+
+# Types
+type_String = 1
+type_Int = 2
+type_UInt = 3
+type_Object = 4
+type_
@@ -0,0 +1,486 @@
+"""
+Specification, compiler, disassembler, and interpreter
+for LLDB dataformatter bytecode.
+
+See formatter-bytecode.md for more details.
+"""
+from __future__ import annotations
+
+# Types
+type_String = 1
+type_Int = 2
+type_UInt = 3
+type_Object = 4
+type_
@@ -555,6 +555,18 @@ StatsDuration::Duration
SymbolFileOnDemand::GetDebugInfoIndexTime() {
return m_sym_file_impl->GetDebugInfoIndexTime();
}
+void SymbolFileOnDemand::ResetDebugInfoParseTime() {
+ LLDB_LOG(GetLog(), "[{0}] {1} is not skipped", GetSymbolFileName(),
+
@@ -236,6 +236,27 @@ void
TargetStats::IncreaseSourceRealpathCompatibleCount(uint32_t count) {
bool DebuggerStats::g_collecting_stats = false;
+void DebuggerStats::ResetStatistics(Debugger &debugger, Target *target) {
+ const uint64_t num_modules = target != nullptr
+
@@ -422,6 +422,13 @@ class SymbolFile : public PluginInterface {
/// hasn't been indexed yet, or a valid duration if it has.
virtual StatsDuration::Duration GetDebugInfoIndexTime() { return {}; }
+ /// Reset the time taken to parse the debug information.
+ virtual void R
Author: Kazu Hirata
Date: 2024-10-25T15:35:01-07:00
New Revision: ccc15cd6f52922e83164b44e927870059c168ddf
URL:
https://github.com/llvm/llvm-project/commit/ccc15cd6f52922e83164b44e927870059c168ddf
DIFF:
https://github.com/llvm/llvm-project/commit/ccc15cd6f52922e83164b44e927870059c168ddf.diff
L
https://github.com/kazutakahirata closed
https://github.com/llvm/llvm-project/pull/113412
___
lldb-commits mailing list
lldb-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits
https://github.com/jeffreytan81 updated
https://github.com/llvm/llvm-project/pull/113723
>From abf234c1009b23b000a2b39684fb888084cf5e8c Mon Sep 17 00:00:00 2001
From: jeffreytan81
Date: Thu, 24 Oct 2024 17:14:55 -0700
Subject: [PATCH] Report statistics per target
---
lldb/include/lldb/API/SBD
@@ -1667,6 +1667,12 @@ SBTypeSynthetic
SBDebugger::GetSyntheticForType(SBTypeNameSpecifier type_name) {
DataVisualization::GetSyntheticForType(type_name.GetSP()));
}
+void SBDebugger::ResetStatistics() {
clayborg wrote:
Should we add a `void SBTarget::
81 matches
Mail list logo