Michael137 wrote:
> Given the libc++ experience, let's move forward with this PR as-is. If
> there's an issue in practice, we'll disable the tests on changes to Clang at
> that point.
Do note that libc++ CI only runs a subset of the LLDB tests. Only the ones that
are impacted by libc++. We
Michael137 wrote:
> Oh, this is not wanted. It should be almost a NFC patch for users. I'll
> revert it.
Thanks!
https://github.com/llvm/llvm-project/pull/92083
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
Michael137 wrote:
Unfortunately this is still failing one test on the macOS CI:
https://green.lab.llvm.org/job/llvm.org/view/LLDB/job/as-lldb-cmake/5083/execution/node/97/log
```
==
FAIL: test_duplicate_decls_gmodules
Michael137 wrote:
> @Michael137 This is for Linux. Windows works the same way just below those
> lines:
>
> https://github.com/llvm/llvm-project/blob/9a7bd8a60f03595be5d42315790df6d409f81091/.ci/generate-buildkite-pipeline-premerge#L253-L255
Ah, so what would the issue be with just adding
Michael137 wrote:
> > Should we just run the tests for the LLDB C++ language plugin (i.e., the
> > part of LLDB that invokes Clang and the JIT). And then we could expand the
> > set of tests from there later?
>
> In the bash script that currently handles this, "targets that we need to
>
Michael137 wrote:
I.e., also broke the macOS LLDB buildbots:
https://green.lab.llvm.org/job/llvm.org/view/LLDB/job/lldb-cmake/2637/execution/node/97/log/
```
Assertion failed: (!((*IDAddress) >> 48) && "We should only set the module ID
once"), function setOwningModuleID, file DeclBase.cpp,
Michael137 wrote:
Worth a shot i guess. Though it could be somewhat disruptive if we do in fact
have flaky tests. I don't think we need to run *all* tests. Should we just run
the tests for the LLDB C++ language plugin (i.e., the part of LLDB that invokes
Clang and the JIT). And then we could
Michael137 wrote:
> The correct answer here is probably to fix the sizes in the RecordLayout
> itself; in particular, the DataSize of the members.
That would be ideal, but also means we'd have to reflect the various C++
attributes that affect layout in DWARF. Avoiding adding such
https://github.com/Michael137 updated
https://github.com/llvm/llvm-project/pull/93809
>From 91276f5b2dc05032a285b465c0c8a69541bb25c4 Mon Sep 17 00:00:00 2001
From: Michael Buch
Date: Thu, 2 May 2024 09:05:01 +0100
Subject: [PATCH 1/3] [clang][lldb] Don't assert structure layout correctness
https://github.com/Michael137 updated
https://github.com/llvm/llvm-project/pull/93809
>From 91276f5b2dc05032a285b465c0c8a69541bb25c4 Mon Sep 17 00:00:00 2001
From: Michael Buch
Date: Thu, 2 May 2024 09:05:01 +0100
Subject: [PATCH 1/2] [clang][lldb] Don't assert structure layout correctness
https://github.com/Michael137 edited
https://github.com/llvm/llvm-project/pull/93809
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
https://github.com/Michael137 created
https://github.com/llvm/llvm-project/pull/93809
This is the outcome of the discussions we had in
https://discourse.llvm.org/t/rfc-lldb-handling-no-unique-address-in-lldb/77483
To summarize, LLDB creates AST nodes by parsing debug-info and hands those off
Michael137 wrote:
I'm going to revert this for now until since the bots have been red for a while
now
https://github.com/llvm/llvm-project/pull/92865
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
Michael137 wrote:
> @Michael137 said:
>
> > Btw, as a follow-up to this patch should we check that this is compatible
> > with dsymutil (i.e., running dsymutil --verify)? I suspect it might need a
> > fixup (given LLDB doesn't even support this tag)
Yup, dsymutil looks good now, thanks
>
Michael137 wrote:
`18707f53d6d2665634373847a0e9bdcbcac88c57`
https://github.com/llvm/llvm-project/pull/90717
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
https://github.com/Michael137 closed
https://github.com/llvm/llvm-project/pull/90916
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
https://github.com/Michael137 created
https://github.com/llvm/llvm-project/pull/90916
Caused build-bot failures on various platforms.
>From 062311676d54dadeae4f463fcf5dcc9ef8d1d971 Mon Sep 17 00:00:00 2001
From: Michael Buch
Date: Fri, 3 May 2024 00:25:24 +0100
Subject: [PATCH]
Michael137 wrote:
Broke some build bots. Fixing...
https://github.com/llvm/llvm-project/pull/90717
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
https://github.com/Michael137 closed
https://github.com/llvm/llvm-project/pull/90717
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
https://github.com/Michael137 updated
https://github.com/llvm/llvm-project/pull/90717
>From 94c812abc4e528d3d3cb96fa3c3b7f78b6a87a91 Mon Sep 17 00:00:00 2001
From: Michael Buch
Date: Wed, 1 May 2024 11:03:08 +0100
Subject: [PATCH 1/2] [clang][PGO] Apply artificial DebugLoc to
https://github.com/Michael137 created
https://github.com/llvm/llvm-project/pull/90717
Prior to this change the debug-location for the `llvm.instrprof.increment`
intrinsic was set to whatever the current DIBuilder's current debug location
was set to. This meant that for switch-statements, a
https://github.com/Michael137 approved this pull request.
https://github.com/llvm/llvm-project/pull/90032
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
https://github.com/Michael137 approved this pull request.
https://github.com/llvm/llvm-project/pull/89594
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
@@ -0,0 +1,38 @@
+// RUN: %clang_cc1 -triple x86_64-unk-unk -o - -emit-llvm
-debug-info-kind=standalone -gtemplate-alias %s -gsimple-template-names=simple \
+// RUN: | FileCheck %s
+
+ Check that -gtemplate-alias causes DW_TAG_template_alias emission for
+ template
https://github.com/Michael137 approved this pull request.
LGTM, if @pogo59 and @dwblaikie are happy with the driver changes
https://github.com/llvm/llvm-project/pull/87623
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
@@ -0,0 +1,38 @@
+// RUN: %clang_cc1 -triple x86_64-unk-unk -o - -emit-llvm
-debug-info-kind=standalone -gtemplate-alias %s -gsimple-template-names=simple \
+// RUN: | FileCheck %s
+
+ Check that -gtemplate-alias causes DW_TAG_template_alias emission for
+ template
@@ -1332,6 +1332,54 @@ llvm::DIType *CGDebugInfo::CreateType(const
TemplateSpecializationType *Ty,
auto PP = getPrintingPolicy();
Ty->getTemplateName().print(OS, PP, TemplateName::Qualified::None);
+ SourceLocation Loc = AliasDecl->getLocation();
+
+ if
@@ -1332,6 +1332,54 @@ llvm::DIType *CGDebugInfo::CreateType(const
TemplateSpecializationType *Ty,
auto PP = getPrintingPolicy();
Ty->getTemplateName().print(OS, PP, TemplateName::Qualified::None);
+ SourceLocation Loc = AliasDecl->getLocation();
+
+ if
@@ -1332,6 +1332,54 @@ llvm::DIType *CGDebugInfo::CreateType(const
TemplateSpecializationType *Ty,
auto PP = getPrintingPolicy();
Ty->getTemplateName().print(OS, PP, TemplateName::Qualified::None);
+ SourceLocation Loc = AliasDecl->getLocation();
+
+ if
https://github.com/Michael137 edited
https://github.com/llvm/llvm-project/pull/87623
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
@@ -1332,6 +1332,54 @@ llvm::DIType *CGDebugInfo::CreateType(const
TemplateSpecializationType *Ty,
auto PP = getPrintingPolicy();
Ty->getTemplateName().print(OS, PP, TemplateName::Qualified::None);
+ SourceLocation Loc = AliasDecl->getLocation();
+
+ if
@@ -1332,6 +1332,54 @@ llvm::DIType *CGDebugInfo::CreateType(const
TemplateSpecializationType *Ty,
auto PP = getPrintingPolicy();
Ty->getTemplateName().print(OS, PP, TemplateName::Qualified::None);
+ SourceLocation Loc = AliasDecl->getLocation();
+
+ if
@@ -1313,6 +1313,61 @@ llvm::DIType *CGDebugInfo::CreateType(const
BlockPointerType *Ty,
return DBuilder.createPointerType(EltTy, Size);
}
+static llvm::SmallVector
+GetTemplateArgs(const TemplateDecl *TD, const TemplateSpecializationType *Ty) {
+
@@ -1332,6 +1332,54 @@ llvm::DIType *CGDebugInfo::CreateType(const
TemplateSpecializationType *Ty,
auto PP = getPrintingPolicy();
Ty->getTemplateName().print(OS, PP, TemplateName::Qualified::None);
+ SourceLocation Loc = AliasDecl->getLocation();
+
+ if
https://github.com/Michael137 edited
https://github.com/llvm/llvm-project/pull/87623
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
@@ -1332,6 +1332,54 @@ llvm::DIType *CGDebugInfo::CreateType(const
TemplateSpecializationType *Ty,
auto PP = getPrintingPolicy();
Ty->getTemplateName().print(OS, PP, TemplateName::Qualified::None);
+ SourceLocation Loc = AliasDecl->getLocation();
+
+ if
Michael137 wrote:
Btw, as a follow-up to this patch should we check that this is compatible with
dsymutil (i.e., running `dsymutil --verify`)? I suspect it might need a fixup
(given LLDB doesn't even support this tag)
https://github.com/llvm/llvm-project/pull/87623
@@ -1332,6 +1332,54 @@ llvm::DIType *CGDebugInfo::CreateType(const
TemplateSpecializationType *Ty,
auto PP = getPrintingPolicy();
Ty->getTemplateName().print(OS, PP, TemplateName::Qualified::None);
+ SourceLocation Loc = AliasDecl->getLocation();
+
+ if
@@ -5361,7 +5383,56 @@ static bool IsReconstitutableType(QualType QT) {
return T.Reconstitutable;
}
-std::string CGDebugInfo::GetName(const Decl *D, bool Qualified) const {
+bool CGDebugInfo::HasReconstitutableArgs(
+ArrayRef Args) const {
+ return llvm::all_of(Args,
Michael137 wrote:
LGTM, but would like @rjmccall or @AaronBallman (or another code-owner) to give
final approval
https://github.com/llvm/llvm-project/pull/84384
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://github.com/Michael137 edited
https://github.com/llvm/llvm-project/pull/84384
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
@@ -251,15 +423,16 @@ class Qualifiers {
}
// Deserialize qualifiers from an opaque representation.
- static Qualifiers fromOpaqueValue(unsigned opaque) {
+ static Qualifiers fromOpaqueValue(uint64_t Opaque) {
Qualifiers Qs;
-Qs.Mask = opaque;
+Qs.Mask =
@@ -5361,7 +5383,56 @@ static bool IsReconstitutableType(QualType QT) {
return T.Reconstitutable;
}
-std::string CGDebugInfo::GetName(const Decl *D, bool Qualified) const {
+bool CGDebugInfo::HasReconstitutableArgs(
+ArrayRef Args) const {
+ return llvm::all_of(Args,
@@ -1,4 +1,4 @@
-// RUN: %clang -g -std=c++11 -S -emit-llvm %s -o - | FileCheck %s
+// RUN: %clang -ggdb -std=c++11 -S -emit-llvm %s -o - | FileCheck %s
Michael137 wrote:
Do we now lose a tiny bit of coverage for `-glldb`? I assume this change is to
make sure
https://github.com/Michael137 closed
https://github.com/llvm/llvm-project/pull/84891
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
https://github.com/Michael137 created
https://github.com/llvm/llvm-project/pull/84891
It is not uncommon for LLDB users to dig into internal implementation details
of system types (including the STL). LLDB's expression evaluator makes use of
Clang's code-completion facilities but currently
@@ -9896,9 +9903,13 @@ Expected ASTImporter::Import(FileID FromID, bool
IsBuiltin) {
// FIXME: The filename may be a virtual name that does probably not
// point to a valid file and we get no Entry here. In this case try
with
// the memory buffer
@@ -9896,9 +9903,13 @@ Expected ASTImporter::Import(FileID FromID, bool
IsBuiltin) {
// FIXME: The filename may be a virtual name that does probably not
// point to a valid file and we get no Entry here. In this case try
with
// the memory buffer
https://github.com/Michael137 closed
https://github.com/llvm/llvm-project/pull/77920
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
https://github.com/Michael137 updated
https://github.com/llvm/llvm-project/pull/77920
>From 4de3716b55a22dc8b7dda621889089f390026739 Mon Sep 17 00:00:00 2001
From: Michael Buch
Date: Fri, 12 Jan 2024 12:34:16 +
Subject: [PATCH 1/2] [lldb][test] Add tests for
Michael137 wrote:
@dwblaikie merged the fix, let me know if you're still seeing problems
https://github.com/llvm/llvm-project/pull/72235
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://github.com/Michael137 closed
https://github.com/llvm/llvm-project/pull/77079
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
Michael137 wrote:
Tried to find a way to test "objective-c fields aren't reordered". After
talking to some objective-c experts, there doesn't seem to be a good way to
force such "incorrect field order", because it's strictly an in-order language.
Reducing the LLDB crashes has been tricky
Michael137 wrote:
Proposed fix: https://github.com/llvm/llvm-project/pull/77155
https://github.com/llvm/llvm-project/pull/72235
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
Michael137 wrote:
> Yes, in the totally reduced reproducer - another debugger might be able to do
> this name lookup with only a declaration, but I understand that at least
> Clang's AST expression evaluator wouldn't be able to handle this case.
> (though perhaps the lldb-eval work will
Michael137 wrote:
I guess if there's some other type of ObjC decl that could trigger the
re-ordering that would be useful.
https://github.com/llvm/llvm-project/pull/77079
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
Michael137 wrote:
> I can not check what caused exactly the problems but the change looks correct
> and in change D154764 there seems to be no reason for re-ordering at
> non-record objects. As an improvement, some tests could be added that check
> for re-ordering at `RecordDecl` and (this is
https://github.com/Michael137 updated
https://github.com/llvm/llvm-project/pull/77079
>From 544e2b12695fa572b08abc8efdceeadd63ebbde5 Mon Sep 17 00:00:00 2001
From: Michael Buch
Date: Fri, 5 Jan 2024 10:41:55 +
Subject: [PATCH 1/2] [clang][ASTImporter] Only reorder fields of RecordDecls
Michael137 wrote:
Need to sort out some test failures
https://github.com/llvm/llvm-project/pull/77079
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
https://github.com/Michael137 edited
https://github.com/llvm/llvm-project/pull/77079
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
https://github.com/Michael137 edited
https://github.com/llvm/llvm-project/pull/77079
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
https://github.com/Michael137 created
https://github.com/llvm/llvm-project/pull/77079
Prior to `e9536698720ec524cc8b72599363622bc1a31558`
(https://reviews.llvm.org/D154764) we only re-ordered the fields of
`RecordDecl`s. The change refactored this logic to make sure `FieldDecl`s are
imported
Michael137 wrote:
Ah looks like in `GetClangDeclForDIE`, when trying to parse the
`DW_AT_specification` that the CU-level `DW_TAG_variable` points to, we now try
to `CreateVariableDeclaration`, because the static member is a
`DW_TAG_variable` too. Whereas previously we would just fall-through
Michael137 wrote:
> Yeah, that seems to do it:
>
> ```
>
> struct t1 {
>
> t1();
>
> static int i;
>
> };
>
> int t1::i = 43;
>
> int main() {
>
> }
>
> ```
>
> ```
>
> $ clang++-tot -gsplit-dwarf -g test.cpp
>
> $ lldb ./a.out -o "b main" -o "run" -o "p t1::i" -batch
>
> This
Michael137 wrote:
> Should've mentioned this earlier, but we've been seeing crashes in lldb due
> to this change (though possibly related to our use of GALA python/gdb interop
> https://github.com/sivachandra/gala - we haven't isolated the failures from
> that yet (though we've been using it
@@ -56,10 +56,10 @@ namespace Foo = A::B; // namespace alias
using Foo::myfunc; // using declaration
-using namespace Foo;// using directive
+//removing namespace foo; for quality naming
Michael137 wrote:
The `using` directive was used here to
https://github.com/Michael137 closed
https://github.com/llvm/llvm-project/pull/74580
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
Michael137 wrote:
> > To support access to such constants from LLDB we'll most likely have to
> > have to make LLDB find the constants by looking at the containing class
> > first.
>
> Tangentially related to:
>
https://github.com/Michael137 edited
https://github.com/llvm/llvm-project/pull/74580
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
Michael137 wrote:
> Do you need me to merge that for you?
Was going to wait until some more people had the chance to look. But if urgent,
I don't think there should be any trouble merging this sooner
https://github.com/llvm/llvm-project/pull/74580
https://github.com/Michael137 updated
https://github.com/llvm/llvm-project/pull/74580
>From fe9624fdf898a2a629bb34f070d0e084f6dc0aa9 Mon Sep 17 00:00:00 2001
From: Michael Buch
Date: Tue, 5 Dec 2023 14:52:00 +
Subject: [PATCH 1/2] [clang][DebugInfo] Revert "emit variable definitions for
https://github.com/Michael137 edited
https://github.com/llvm/llvm-project/pull/74580
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
https://github.com/Michael137 created
https://github.com/llvm/llvm-project/pull/74580
This commit reverts the changes in
https://github.com/llvm/llvm-project/pull/71780 and all of its follow-up
patches.
We got reports of the `.debug_names/.debug_gnu_pubnames/gdb_index/etc.`
sections growing
Author: Michael Buch
Date: 2023-11-30T11:13:36Z
New Revision: c80b91bce3a5a92281ad1c7e090ac25e7a5bd395
URL:
https://github.com/llvm/llvm-project/commit/c80b91bce3a5a92281ad1c7e090ac25e7a5bd395
DIFF:
https://github.com/llvm/llvm-project/commit/c80b91bce3a5a92281ad1c7e090ac25e7a5bd395.diff
LOG:
Michael137 wrote:
Test fix in flight...
https://github.com/llvm/llvm-project/pull/72974
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
https://github.com/Michael137 closed
https://github.com/llvm/llvm-project/pull/72974
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
https://github.com/Michael137 updated
https://github.com/llvm/llvm-project/pull/72974
>From 012096290352438668d8f4bb7a97179952a87a3a Mon Sep 17 00:00:00 2001
From: Michael Buch
Date: Sat, 18 Nov 2023 00:20:05 +
Subject: [PATCH] [clang][DebugInfo] Create evaluateConstantInitializer helper
Michael137 wrote:
> Looks like LLDB linux buildbot isn't happy, checking...
Fix in https://github.com/llvm/llvm-project/pull/73707
https://github.com/llvm/llvm-project/pull/73626
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
Michael137 wrote:
Looks like LLDB linux buildbot isn't happy, checking...
https://github.com/llvm/llvm-project/pull/73626
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
https://github.com/Michael137 closed
https://github.com/llvm/llvm-project/pull/73626
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
Michael137 wrote:
> > I do wonder how feasible it would be for the downstream tests to be
> > adjusted to look at the `DW_AT_location`..
>
> As I mentioned on the other thread, the point is not to have to read the
> value from the process-under-debug. This is not efficient in a
>
Michael137 wrote:
I do wonder how feasible it would be for the downstream tests to be adjusted to
look at the `DW_AT_location`..
https://github.com/llvm/llvm-project/pull/73626
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://github.com/Michael137 edited
https://github.com/llvm/llvm-project/pull/73626
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
Michael137 wrote:
FYI @petrhosek
https://github.com/llvm/llvm-project/pull/73626
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
https://github.com/Michael137 created
https://github.com/llvm/llvm-project/pull/73626
In #71780 we started emitting definitions for all static data-members with
constant initialisers, even if they were constants (i.e., didn't have a
location). We also dropped the DW_AT_const_value from the
Michael137 wrote:
> Can we add back the constant to the declaration? It's been a week and the
> progress on #72730 seems to have stalled while our builders are still broken.
Yup will do, apologies for the noise
https://github.com/llvm/llvm-project/pull/71780
Michael137 wrote:
> Would confuse `DwarfDebug` without your changes/this patch? Or only with this
> patch? (& hopefully there's some way to reach the merge globals
> functionality/problem/interesting IR from clang itself - but I guess even if
> it isn't, this is still a demonstration of
Michael137 wrote:
> @Michael137 is this patch ready to land? We (I have took over the bug from
> @ilovepi ) have a few builders that are currently blocked by the behavior
> change introduced in PR #70639 . It would be great if this change can be
> landed timely. Thx.
Nope this isn't ready
Michael137 wrote:
> Do we end up with two DIGlobalVariableExpressions?
Just checked. With this patch, MergeGlobals would produce following IR:
```
...
!10 = !DIGlobalVariableExpression(var: !11, expr:
!DIExpression(DW_OP_plus_uconst, 4, DW_OP_constu, 200, DW_OP_stack_value))
!11 = distinct
Michael137 wrote:
> > My understanding was that the DIExpression parameter to
> > DIGlobalVariableExpression was empty for global variables with locations.
> > So the patch just encodes the constant into that expression if it's
> > otherwise empty.
>
> I think in theory it can be non-empty
https://github.com/Michael137 updated
https://github.com/llvm/llvm-project/pull/72974
>From 012096290352438668d8f4bb7a97179952a87a3a Mon Sep 17 00:00:00 2001
From: Michael Buch
Date: Sat, 18 Nov 2023 00:20:05 +
Subject: [PATCH] [clang][DebugInfo] Create evaluateConstantInitializer helper
https://github.com/Michael137 edited
https://github.com/llvm/llvm-project/pull/72974
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
Michael137 wrote:
I extracted the parts that are clean-ups/bugfixes into a new PR:
https://github.com/llvm/llvm-project/pull/72974
https://github.com/llvm/llvm-project/pull/72730
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://github.com/Michael137 edited
https://github.com/llvm/llvm-project/pull/72974
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
https://github.com/Michael137 created
https://github.com/llvm/llvm-project/pull/72974
This patch extracts the logic to evaluate a C++ static data-member's constant
initializer such that it can be used by an upcoming patch.
It also makes the check for whether we are dealing with a constant
Michael137 wrote:
> I'm unclear on the specifics of the check, but it's probably something we can
> adjust if that is the long-term solution.
>
> CC @petrhosek Since he was interested in getting this resolved soon.
There's a few things left to iron out with
Michael137 wrote:
> Hmm, I can't quite tell from the test case updates in the patch, at least at
> a glance: How does this get encoded at the IR level? Do we end up with two
> DIGlobalVariableExpressions? One with the constant value expresison, and one
> that references the actual global
Michael137 wrote:
This will need a slight tweak in DwarfCompileUnit because it currently doesn't
attach a DW_AT_location to global variable DIEs that already have a
DW_AT_const_value
https://github.com/llvm/llvm-project/pull/72730
___
cfe-commits
https://github.com/Michael137 updated
https://github.com/llvm/llvm-project/pull/72730
>From 6dcb09dcc50a9b9e92640412242927b3e226929e Mon Sep 17 00:00:00 2001
From: Michael Buch
Date: Sat, 18 Nov 2023 00:20:05 +
Subject: [PATCH 1/8] [clang][DebugInfo][NFC] Create
https://github.com/Michael137 edited
https://github.com/llvm/llvm-project/pull/72730
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
1 - 100 of 203 matches
Mail list logo