@@ -2001,3 +1932,258 @@ NormalizedConstraint::getFoldExpandedConstraint() const
{
"getFoldExpandedConstraint called on non-fold-expanded constraint.");
return cast(Constraint);
}
+
+//
+//
+// Subsumption ---
@@ -170,102 +132,112 @@ struct alignas(ConstraintAlignment)
FoldExpandedConstraint {
const Expr *Pattern)
: Kind(K), Constraint(std::move(C)), Pattern(Pattern) {};
- template
- bool subsumes(const FoldExpandedConstraint &Other,
-
https://github.com/cor3ntin updated
https://github.com/llvm/llvm-project/pull/132849
>From b5b5275093f6942238536834c6508551f7ceffd8 Mon Sep 17 00:00:00 2001
From: Corentin Jabot
Date: Sun, 16 Mar 2025 23:34:19 +0100
Subject: [PATCH 1/6] [Clang] Improve subsumption.
The main goal of this patch
@@ -170,102 +132,112 @@ struct alignas(ConstraintAlignment)
FoldExpandedConstraint {
const Expr *Pattern)
: Kind(K), Constraint(std::move(C)), Pattern(Pattern) {};
- template
- bool subsumes(const FoldExpandedConstraint &Other,
-
@@ -2001,3 +1932,258 @@ NormalizedConstraint::getFoldExpandedConstraint() const
{
"getFoldExpandedConstraint called on non-fold-expanded constraint.");
return cast(Constraint);
}
+
+//
+//
+// Subsumption ---
https://github.com/AaronBallman edited
https://github.com/llvm/llvm-project/pull/132849
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
https://github.com/cor3ntin closed
https://github.com/llvm/llvm-project/pull/132849
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
@@ -2001,3 +1932,258 @@ NormalizedConstraint::getFoldExpandedConstraint() const
{
"getFoldExpandedConstraint called on non-fold-expanded constraint.");
return cast(Constraint);
}
+
+//
+//
+// Subsumption ---
@@ -2001,3 +1932,258 @@ NormalizedConstraint::getFoldExpandedConstraint() const
{
"getFoldExpandedConstraint called on non-fold-expanded constraint.");
return cast(Constraint);
}
+
+//
+//
+// Subsumption ---
@@ -2001,3 +1932,258 @@ NormalizedConstraint::getFoldExpandedConstraint() const
{
"getFoldExpandedConstraint called on non-fold-expanded constraint.");
return cast(Constraint);
}
+
+//
+//
+// Subsumption ---
https://github.com/AaronBallman approved this pull request.
LGTM
https://github.com/llvm/llvm-project/pull/132849
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
@@ -2001,3 +1932,258 @@ NormalizedConstraint::getFoldExpandedConstraint() const
{
"getFoldExpandedConstraint called on non-fold-expanded constraint.");
return cast(Constraint);
}
+
+//
+//
+// Subsumption ---
@@ -170,102 +132,112 @@ struct alignas(ConstraintAlignment)
FoldExpandedConstraint {
const Expr *Pattern)
: Kind(K), Constraint(std::move(C)), Pattern(Pattern) {};
- template
- bool subsumes(const FoldExpandedConstraint &Other,
-
https://github.com/cor3ntin updated
https://github.com/llvm/llvm-project/pull/132849
>From b5b5275093f6942238536834c6508551f7ceffd8 Mon Sep 17 00:00:00 2001
From: Corentin Jabot
Date: Sun, 16 Mar 2025 23:34:19 +0100
Subject: [PATCH 01/12] [Clang] Improve subsumption.
The main goal of this patc
https://github.com/cor3ntin updated
https://github.com/llvm/llvm-project/pull/132849
>From b5b5275093f6942238536834c6508551f7ceffd8 Mon Sep 17 00:00:00 2001
From: Corentin Jabot
Date: Sun, 16 Mar 2025 23:34:19 +0100
Subject: [PATCH 01/11] [Clang] Improve subsumption.
The main goal of this patc
@@ -170,102 +132,112 @@ struct alignas(ConstraintAlignment)
FoldExpandedConstraint {
const Expr *Pattern)
: Kind(K), Constraint(std::move(C)), Pattern(Pattern) {};
- template
- bool subsumes(const FoldExpandedConstraint &Other,
-
@@ -170,102 +132,112 @@ struct alignas(ConstraintAlignment)
FoldExpandedConstraint {
const Expr *Pattern)
: Kind(K), Constraint(std::move(C)), Pattern(Pattern) {};
- template
- bool subsumes(const FoldExpandedConstraint &Other,
-
@@ -170,102 +132,112 @@ struct alignas(ConstraintAlignment)
FoldExpandedConstraint {
const Expr *Pattern)
: Kind(K), Constraint(std::move(C)), Pattern(Pattern) {};
- template
- bool subsumes(const FoldExpandedConstraint &Other,
-
@@ -170,102 +132,112 @@ struct alignas(ConstraintAlignment)
FoldExpandedConstraint {
const Expr *Pattern)
: Kind(K), Constraint(std::move(C)), Pattern(Pattern) {};
- template
- bool subsumes(const FoldExpandedConstraint &Other,
-
https://github.com/zyn0217 approved this pull request.
One small nit
Otherwise looks great, thanks!
https://github.com/llvm/llvm-project/pull/132849
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listin
https://github.com/zyn0217 edited
https://github.com/llvm/llvm-project/pull/132849
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
@@ -170,102 +132,112 @@ struct alignas(ConstraintAlignment)
FoldExpandedConstraint {
const Expr *Pattern)
: Kind(K), Constraint(std::move(C)), Pattern(Pattern) {};
- template
- bool subsumes(const FoldExpandedConstraint &Other,
-
@@ -2001,3 +1932,260 @@ NormalizedConstraint::getFoldExpandedConstraint() const
{
"getFoldExpandedConstraint called on non-fold-expanded constraint.");
return cast(Constraint);
}
+
+//
+//
+// Subsumption ---
@@ -0,0 +1,194 @@
+// RUN: %clang_cc1 -fsyntax-only -verify -std=c++20 %s
+
+namespace A {
+template
+concept C = true;
+
+template
+requires C && C
+void f() {}
+
+template
+requires C && true
+void f() {}
+
+template <>
+void f();
+}
+
+namespace B {
+template
+concept A = t
@@ -2001,3 +1932,260 @@ NormalizedConstraint::getFoldExpandedConstraint() const
{
"getFoldExpandedConstraint called on non-fold-expanded constraint.");
return cast(Constraint);
}
+
+//
+//
+// Subsumption ---
@@ -2001,3 +1932,260 @@ NormalizedConstraint::getFoldExpandedConstraint() const
{
"getFoldExpandedConstraint called on non-fold-expanded constraint.");
return cast(Constraint);
}
+
+//
+//
+// Subsumption ---
https://github.com/cor3ntin updated
https://github.com/llvm/llvm-project/pull/132849
>From b5b5275093f6942238536834c6508551f7ceffd8 Mon Sep 17 00:00:00 2001
From: Corentin Jabot
Date: Sun, 16 Mar 2025 23:34:19 +0100
Subject: [PATCH 01/10] [Clang] Improve subsumption.
The main goal of this patc
@@ -2001,3 +1932,260 @@ NormalizedConstraint::getFoldExpandedConstraint() const
{
"getFoldExpandedConstraint called on non-fold-expanded constraint.");
return cast(Constraint);
}
+
+//
+//
+// Subsumption ---
@@ -2001,3 +1932,260 @@ NormalizedConstraint::getFoldExpandedConstraint() const
{
"getFoldExpandedConstraint called on non-fold-expanded constraint.");
return cast(Constraint);
}
+
+//
+//
+// Subsumption ---
@@ -2001,3 +1932,260 @@ NormalizedConstraint::getFoldExpandedConstraint() const
{
"getFoldExpandedConstraint called on non-fold-expanded constraint.");
return cast(Constraint);
}
+
+//
+//
+// Subsumption ---
@@ -2001,3 +1932,260 @@ NormalizedConstraint::getFoldExpandedConstraint() const
{
"getFoldExpandedConstraint called on non-fold-expanded constraint.");
return cast(Constraint);
}
+
+//
+//
+// Subsumption ---
https://github.com/MagentaTreehouse edited
https://github.com/llvm/llvm-project/pull/132849
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
@@ -2001,3 +1932,260 @@ NormalizedConstraint::getFoldExpandedConstraint() const
{
"getFoldExpandedConstraint called on non-fold-expanded constraint.");
return cast(Constraint);
}
+
+//
+//
+// Subsumption ---
@@ -2001,3 +1932,260 @@ NormalizedConstraint::getFoldExpandedConstraint() const
{
"getFoldExpandedConstraint called on non-fold-expanded constraint.");
return cast(Constraint);
}
+
+//
+//
+// Subsumption ---
https://github.com/MagentaTreehouse commented:
Some comments on map lookup, plus other minor suggestions.
https://github.com/llvm/llvm-project/pull/132849
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/li
https://github.com/Sirraide commented:
Just a minor comment
https://github.com/llvm/llvm-project/pull/132849
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
https://github.com/cor3ntin updated
https://github.com/llvm/llvm-project/pull/132849
>From b5b5275093f6942238536834c6508551f7ceffd8 Mon Sep 17 00:00:00 2001
From: Corentin Jabot
Date: Sun, 16 Mar 2025 23:34:19 +0100
Subject: [PATCH 1/9] [Clang] Improve subsumption.
The main goal of this patch
https://github.com/cor3ntin edited
https://github.com/llvm/llvm-project/pull/132849
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
https://github.com/cor3ntin updated
https://github.com/llvm/llvm-project/pull/132849
>From b5b5275093f6942238536834c6508551f7ceffd8 Mon Sep 17 00:00:00 2001
From: Corentin Jabot
Date: Sun, 16 Mar 2025 23:34:19 +0100
Subject: [PATCH 1/8] [Clang] Improve subsumption.
The main goal of this patch
@@ -0,0 +1,194 @@
+// RUN: %clang_cc1 -fsyntax-only -verify -std=c++20 %s
+
+namespace A {
+template
+concept C = true;
+
+template
+requires C && C
+void f() {}
+
+template
+requires C && true
+void f() {}
+
+template <>
+void f();
+}
+
+namespace B {
+template
+concept A = t
https://github.com/cor3ntin updated
https://github.com/llvm/llvm-project/pull/132849
>From b5b5275093f6942238536834c6508551f7ceffd8 Mon Sep 17 00:00:00 2001
From: Corentin Jabot
Date: Sun, 16 Mar 2025 23:34:19 +0100
Subject: [PATCH 1/7] [Clang] Improve subsumption.
The main goal of this patch
https://github.com/cor3ntin updated
https://github.com/llvm/llvm-project/pull/132849
>From b5b5275093f6942238536834c6508551f7ceffd8 Mon Sep 17 00:00:00 2001
From: Corentin Jabot
Date: Sun, 16 Mar 2025 23:34:19 +0100
Subject: [PATCH 1/5] [Clang] Improve subsumption.
The main goal of this patch
github-actions[bot] wrote:
:warning: C/C++ code formatter, clang-format found issues in your code.
:warning:
You can test this locally with the following command:
``bash
git-clang-format --diff c1ed4f642396c1bbea2cc0cd6d2e46ff674145a4
89d4851dc81ed27706e1c7fd7522c4d5fd4c1074 --e
https://github.com/cor3ntin updated
https://github.com/llvm/llvm-project/pull/132849
>From b5b5275093f6942238536834c6508551f7ceffd8 Mon Sep 17 00:00:00 2001
From: Corentin Jabot
Date: Sun, 16 Mar 2025 23:34:19 +0100
Subject: [PATCH 1/4] [Clang] Improve subsumption.
The main goal of this patch
https://github.com/Sirraide edited
https://github.com/llvm/llvm-project/pull/132849
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
@@ -2001,3 +1932,318 @@ NormalizedConstraint::getFoldExpandedConstraint() const
{
"getFoldExpandedConstraint called on non-fold-expanded constraint.");
return cast(Constraint);
}
+
+//
+//
+// Subsumption ---
https://github.com/cor3ntin updated
https://github.com/llvm/llvm-project/pull/132849
>From b5b5275093f6942238536834c6508551f7ceffd8 Mon Sep 17 00:00:00 2001
From: Corentin Jabot
Date: Sun, 16 Mar 2025 23:34:19 +0100
Subject: [PATCH 1/2] [Clang] Improve subsumption.
The main goal of this patch
@@ -2001,3 +1932,304 @@ NormalizedConstraint::getFoldExpandedConstraint() const
{
"getFoldExpandedConstraint called on non-fold-expanded constraint.");
return cast(Constraint);
}
+
+//
+//
+// -
@@ -0,0 +1,194 @@
+// RUN: %clang_cc1 -fsyntax-only -verify -std=c++20 %s
+
+namespace A {
+template
+concept C = true;
+
+template
+requires C && C
+void f() {}
+
+template
+requires C && true
+void f() {}
+
+template <>
+void f();
+}
+
+namespace B {
+template
+concept A = t
llvmbot wrote:
@llvm/pr-subscribers-clang
Author: cor3ntin (cor3ntin)
Changes
The main goal of this patch is to improve the
performance of concept subsumption by
- Making sure literal (atomic) clauses are de-duplicated (Whether 2 atomic
constraint is established during the initial norma
https://github.com/cor3ntin created
https://github.com/llvm/llvm-project/pull/132849
The main goal of this patch is to improve the
performance of concept subsumption by
- Making sure literal (atomic) clauses are de-duplicated (Whether 2 atomic
constraint is established during the initial norm
51 matches
Mail list logo