https://github.com/VitaNuo edited
https://github.com/llvm/llvm-project/pull/133910
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
@@ -49,6 +51,150 @@ LLVM_INSTANTIATE_REGISTRY(FrontendPluginRegistry)
namespace {
+/// DeserializedDeclsLineRangePrinter dumps ranges of deserialized declarations
+/// to aid debugging and bug minimization. It implements ASTConsumer and
+/// ASTDeserializationListener, so tha
@@ -7968,6 +7968,10 @@ def print_dependency_directives_minimized_source :
Flag<["-"],
"print-dependency-directives-minimized-source">,
HelpText<"Print the output of the dependency directives source minimizer">;
}
+def print_deserialized_declarations : Joined<["-"],
+ "pri
@@ -49,6 +51,150 @@ LLVM_INSTANTIATE_REGISTRY(FrontendPluginRegistry)
namespace {
+/// DeserializedDeclsLineRangePrinter dumps ranges of deserialized declarations
+/// to aid debugging and bug minimization. It implements ASTConsumer and
+/// ASTDeserializationListener, so tha
@@ -49,6 +51,150 @@ LLVM_INSTANTIATE_REGISTRY(FrontendPluginRegistry)
namespace {
+/// DeserializedDeclsLineRangePrinter dumps ranges of deserialized declarations
+/// to aid debugging and bug minimization. It implements ASTConsumer and
+/// ASTDeserializationListener, so tha
@@ -49,6 +51,150 @@ LLVM_INSTANTIATE_REGISTRY(FrontendPluginRegistry)
namespace {
+/// DeserializedDeclsLineRangePrinter dumps ranges of deserialized declarations
+/// to aid debugging and bug minimization. It implements ASTConsumer and
+/// ASTDeserializationListener, so tha
@@ -121,6 +267,26 @@ FrontendAction::CreateWrappedASTConsumer(CompilerInstance
&CI,
if (!Consumer)
return nullptr;
+ std::vector> Consumers;
VitaNuo wrote:
Done.
https://github.com/llvm/llvm-project/pull/133910
___
@@ -49,6 +51,150 @@ LLVM_INSTANTIATE_REGISTRY(FrontendPluginRegistry)
namespace {
+/// DeserializedDeclsLineRangePrinter dumps ranges of deserialized declarations
+/// to aid debugging and bug minimization. It implements ASTConsumer and
+/// ASTDeserializationListener, so tha
@@ -49,6 +51,150 @@ LLVM_INSTANTIATE_REGISTRY(FrontendPluginRegistry)
namespace {
+/// DeserializedDeclsLineRangePrinter dumps ranges of deserialized declarations
+/// to aid debugging and bug minimization. It implements ASTConsumer and
+/// ASTDeserializationListener, so tha
VitaNuo wrote:
> Thanks, the implementation mostly looks good. I've left a lot of comments,
> but they are mostly NITs. One major thing that we need to change is the way
> we test this, see the comment about relying on jq.
Sure, changed to `FileCheck`.
> Another thought that crossed my mind i
@@ -121,6 +267,26 @@ FrontendAction::CreateWrappedASTConsumer(CompilerInstance
&CI,
if (!Consumer)
return nullptr;
+ std::vector> Consumers;
VitaNuo wrote:
The constructor of `MultiplexConsumer` won't take a `SmallVector`.
https://github.com/llvm/llv
@@ -49,6 +51,150 @@ LLVM_INSTANTIATE_REGISTRY(FrontendPluginRegistry)
namespace {
+/// DeserializedDeclsLineRangePrinter dumps ranges of deserialized declarations
+/// to aid debugging and bug minimization. It implements ASTConsumer and
+/// ASTDeserializationListener, so tha
@@ -49,6 +51,150 @@ LLVM_INSTANTIATE_REGISTRY(FrontendPluginRegistry)
namespace {
+/// DeserializedDeclsLineRangePrinter dumps ranges of deserialized declarations
+/// to aid debugging and bug minimization. It implements ASTConsumer and
+/// ASTDeserializationListener, so tha
@@ -49,6 +51,150 @@ LLVM_INSTANTIATE_REGISTRY(FrontendPluginRegistry)
namespace {
+/// DeserializedDeclsLineRangePrinter dumps ranges of deserialized declarations
+/// to aid debugging and bug minimization. It implements ASTConsumer and
+/// ASTDeserializationListener, so tha
@@ -49,6 +51,150 @@ LLVM_INSTANTIATE_REGISTRY(FrontendPluginRegistry)
namespace {
+/// DeserializedDeclsLineRangePrinter dumps ranges of deserialized declarations
+/// to aid debugging and bug minimization. It implements ASTConsumer and
+/// ASTDeserializationListener, so tha
@@ -49,6 +51,150 @@ LLVM_INSTANTIATE_REGISTRY(FrontendPluginRegistry)
namespace {
+/// DeserializedDeclsLineRangePrinter dumps ranges of deserialized declarations
+/// to aid debugging and bug minimization. It implements ASTConsumer and
+/// ASTDeserializationListener, so tha
@@ -49,6 +51,150 @@ LLVM_INSTANTIATE_REGISTRY(FrontendPluginRegistry)
namespace {
+/// DeserializedDeclsLineRangePrinter dumps ranges of deserialized declarations
+/// to aid debugging and bug minimization. It implements ASTConsumer and
+/// ASTDeserializationListener, so tha
@@ -49,6 +51,150 @@ LLVM_INSTANTIATE_REGISTRY(FrontendPluginRegistry)
namespace {
+/// DeserializedDeclsLineRangePrinter dumps ranges of deserialized declarations
+/// to aid debugging and bug minimization. It implements ASTConsumer and
+/// ASTDeserializationListener, so tha
@@ -49,6 +51,150 @@ LLVM_INSTANTIATE_REGISTRY(FrontendPluginRegistry)
namespace {
+/// DeserializedDeclsLineRangePrinter dumps ranges of deserialized declarations
+/// to aid debugging and bug minimization. It implements ASTConsumer and
+/// ASTDeserializationListener, so tha
@@ -49,6 +51,150 @@ LLVM_INSTANTIATE_REGISTRY(FrontendPluginRegistry)
namespace {
+/// DeserializedDeclsLineRangePrinter dumps ranges of deserialized declarations
+/// to aid debugging and bug minimization. It implements ASTConsumer and
+/// ASTDeserializationListener, so tha
@@ -49,6 +51,150 @@ LLVM_INSTANTIATE_REGISTRY(FrontendPluginRegistry)
namespace {
+/// DeserializedDeclsLineRangePrinter dumps ranges of deserialized declarations
+/// to aid debugging and bug minimization. It implements ASTConsumer and
+/// ASTDeserializationListener, so tha
@@ -49,6 +51,150 @@ LLVM_INSTANTIATE_REGISTRY(FrontendPluginRegistry)
namespace {
+/// DeserializedDeclsLineRangePrinter dumps ranges of deserialized declarations
+/// to aid debugging and bug minimization. It implements ASTConsumer and
+/// ASTDeserializationListener, so tha
@@ -49,6 +51,150 @@ LLVM_INSTANTIATE_REGISTRY(FrontendPluginRegistry)
namespace {
+/// DeserializedDeclsLineRangePrinter dumps ranges of deserialized declarations
+/// to aid debugging and bug minimization. It implements ASTConsumer and
+/// ASTDeserializationListener, so tha
https://github.com/VitaNuo updated
https://github.com/llvm/llvm-project/pull/133910
>From cfa057b4d43ebe7f94ccd4f387a94359beaa29b2 Mon Sep 17 00:00:00 2001
From: Viktoriia Bakalova
Date: Fri, 4 Apr 2025 17:45:24 +0200
Subject: [PATCH] This commit implements a CC1 flag
`-dump-deserialized-decla
https://github.com/VitaNuo updated
https://github.com/llvm/llvm-project/pull/133910
>From 6d61256a73c64ef4351266d6ef76067f5a2568db Mon Sep 17 00:00:00 2001
From: Viktoriia Bakalova
Date: Fri, 4 Apr 2025 13:40:55 +0200
Subject: [PATCH 1/2] [WIP] Implement -dump-deserialized-declaration-ranges
f
https://github.com/VitaNuo updated
https://github.com/llvm/llvm-project/pull/133910
>From 6d61256a73c64ef4351266d6ef76067f5a2568db Mon Sep 17 00:00:00 2001
From: Viktoriia Bakalova
Date: Fri, 4 Apr 2025 13:40:55 +0200
Subject: [PATCH 1/3] [WIP] Implement -dump-deserialized-declaration-ranges
f
@@ -139,16 +283,17 @@ FrontendAction::CreateWrappedASTConsumer(CompilerInstance
&CI,
return nullptr;
// If there are no registered plugins we don't need to wrap the consumer
- if (FrontendPluginRegistry::begin() == FrontendPluginRegistry::end())
-return Consumer;
+
@@ -49,6 +51,135 @@ LLVM_INSTANTIATE_REGISTRY(FrontendPluginRegistry)
namespace {
+/// Dumps deserialized declarations.
VitaNuo wrote:
Yes, sorry, I responded to the comment before pushing the actual change.
https://github.com/llvm/llvm-project/pull/133910
https://github.com/VitaNuo updated
https://github.com/llvm/llvm-project/pull/133910
>From 6d61256a73c64ef4351266d6ef76067f5a2568db Mon Sep 17 00:00:00 2001
From: Viktoriia Bakalova
Date: Fri, 4 Apr 2025 13:40:55 +0200
Subject: [PATCH] [WIP] Implement -dump-deserialized-declaration-ranges flag t
@@ -49,6 +51,135 @@ LLVM_INSTANTIATE_REGISTRY(FrontendPluginRegistry)
namespace {
+/// Dumps deserialized declarations.
VitaNuo wrote:
> If you want, you might use a comment to explain other non-trivial details,
> though, e.g. how the class must be used or
https://github.com/VitaNuo edited
https://github.com/llvm/llvm-project/pull/133910
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
https://github.com/VitaNuo edited
https://github.com/llvm/llvm-project/pull/133910
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
@@ -139,16 +283,17 @@ FrontendAction::CreateWrappedASTConsumer(CompilerInstance
&CI,
return nullptr;
// If there are no registered plugins we don't need to wrap the consumer
- if (FrontendPluginRegistry::begin() == FrontendPluginRegistry::end())
-return Consumer;
+
@@ -121,6 +252,19 @@ FrontendAction::CreateWrappedASTConsumer(CompilerInstance
&CI,
if (!Consumer)
return nullptr;
+ std::vector> Consumers;
+ llvm::StringRef PrintDeserializedDeclarationsPath =
CI.getFrontendOpts().PrintDeserializedDeclarationsPath;
+ if (!PrintDes
@@ -121,6 +252,19 @@ FrontendAction::CreateWrappedASTConsumer(CompilerInstance
&CI,
if (!Consumer)
return nullptr;
+ std::vector> Consumers;
+ llvm::StringRef PrintDeserializedDeclarationsPath =
CI.getFrontendOpts().PrintDeserializedDeclarationsPath;
+ if (!PrintDes
@@ -7968,6 +7968,10 @@ def print_dependency_directives_minimized_source :
Flag<["-"],
"print-dependency-directives-minimized-source">,
HelpText<"Print the output of the dependency directives source minimizer">;
}
+def print_deserialized_declarations : Joined<["-"],
+ "pri
@@ -49,6 +51,135 @@ LLVM_INSTANTIATE_REGISTRY(FrontendPluginRegistry)
namespace {
+/// Dumps deserialized declarations.
+class DeserializedDeclsLineRangePrinter : public
DelegatingDeserializationListener, public ASTConsumer {
+public:
+ explicit DeserializedDeclsLineRangePr
https://github.com/VitaNuo approved this pull request.
Thank you @hokein!
https://github.com/llvm/llvm-project/pull/133395
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
VitaNuo wrote:
> If anyone wants to take over/help, feel free to do so.
SGTM. I could reproduce the issue, but then ran out of capacity. I'm not sure
I'll be able to prioritize this soon vs. the module-related work.
https://github.com/llvm/llvm-project/pull/118480
https://github.com/VitaNuo created
https://github.com/llvm/llvm-project/pull/123962
Reverts llvm/llvm-project#122726
We're seeing a 8-10% performance regression due to this patch.
>From 1d94f0a4598ec08cd75fb7c1c7353ce318da2472 Mon Sep 17 00:00:00 2001
From: Viktoriia Bakalova <115406782+vita..
https://github.com/VitaNuo closed
https://github.com/llvm/llvm-project/pull/122726
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
VitaNuo wrote:
> need to pass -std=c++20.
> passing -DLLVM_USE_SANITIZER=Address in your cmake configuration should be
> enough for that.
Makes sense, I could reproduce the example.
https://github.com/llvm/llvm-project/pull/118480
___
cfe-commits mai
https://github.com/VitaNuo updated
https://github.com/llvm/llvm-project/pull/122726
>From b61110999596363bafdc94904356840febfcfaa5 Mon Sep 17 00:00:00 2001
From: Viktoriia Bakalova
Date: Tue, 14 Jan 2025 14:00:48 +0100
Subject: [PATCH 1/7] [WIP][Modules] Delay deserialization of preferred_name
https://github.com/VitaNuo updated
https://github.com/llvm/llvm-project/pull/122726
>From b61110999596363bafdc94904356840febfcfaa5 Mon Sep 17 00:00:00 2001
From: Viktoriia Bakalova
Date: Tue, 14 Jan 2025 14:00:48 +0100
Subject: [PATCH 1/6] [WIP][Modules] Delay deserialization of preferred_name
VitaNuo wrote:
Thank you for the review @ChuanqiXu9!
> (1) Hardcoding is generally not good. And even if we have to, e.g., (we don't
> have an automatic mechanism to check if we need to defer an attribute), let's
> avoid hardcoding in both reader side and writer side. We can make this by
> ad
https://github.com/VitaNuo updated
https://github.com/llvm/llvm-project/pull/122726
>From b61110999596363bafdc94904356840febfcfaa5 Mon Sep 17 00:00:00 2001
From: Viktoriia Bakalova
Date: Tue, 14 Jan 2025 14:00:48 +0100
Subject: [PATCH 1/5] [WIP][Modules] Delay deserialization of preferred_name
@@ -10079,6 +10079,11 @@ void ASTReader::finishPendingActions() {
}
PendingDeducedVarTypes.clear();
+// Load the delayed preferred name attributes.
+for (unsigned I = 0; I != PendingDeferredAttributes.size(); ++I)
+ loadDeferredAttribute(PendingDeferredAtt
@@ -3159,13 +3164,36 @@ Attr *ASTRecordReader::readAttr() {
return New;
}
-/// Reads attributes from the current stream position.
-void ASTRecordReader::readAttributes(AttrVec &Attrs) {
+/// Reads attributes from the current stream position, advancing Idx.
+/// For some attr
@@ -3159,13 +3164,36 @@ Attr *ASTRecordReader::readAttr() {
return New;
}
-/// Reads attributes from the current stream position.
-void ASTRecordReader::readAttributes(AttrVec &Attrs) {
+/// Reads attributes from the current stream position, advancing Idx.
+/// For some attr
https://github.com/VitaNuo updated
https://github.com/llvm/llvm-project/pull/122726
>From b61110999596363bafdc94904356840febfcfaa5 Mon Sep 17 00:00:00 2001
From: Viktoriia Bakalova
Date: Tue, 14 Jan 2025 14:00:48 +0100
Subject: [PATCH 1/4] [WIP][Modules] Delay deserialization of preferred_name
https://github.com/VitaNuo updated
https://github.com/llvm/llvm-project/pull/122726
>From b61110999596363bafdc94904356840febfcfaa5 Mon Sep 17 00:00:00 2001
From: Viktoriia Bakalova
Date: Tue, 14 Jan 2025 14:00:48 +0100
Subject: [PATCH 1/3] [WIP][Modules] Delay deserialization of preferred_name
VitaNuo wrote:
> Here's a small reprocase (thanks to cvise for getting it)
The repro doesn't compile in this shape, I've changed it to
```
template
constexpr InputIterator find_if(InputIterator first, Predicate pred) {
if (pred(*first))
;
return first;
}
template
struct basic_string_
VitaNuo wrote:
> The code in https://github.com/llvm/llvm-project/pull/122726 looks better. I
> didn't do detailed review since it is marked WIP.
It's not WIP anymore. Feel free to review, thanks a lot in advance!
https://github.com/llvm/llvm-project/pull/122250
___
https://github.com/VitaNuo edited
https://github.com/llvm/llvm-project/pull/122726
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
https://github.com/VitaNuo closed
https://github.com/llvm/llvm-project/pull/122250
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
https://github.com/VitaNuo edited
https://github.com/llvm/llvm-project/pull/122250
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
@@ -3129,42 +3129,86 @@ class AttrReader {
OMPTraitInfo *readOMPTraitInfo() { return Reader.readOMPTraitInfo(); }
template T *readDeclAs() { return Reader.readDeclAs(); }
+
+ AttributeCommonInfo readAttributeCommonInfo() {
+IdentifierInfo *AttrName = readIdentifier()
https://github.com/VitaNuo edited
https://github.com/llvm/llvm-project/pull/122250
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
@@ -9860,6 +9860,33 @@ void ASTReader::finishPendingActions() {
}
PendingDeducedVarTypes.clear();
+ASTContext &Context = getContext();
+for (unsigned I = 0; I != PendingPreferredNameAttributes.size(); ++I) {
+ auto *D = PendingPreferredNameAttributes[I].D;
@@ -337,6 +337,14 @@ class ASTRecordReader
/// Reads attributes from the current stream position, advancing Idx.
void readAttributes(AttrVec &Attrs);
+ /// Reads one attribute from the current stream position, advancing Idx.
+ /// Parent Decl is provided to delay attribu
@@ -1156,6 +1158,19 @@ class ASTReader
SmallVector, 16>
PendingDeducedVarTypes;
+ struct PendingPreferredNameAttribute {
+Decl *D;
+AttributeCommonInfo Info;
+serialization::TypeID TypeID;
+bool isInherited;
+bool isImplicit;
+bool isPackExpans
@@ -3129,42 +3129,86 @@ class AttrReader {
OMPTraitInfo *readOMPTraitInfo() { return Reader.readOMPTraitInfo(); }
template T *readDeclAs() { return Reader.readDeclAs(); }
+
+ AttributeCommonInfo readAttributeCommonInfo() {
+IdentifierInfo *AttrName = readIdentifier()
VitaNuo wrote:
> BTW, it is better to have better explanation in the summary. I know you
> explained it in the issue. But it will be better for other readers after you
> land the PR.
Thanks @ChuanqiXu9, I have added a detailed summary
https://github.com/llvm/llvm-project/pull/122726.
After s
VitaNuo wrote:
> Can you add more details to the patch summary explaining why the changes are
> needed? That makes it easier for folks to review the patch but also helps us
> in the future when digging through historical changes. Thanks!
Sure, thank you for the comment.
https://github.com/llv
https://github.com/VitaNuo edited
https://github.com/llvm/llvm-project/pull/122726
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
https://github.com/VitaNuo updated
https://github.com/llvm/llvm-project/pull/122726
>From b61110999596363bafdc94904356840febfcfaa5 Mon Sep 17 00:00:00 2001
From: Viktoriia Bakalova
Date: Tue, 14 Jan 2025 14:00:48 +0100
Subject: [PATCH 1/2] [WIP][Modules] Delay deserialization of preferred_name
https://github.com/VitaNuo updated
https://github.com/llvm/llvm-project/pull/122726
>From b61110999596363bafdc94904356840febfcfaa5 Mon Sep 17 00:00:00 2001
From: Viktoriia Bakalova
Date: Tue, 14 Jan 2025 14:00:48 +0100
Subject: [PATCH] [WIP][Modules] Delay deserialization of preferred_name
att
https://github.com/VitaNuo edited
https://github.com/llvm/llvm-project/pull/122726
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
@@ -3134,6 +3139,17 @@ Attr *ASTRecordReader::readAttr() {
// Kind is stored as a 1-based integer because 0 is used to indicate a null
// Attr pointer.
auto Kind = static_cast(V - 1);
+ if (Kind == attr::PreferredName && D != nullptr) {
+if (D != nullptr) {
-
@@ -4424,6 +4454,51 @@ void ASTReader::loadPendingDeclChain(Decl *FirstLocal,
uint64_t LocalOffset) {
ASTDeclReader::attachLatestDecl(CanonDecl, MostRecent);
}
+void ASTReader::loadPreferredNameAttribute(
+const PendingPreferredNameAttribute &PreferredNameAttribute) {
+
@@ -4925,6 +4930,11 @@ void ASTRecordWriter::AddAttr(const Attr *A) {
Record.push_back(A->isRegularKeywordAttribute());
#include "clang/Serialization/AttrPCHWrite.inc"
+
+ if (A->getKind() == attr::PreferredName)
+// Record the actual size of preferred_name attribute (-
VitaNuo wrote:
> The code in https://github.com/llvm/llvm-project/pull/122726 looks better. I
> didn't do detailed review since it is marked WIP.
Thanks for the feedback. I will then try to generalize
https://github.com/llvm/llvm-project/pull/122726 to delay all/multiple
attributes. Dependin
VitaNuo wrote:
I have pushed an alternative approach (reading the attribute at record level)
to https://github.com/llvm/llvm-project/pull/122726.
If we agree that this approach is the one to go in general, I can try to
generalize it to multiple attributes.
https://github.com/llvm/llvm-project/
https://github.com/VitaNuo updated
https://github.com/llvm/llvm-project/pull/122726
>From 4266533a27b7ecafb96df081682ce0ae8fd32584 Mon Sep 17 00:00:00 2001
From: Viktoriia Bakalova
Date: Mon, 13 Jan 2025 16:26:32 +0100
Subject: [PATCH 1/2] [WIP][Modules] Delay deserialization of preferred_name
https://github.com/VitaNuo created
https://github.com/llvm/llvm-project/pull/122726
…ecord level.
>From 4266533a27b7ecafb96df081682ce0ae8fd32584 Mon Sep 17 00:00:00 2001
From: Viktoriia Bakalova
Date: Mon, 13 Jan 2025 16:26:32 +0100
Subject: [PATCH] [WIP][Modules] Delay deserialization of pref
VitaNuo wrote:
Alternative approach to https://github.com/llvm/llvm-project/pull/122250.
https://github.com/llvm/llvm-project/pull/122726
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commit
https://github.com/VitaNuo updated
https://github.com/llvm/llvm-project/pull/122250
>From 0a615576181a538bc0d8eff6499ad87cbdeb89c3 Mon Sep 17 00:00:00 2001
From: Viktoriia Bakalova
Date: Thu, 9 Jan 2025 09:36:35 +0100
Subject: [PATCH 1/8] [WIP] Delay reading type source info of the
preferred_n
https://github.com/VitaNuo updated
https://github.com/llvm/llvm-project/pull/122250
>From 0a615576181a538bc0d8eff6499ad87cbdeb89c3 Mon Sep 17 00:00:00 2001
From: Viktoriia Bakalova
Date: Thu, 9 Jan 2025 09:36:35 +0100
Subject: [PATCH 1/7] [WIP] Delay reading type source info of the
preferred_n
https://github.com/VitaNuo updated
https://github.com/llvm/llvm-project/pull/122250
>From 0a615576181a538bc0d8eff6499ad87cbdeb89c3 Mon Sep 17 00:00:00 2001
From: Viktoriia Bakalova
Date: Thu, 9 Jan 2025 09:36:35 +0100
Subject: [PATCH 1/6] [WIP] Delay reading type source info of the
preferred_n
https://github.com/VitaNuo updated
https://github.com/llvm/llvm-project/pull/122250
>From 0a615576181a538bc0d8eff6499ad87cbdeb89c3 Mon Sep 17 00:00:00 2001
From: Viktoriia Bakalova
Date: Thu, 9 Jan 2025 09:36:35 +0100
Subject: [PATCH 1/5] [WIP] Delay reading type source info of the
preferred_n
https://github.com/VitaNuo updated
https://github.com/llvm/llvm-project/pull/122250
>From 0a615576181a538bc0d8eff6499ad87cbdeb89c3 Mon Sep 17 00:00:00 2001
From: Viktoriia Bakalova
Date: Thu, 9 Jan 2025 09:36:35 +0100
Subject: [PATCH 1/4] [WIP] Delay reading type source info of the
preferred_n
https://github.com/VitaNuo updated
https://github.com/llvm/llvm-project/pull/122250
>From 0a615576181a538bc0d8eff6499ad87cbdeb89c3 Mon Sep 17 00:00:00 2001
From: Viktoriia Bakalova
Date: Thu, 9 Jan 2025 09:36:35 +0100
Subject: [PATCH 1/2] [WIP] Delay reading type source info of the
preferred_n
https://github.com/VitaNuo created
https://github.com/llvm/llvm-project/pull/122250
None
>From 0a615576181a538bc0d8eff6499ad87cbdeb89c3 Mon Sep 17 00:00:00 2001
From: Viktoriia Bakalova
Date: Thu, 9 Jan 2025 09:36:35 +0100
Subject: [PATCH] [WIP] Delay reading type source info of the preferred_
https://github.com/VitaNuo closed
https://github.com/llvm/llvm-project/pull/117346
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
https://github.com/VitaNuo updated
https://github.com/llvm/llvm-project/pull/117346
>From abd3c27d94b7f18990377d518aa8e14b32659b5f Mon Sep 17 00:00:00 2001
From: Viktoriia Bakalova
Date: Fri, 22 Nov 2024 17:26:57 +0100
Subject: [PATCH 1/3] [clang][codegen] Mention the invariant that LLVM
deman
@@ -2047,6 +2047,14 @@ StringRef CodeGenModule::getMangledName(GlobalDecl GD) {
GD.getWithKernelReferenceKind(KernelReferenceKind::Kernel),
ND));
+ // This invariant should hold true in the future.
+ // Prior work:
+ //
https://discourse.l
VitaNuo wrote:
After some internal discussions, we have decided to put this work on hold.
It still remains an important problem. I have posted some stats for various
open source projects in the
[RFC](https://discourse.llvm.org/t/rfc-clang-diagnostic-for-demangling-failures/82835).
Internally,
https://github.com/VitaNuo updated
https://github.com/llvm/llvm-project/pull/117346
>From abd3c27d94b7f18990377d518aa8e14b32659b5f Mon Sep 17 00:00:00 2001
From: Viktoriia Bakalova
Date: Fri, 22 Nov 2024 17:26:57 +0100
Subject: [PATCH 1/2] [clang][codegen] Mention the invariant that LLVM
deman
https://github.com/VitaNuo created
https://github.com/llvm/llvm-project/pull/117346
…able to handle mangled names generated by clang.
https://discourse.llvm.org/t/rfc-clang-diagnostic-for-demangling-failures/82835/8
Since we're putting the work on the above RFC on hold, let's leave a comment i
VitaNuo wrote:
> Thanks! I thought i commented elsewhere, but I think `diagnose` vs
> `diagnostics` for the flags/etc makes more sense:
> `fdiagnostics_demangler_failures` should be `-fdiagnose_demangler_failures`,
> it is the correct language-tense.
Thanks! I think it was `demangling` vs. `d
VitaNuo wrote:
The RFC is published
https://discourse.llvm.org/t/rfc-clang-diagnostic-for-demangling-failures/82835.
https://github.com/llvm/llvm-project/pull/111391
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-b
@@ -462,6 +462,9 @@ ENUM_CODEGENOPT(ZeroCallUsedRegs,
llvm::ZeroCallUsedRegs::ZeroCallUsedRegsKind,
/// non-deleting destructors. (No effect on Microsoft ABI.)
CODEGENOPT(CtorDtorReturnThis, 1, 0)
+/// Whether to validate if a produced mangled name can be demangled with LLVM
@@ -41,7 +41,9 @@
#include "clang/Basic/CharInfo.h"
#include "clang/Basic/CodeGenOptions.h"
#include "clang/Basic/Diagnostic.h"
+#include "clang/Basic/DiagnosticFrontend.h"
VitaNuo wrote:
Thanks!
https://github.com/llvm/llvm-project/pull/111391
__
VitaNuo wrote:
> Close for me, jsut a couple of small requests.
>
> Thanks for your patience on this response, I've been at LLVMDev all week.
Thanks Erich for the approval.
I will publish an RFC for this in the coming days as well, still gathering some
data from test runs.
https://github.com
https://github.com/VitaNuo edited
https://github.com/llvm/llvm-project/pull/111391
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
https://github.com/VitaNuo edited
https://github.com/llvm/llvm-project/pull/111391
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
@@ -1967,6 +1967,10 @@ def fclang_abi_compat_EQ : Joined<["-"],
"fclang-abi-compat=">, Group,
MetaVarName<"">, Values<".,latest">,
HelpText<"Attempt to match the ABI of Clang ">;
+def fno_demangling_failures: Flag<["-"], "fno-demangling-failures">,
Group,
@@ -41,7 +41,9 @@
#include "clang/Basic/CharInfo.h"
#include "clang/Basic/CodeGenOptions.h"
#include "clang/Basic/Diagnostic.h"
+#include "clang/Basic/DiagnosticFrontend.h"
VitaNuo wrote:
Sorry, most of those are a result of multiple iterations of this patch.
@@ -384,4 +384,8 @@ def warn_hlsl_langstd_minimal :
Warning<"support for HLSL language version %0 is incomplete, "
"recommend using %1 instead">,
InGroup;
+
+def warn_name_cannot_be_demangled : Warning<
+ "cannot demangle the name '%0'">,
+ InGroup;
@@ -1967,6 +1967,10 @@ def fclang_abi_compat_EQ : Joined<["-"],
"fclang-abi-compat=">, Group,
MetaVarName<"">, Values<".,latest">,
HelpText<"Attempt to match the ABI of Clang ">;
+def fdemangling_failures: Flag<["-"], "fdemangling-failures">,
Group,
VitaNu
1 - 100 of 189 matches
Mail list logo