https://github.com/ChuanqiXu9 updated
https://github.com/llvm/llvm-project/pull/83108
>From 1f7c6650f739092a1b8908de3793aa8bbdc7de34 Mon Sep 17 00:00:00 2001
From: Vassil Vassilev
Date: Sun, 7 Jan 2018 15:16:11 +0200
Subject: [PATCH 1/2] D41416: [modules] [pch] Do not deserialize all lazy
temp
Author: Chuanqi Xu
Date: 2024-07-10T11:23:14+08:00
New Revision: 62a7562b828ee9df6a41b6ce3dfda7c5511816a6
URL:
https://github.com/llvm/llvm-project/commit/62a7562b828ee9df6a41b6ce3dfda7c5511816a6
DIFF:
https://github.com/llvm/llvm-project/commit/62a7562b828ee9df6a41b6ce3dfda7c5511816a6.diff
LO
Author: Chuanqi Xu
Date: 2024-07-10T10:58:18+08:00
New Revision: 91d40ef6e369a73b0147d9153a95c3bc63e14102
URL:
https://github.com/llvm/llvm-project/commit/91d40ef6e369a73b0147d9153a95c3bc63e14102
DIFF:
https://github.com/llvm/llvm-project/commit/91d40ef6e369a73b0147d9153a95c3bc63e14102.diff
LO
ChuanqiXu9 wrote:
Given this patch has another unexpected behavior in windows
(https://github.com/llvm/llvm-project/issues/97447), I'd like to revert this
temporarily to wait for the response from Windows devs and your reproducer
@mizvekov
https://github.com/llvm/llvm-project/pull/75912
ChuanqiXu9 wrote:
> FYI, the commit
> [99873b3](https://github.com/llvm/llvm-project/commit/99873b35da7ecb905143c8a6b8deca4d4416f1a9),
> which lists this PR as a motivator, causes breakage building a project,
> which I am still looking for a reduced test case.
>
> The commit is not NFC despit
ChuanqiXu9 wrote:
Given we are going to branch clang19 in the end of the month, it is highly
possible that we can't land sufficient patches before that. Note that even if
we land this patch before that, the support of modules in clangd is expected to
very slow for real world applications. See
@@ -652,6 +652,141 @@ in the future. The expected roadmap for Reduced BMIs as
of Clang 19.x is:
comes, the term BMI will refer to the Reduced BMI and the Full BMI will only
be meaningful to build systems which elect to support two-phase compilation.
+Experimental No Tra
https://github.com/ChuanqiXu9 updated
https://github.com/llvm/llvm-project/pull/96453
>From a035ae25314f3168f73108988f2bb7671e7d9e7f Mon Sep 17 00:00:00 2001
From: Chuanqi Xu
Date: Mon, 24 Jun 2024 11:41:23 +0800
Subject: [PATCH 1/5] [Doc] Update documentation for no-transitive-change
---
cla
https://github.com/ChuanqiXu9 updated
https://github.com/llvm/llvm-project/pull/83108
>From 270cdac974482a9852fa8c1bff517d444a5f51f2 Mon Sep 17 00:00:00 2001
From: Vassil Vassilev
Date: Sun, 7 Jan 2018 15:16:11 +0200
Subject: [PATCH 1/2] D41416: [modules] [pch] Do not deserialize all lazy
temp
@@ -652,6 +652,141 @@ in the future. The expected roadmap for Reduced BMIs as
of Clang 19.x is:
comes, the term BMI will refer to the Reduced BMI and the Full BMI will only
be meaningful to build systems which elect to support two-phase compilation.
+Experimental No Tra
ChuanqiXu9 wrote:
> Hi, sorry if this is off topic -- How can I try this PR?
>
> I've done the following:
>
> 1. checked out the latest commit on the `clangmodules` branch
> ([16541c8](https://github.com/llvm/llvm-project/commit/16541c8bf44cf38497ce6fd7377ee966d61be5aa)),
> and built it from
https://github.com/ChuanqiXu9 approved this pull request.
LGTM as it looks like not affecting C++20 modules.
https://github.com/llvm/llvm-project/pull/97654
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/
Author: Chuanqi Xu
Date: 2024-07-02T13:55:30+08:00
New Revision: 7ee421d29612ae919edfe7250b87e3c738d66a26
URL:
https://github.com/llvm/llvm-project/commit/7ee421d29612ae919edfe7250b87e3c738d66a26
DIFF:
https://github.com/llvm/llvm-project/commit/7ee421d29612ae919edfe7250b87e3c738d66a26.diff
LO
Author: Chuanqi Xu
Date: 2024-07-02T11:43:26+08:00
New Revision: 18f3bcbb13ca83d33223b00761d8cddf463e9ffb
URL:
https://github.com/llvm/llvm-project/commit/18f3bcbb13ca83d33223b00761d8cddf463e9ffb
DIFF:
https://github.com/llvm/llvm-project/commit/18f3bcbb13ca83d33223b00761d8cddf463e9ffb.diff
LO
@@ -652,6 +652,141 @@ in the future. The expected roadmap for Reduced BMIs as
of Clang 19.x is:
comes, the term BMI will refer to the Reduced BMI and the Full BMI will only
be meaningful to build systems which elect to support two-phase compilation.
+Experimental Non Ca
@@ -652,6 +652,141 @@ in the future. The expected roadmap for Reduced BMIs as
of Clang 19.x is:
comes, the term BMI will refer to the Reduced BMI and the Full BMI will only
be meaningful to build systems which elect to support two-phase compilation.
+Experimental Non Ca
@@ -652,6 +652,141 @@ in the future. The expected roadmap for Reduced BMIs as
of Clang 19.x is:
comes, the term BMI will refer to the Reduced BMI and the Full BMI will only
be meaningful to build systems which elect to support two-phase compilation.
+Experimental Non Ca
@@ -652,6 +652,141 @@ in the future. The expected roadmap for Reduced BMIs as
of Clang 19.x is:
comes, the term BMI will refer to the Reduced BMI and the Full BMI will only
be meaningful to build systems which elect to support two-phase compilation.
+Experimental Non Ca
@@ -652,6 +652,141 @@ in the future. The expected roadmap for Reduced BMIs as
of Clang 19.x is:
comes, the term BMI will refer to the Reduced BMI and the Full BMI will only
be meaningful to build systems which elect to support two-phase compilation.
+Experimental No Tra
@@ -157,6 +157,13 @@ here. Generic improvements to Clang as a whole or to its
underlying
infrastructure are described first, followed by language-specific
sections with improvements to Clang's support for those languages.
+- Clang implemented improvements to BMI of C++20 Modu
@@ -652,6 +652,141 @@ in the future. The expected roadmap for Reduced BMIs as
of Clang 19.x is:
comes, the term BMI will refer to the Reduced BMI and the Full BMI will only
be meaningful to build systems which elect to support two-phase compilation.
+Experimental Non Ca
https://github.com/ChuanqiXu9 updated
https://github.com/llvm/llvm-project/pull/96453
>From a035ae25314f3168f73108988f2bb7671e7d9e7f Mon Sep 17 00:00:00 2001
From: Chuanqi Xu
Date: Mon, 24 Jun 2024 11:41:23 +0800
Subject: [PATCH 1/4] [Doc] Update documentation for no-transitive-change
---
cla
https://github.com/ChuanqiXu9 approved this pull request.
LGTM
https://github.com/llvm/llvm-project/pull/97221
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
Author: Chuanqi Xu
Date: 2024-06-28T16:12:50+08:00
New Revision: 76864e6af134aa240069d42ba15e0b89fd7d6b4c
URL:
https://github.com/llvm/llvm-project/commit/76864e6af134aa240069d42ba15e0b89fd7d6b4c
DIFF:
https://github.com/llvm/llvm-project/commit/76864e6af134aa240069d42ba15e0b89fd7d6b4c.diff
LO
ChuanqiXu9 wrote:
@kadircet ping~
https://github.com/llvm/llvm-project/pull/66462
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
@@ -1070,13 +1076,26 @@
CodeGenFunction::GenerateCXXGlobalInitFunc(llvm::Function *Fn,
// Mark as initialized before initializing anything else. If the
// initializers use previously-initialized thread_local vars, that's
// probably supposed to be OK, but the
@@ -1059,9 +1059,15 @@
CodeGenFunction::GenerateCXXGlobalInitFunc(llvm::Function *Fn,
if (Guard.isValid()) {
// If we have a guard variable, check whether we've already performed
// these initializations. This happens for TLS initialization functions.
- ll
@@ -652,6 +652,141 @@ in the future. The expected roadmap for Reduced BMIs as
of Clang 19.x is:
comes, the term BMI will refer to the Reduced BMI and the Full BMI will only
be meaningful to build systems which elect to support two-phase compilation.
+Experimental No Tra
@@ -652,6 +652,141 @@ in the future. The expected roadmap for Reduced BMIs as
of Clang 19.x is:
comes, the term BMI will refer to the Reduced BMI and the Full BMI will only
be meaningful to build systems which elect to support two-phase compilation.
+Experimental No Tra
@@ -652,6 +652,141 @@ in the future. The expected roadmap for Reduced BMIs as
of Clang 19.x is:
comes, the term BMI will refer to the Reduced BMI and the Full BMI will only
be meaningful to build systems which elect to support two-phase compilation.
+Experimental No Tra
@@ -652,6 +652,141 @@ in the future. The expected roadmap for Reduced BMIs as
of Clang 19.x is:
comes, the term BMI will refer to the Reduced BMI and the Full BMI will only
be meaningful to build systems which elect to support two-phase compilation.
+Experimental No Tra
@@ -652,6 +652,134 @@ in the future. The expected roadmap for Reduced BMIs as
of Clang 19.x is:
comes, the term BMI will refer to the Reduced BMI and the Full BMI will only
be meaningful to build systems which elect to support two-phase compilation.
+Experimental No Tra
@@ -652,6 +652,134 @@ in the future. The expected roadmap for Reduced BMIs as
of Clang 19.x is:
comes, the term BMI will refer to the Reduced BMI and the Full BMI will only
be meaningful to build systems which elect to support two-phase compilation.
+Experimental No Tra
https://github.com/ChuanqiXu9 updated
https://github.com/llvm/llvm-project/pull/96453
>From a035ae25314f3168f73108988f2bb7671e7d9e7f Mon Sep 17 00:00:00 2001
From: Chuanqi Xu
Date: Mon, 24 Jun 2024 11:41:23 +0800
Subject: [PATCH 1/3] [Doc] Update documentation for no-transitive-change
---
cla
https://github.com/ChuanqiXu9 edited
https://github.com/llvm/llvm-project/pull/96453
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
@@ -652,6 +652,141 @@ in the future. The expected roadmap for Reduced BMIs as
of Clang 19.x is:
comes, the term BMI will refer to the Reduced BMI and the Full BMI will only
be meaningful to build systems which elect to support two-phase compilation.
+Experimental No Tra
ChuanqiXu9 wrote:
The grammer looks exactly the same with modules. May it be compatible with
modules?
https://github.com/llvm/llvm-project/pull/96823
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listin
@@ -1059,9 +1059,15 @@
CodeGenFunction::GenerateCXXGlobalInitFunc(llvm::Function *Fn,
if (Guard.isValid()) {
// If we have a guard variable, check whether we've already performed
// these initializations. This happens for TLS initialization functions.
- ll
@@ -1070,13 +1076,26 @@
CodeGenFunction::GenerateCXXGlobalInitFunc(llvm::Function *Fn,
// Mark as initialized before initializing anything else. If the
// initializers use previously-initialized thread_local vars, that's
// probably supposed to be OK, but the
@@ -1059,9 +1059,15 @@
CodeGenFunction::GenerateCXXGlobalInitFunc(llvm::Function *Fn,
if (Guard.isValid()) {
// If we have a guard variable, check whether we've already performed
// these initializations. This happens for TLS initialization functions.
- ll
@@ -1070,13 +1076,26 @@
CodeGenFunction::GenerateCXXGlobalInitFunc(llvm::Function *Fn,
// Mark as initialized before initializing anything else. If the
// initializers use previously-initialized thread_local vars, that's
// probably supposed to be OK, but the
@@ -1059,9 +1059,15 @@
CodeGenFunction::GenerateCXXGlobalInitFunc(llvm::Function *Fn,
if (Guard.isValid()) {
// If we have a guard variable, check whether we've already performed
// these initializations. This happens for TLS initialization functions.
- ll
@@ -652,6 +652,141 @@ in the future. The expected roadmap for Reduced BMIs as
of Clang 19.x is:
comes, the term BMI will refer to the Reduced BMI and the Full BMI will only
be meaningful to build systems which elect to support two-phase compilation.
+Experimental No Tra
https://github.com/ChuanqiXu9 edited
https://github.com/llvm/llvm-project/pull/96453
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
Author: Chuanqi Xu
Date: 2024-06-26T13:25:06+08:00
New Revision: 2ee2b6aa7a3d9ba6ba13f6881b25e26d7d12c823
URL:
https://github.com/llvm/llvm-project/commit/2ee2b6aa7a3d9ba6ba13f6881b25e26d7d12c823
DIFF:
https://github.com/llvm/llvm-project/commit/2ee2b6aa7a3d9ba6ba13f6881b25e26d7d12c823.diff
LO
@@ -652,6 +652,134 @@ in the future. The expected roadmap for Reduced BMIs as
of Clang 19.x is:
comes, the term BMI will refer to the Reduced BMI and the Full BMI will only
be meaningful to build systems which elect to support two-phase compilation.
+Experimental No Tra
@@ -652,6 +652,134 @@ in the future. The expected roadmap for Reduced BMIs as
of Clang 19.x is:
comes, the term BMI will refer to the Reduced BMI and the Full BMI will only
be meaningful to build systems which elect to support two-phase compilation.
+Experimental No Tra
@@ -652,6 +652,134 @@ in the future. The expected roadmap for Reduced BMIs as
of Clang 19.x is:
comes, the term BMI will refer to the Reduced BMI and the Full BMI will only
be meaningful to build systems which elect to support two-phase compilation.
+Experimental No Tra
@@ -652,6 +652,134 @@ in the future. The expected roadmap for Reduced BMIs as
of Clang 19.x is:
comes, the term BMI will refer to the Reduced BMI and the Full BMI will only
be meaningful to build systems which elect to support two-phase compilation.
+Experimental No Tra
@@ -652,6 +652,134 @@ in the future. The expected roadmap for Reduced BMIs as
of Clang 19.x is:
comes, the term BMI will refer to the Reduced BMI and the Full BMI will only
be meaningful to build systems which elect to support two-phase compilation.
+Experimental No Tra
@@ -652,6 +652,134 @@ in the future. The expected roadmap for Reduced BMIs as
of Clang 19.x is:
comes, the term BMI will refer to the Reduced BMI and the Full BMI will only
be meaningful to build systems which elect to support two-phase compilation.
+Experimental No Tra
@@ -652,6 +652,134 @@ in the future. The expected roadmap for Reduced BMIs as
of Clang 19.x is:
comes, the term BMI will refer to the Reduced BMI and the Full BMI will only
be meaningful to build systems which elect to support two-phase compilation.
+Experimental No Tra
@@ -652,6 +652,134 @@ in the future. The expected roadmap for Reduced BMIs as
of Clang 19.x is:
comes, the term BMI will refer to the Reduced BMI and the Full BMI will only
be meaningful to build systems which elect to support two-phase compilation.
+Experimental No Tra
@@ -652,6 +652,134 @@ in the future. The expected roadmap for Reduced BMIs as
of Clang 19.x is:
comes, the term BMI will refer to the Reduced BMI and the Full BMI will only
be meaningful to build systems which elect to support two-phase compilation.
+Experimental No Tra
@@ -652,6 +652,134 @@ in the future. The expected roadmap for Reduced BMIs as
of Clang 19.x is:
comes, the term BMI will refer to the Reduced BMI and the Full BMI will only
be meaningful to build systems which elect to support two-phase compilation.
+Experimental No Tra
@@ -652,6 +652,134 @@ in the future. The expected roadmap for Reduced BMIs as
of Clang 19.x is:
comes, the term BMI will refer to the Reduced BMI and the Full BMI will only
be meaningful to build systems which elect to support two-phase compilation.
+Experimental No Tra
@@ -652,6 +652,134 @@ in the future. The expected roadmap for Reduced BMIs as
of Clang 19.x is:
comes, the term BMI will refer to the Reduced BMI and the Full BMI will only
be meaningful to build systems which elect to support two-phase compilation.
+Experimental No Tra
@@ -652,6 +652,134 @@ in the future. The expected roadmap for Reduced BMIs as
of Clang 19.x is:
comes, the term BMI will refer to the Reduced BMI and the Full BMI will only
be meaningful to build systems which elect to support two-phase compilation.
+Experimental No Tra
@@ -229,6 +229,10 @@ C++20 Feature Support
will now work.
(#GH62925).
+- Clang refactored the BMI format to make it possible to support no transitive
changes
ChuanqiXu9 wrote:
Good suggestions. Applied. (Just change `should` to `can`. Since I feel
`shou
https://github.com/ChuanqiXu9 updated
https://github.com/llvm/llvm-project/pull/96453
>From a035ae25314f3168f73108988f2bb7671e7d9e7f Mon Sep 17 00:00:00 2001
From: Chuanqi Xu
Date: Mon, 24 Jun 2024 11:41:23 +0800
Subject: [PATCH 1/2] [Doc] Update documentation for no-transitive-change
---
cla
@@ -1059,9 +1059,10 @@
CodeGenFunction::GenerateCXXGlobalInitFunc(llvm::Function *Fn,
if (Guard.isValid()) {
// If we have a guard variable, check whether we've already performed
// these initializations. This happens for TLS initialization functions.
- ll
ChuanqiXu9 wrote:
> Thanks for this patch, I will try it on our codebase to see the effects of it
> and report back to you. I am also trying to understand in which cases this
> would be a win and when not. IIUC, this is always a win when `ModuleFileIndex
> != 0` and a pessimization otherwise.
Author: Chuanqi Xu
Date: 2024-06-25T15:04:32+08:00
New Revision: fa20184a8f336e4154f2ffeeeb8a538dc9462d9a
URL:
https://github.com/llvm/llvm-project/commit/fa20184a8f336e4154f2ffeeeb8a538dc9462d9a
DIFF:
https://github.com/llvm/llvm-project/commit/fa20184a8f336e4154f2ffeeeb8a538dc9462d9a.diff
LO
ChuanqiXu9 wrote:
> I really like the idea of documenting this, hopefully this create some
> fruitful discussions with the build system developers and other compiler
> users.
>
> After trying to put myself into the shoes of the compiler users reading this,
> I can't help but think that the "n
ChuanqiXu9 wrote:
> I feel the increased complexity does not seem like a good trade-off if it
> does not significantly improve performance. However I don't feel too strongly
> about it, so I suggest you get a second opinion if you feel strongly that we
> should land this.
Yeah, and I don't ha
Author: Chuanqi Xu
Date: 2024-06-24T19:03:31+08:00
New Revision: cc4ec6daf0d4f43110e8220d542c1155b8c1ef51
URL:
https://github.com/llvm/llvm-project/commit/cc4ec6daf0d4f43110e8220d542c1155b8c1ef51
DIFF:
https://github.com/llvm/llvm-project/commit/cc4ec6daf0d4f43110e8220d542c1155b8c1ef51.diff
LO
Author: Chuanqi Xu
Date: 2024-06-24T16:55:17+08:00
New Revision: 2232881736f1a7e3e94ee1123dea1b6cd85a9c3a
URL:
https://github.com/llvm/llvm-project/commit/2232881736f1a7e3e94ee1123dea1b6cd85a9c3a
DIFF:
https://github.com/llvm/llvm-project/commit/2232881736f1a7e3e94ee1123dea1b6cd85a9c3a.diff
LO
Author: Chuanqi Xu
Date: 2024-06-24T15:58:46+08:00
New Revision: 790f931886a03324714f31a626eef7e9c609ae97
URL:
https://github.com/llvm/llvm-project/commit/790f931886a03324714f31a626eef7e9c609ae97
DIFF:
https://github.com/llvm/llvm-project/commit/790f931886a03324714f31a626eef7e9c609ae97.diff
LO
ChuanqiXu9 wrote:
@ilya-biryukov I think this is ready to review and test. I think this can
mitigate the size increase with the DeclID change.
https://github.com/llvm/llvm-project/pull/95897
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
http
https://github.com/ChuanqiXu9 ready_for_review
https://github.com/llvm/llvm-project/pull/95897
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
https://github.com/ChuanqiXu9 updated
https://github.com/llvm/llvm-project/pull/95897
>From 0e6b0ee59605d28bb031d8c2fb70fb853d853605 Mon Sep 17 00:00:00 2001
From: Chuanqi Xu
Date: Tue, 18 Jun 2024 11:28:03 +0800
Subject: [PATCH] [Serialization] Store DeclID in two slots to utilize VBR6
format
Author: Chuanqi Xu
Date: 2024-06-24T14:10:52+08:00
New Revision: 79b0966f2f137869cabab42d094fc1ccbb58373c
URL:
https://github.com/llvm/llvm-project/commit/79b0966f2f137869cabab42d094fc1ccbb58373c
DIFF:
https://github.com/llvm/llvm-project/commit/79b0966f2f137869cabab42d094fc1ccbb58373c.diff
LO
https://github.com/ChuanqiXu9 edited
https://github.com/llvm/llvm-project/pull/96453
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
https://github.com/ChuanqiXu9 created
https://github.com/llvm/llvm-project/pull/96453
(Some backgrounds, not required to read:
https://discourse.llvm.org/t/rfc-c-20-modules-introduce-thin-bmi-and-decls-hash/74755)
This is the document part for the no-transitive-change
(https://github.com/llvm
Author: Chuanqi Xu
Date: 2024-06-24T11:20:09+08:00
New Revision: 4061354ab3157255238cf2664b9482bd6297dc83
URL:
https://github.com/llvm/llvm-project/commit/4061354ab3157255238cf2664b9482bd6297dc83
DIFF:
https://github.com/llvm/llvm-project/commit/4061354ab3157255238cf2664b9482bd6297dc83.diff
LO
Author: Chuanqi Xu
Date: 2024-06-24T11:08:46+08:00
New Revision: 1ecc5ae13b9061cfb37ef0c409c8a4fc4bad42c9
URL:
https://github.com/llvm/llvm-project/commit/1ecc5ae13b9061cfb37ef0c409c8a4fc4bad42c9
DIFF:
https://github.com/llvm/llvm-project/commit/1ecc5ae13b9061cfb37ef0c409c8a4fc4bad42c9.diff
LO
ChuanqiXu9 wrote:
I suspect this is the root cause that some modules related test are failing on
armv8-quick. It passes with commit 12c0281f8c73bc1aa2
(https://lab.llvm.org/buildbot/#/builders/154/builds/320) and fails with
b39f523af7601fe1b39b3256
(https://lab.llvm.org/buildbot/#/builders/15
Author: Chuanqi Xu
Date: 2024-06-21T17:50:30+08:00
New Revision: d4d95ee65159db1ea1a8c4159cfdaf8b81097897
URL:
https://github.com/llvm/llvm-project/commit/d4d95ee65159db1ea1a8c4159cfdaf8b81097897
DIFF:
https://github.com/llvm/llvm-project/commit/d4d95ee65159db1ea1a8c4159cfdaf8b81097897.diff
LO
https://github.com/ChuanqiXu9 approved this pull request.
LGTM then.
https://github.com/llvm/llvm-project/pull/96136
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
Author: Chuanqi Xu
Date: 2024-06-21T11:04:53+08:00
New Revision: e6486030340ea5756bec43a633567ed6411668c3
URL:
https://github.com/llvm/llvm-project/commit/e6486030340ea5756bec43a633567ed6411668c3
DIFF:
https://github.com/llvm/llvm-project/commit/e6486030340ea5756bec43a633567ed6411668c3.diff
LO
ChuanqiXu9 wrote:
> > This looks generally good.
> > > Some check-clang-modules tests still fail (@ChuanqiXu9)
> >
> >
> > What does this mean? Do you mean there are some failures after this patch?
> > What are they? Or are these tests failing before this patch?
>
> When https://github.com/Ma
ChuanqiXu9 wrote:
> > Yeah, I think this patch may be conceptually good except the extra memory
> > using. But benchmarking, I tried it locally but didn't find observable
> > effects. So I'd like to land this after 19's branching to give it more
> > baking time.
>
> Do you mean that no large
https://github.com/ChuanqiXu9 closed
https://github.com/llvm/llvm-project/pull/92511
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
ChuanqiXu9 wrote:
Thanks for reviewing
https://github.com/llvm/llvm-project/pull/92511
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
ChuanqiXu9 wrote:
> Thanks! With all the explanation, the patch makes a lot of sense. Generally
> LG, I just have a few more NITs and feel it's good to go.
Thanks.
>
> I am surprised to hear we have less TypeIDs than DeclIDs. My mental model was
> that for every type Decl we introduce, we'd
https://github.com/ChuanqiXu9 updated
https://github.com/llvm/llvm-project/pull/92511
>From e8f756ec7f8ea7e5bf18cc122a965fb2f258fd15 Mon Sep 17 00:00:00 2001
From: Chuanqi Xu
Date: Tue, 14 May 2024 15:33:12 +0800
Subject: [PATCH 1/5] [Serialization] No transitive identifier change
---
.../cla
@@ -7151,15 +7135,45 @@ TypeSourceInfo *ASTRecordReader::readTypeSourceInfo() {
return TInfo;
}
+static unsigned getIndexForTypeID(serialization::TypeID ID) {
+ return (ID & llvm::maskTrailingOnes(32)) >> Qualifiers::FastWidth;
+ ;
+}
+
+static unsigned getModuleFileIndexF
@@ -7392,27 +7388,28 @@ QualType ASTReader::GetType(TypeID ID) {
return TypesLoaded[Index].withFastQualifiers(FastQuals);
}
-QualType ASTReader::getLocalType(ModuleFile &F, unsigned LocalID) {
+QualType ASTReader::getLocalType(ModuleFile &F, TypeID LocalID) {
---
@@ -44,10 +44,6 @@ export inline int getA() {
return 43;
}
-export inline int getA2(int) {
ChuanqiXu9 wrote:
Previously, in `m-partA.v1.cppm`, we add a new declaration `int getA(int);`.
And what we want to test is, the BMI of `useBOnly.cppm` shouldn't ch
@@ -0,0 +1,68 @@
+// Testing that changing a type in an unused module file won't change
+// the BMI of the current module file.
+//
+// RUN: rm -rf %t
+// RUN: split-file %s %t
+//
+// RUN: %clang_cc1 -std=c++20 %t/m-partA.cppm -emit-reduced-module-interface
-o %t/m-partA.pcm
+/
@@ -7151,15 +7135,45 @@ TypeSourceInfo *ASTRecordReader::readTypeSourceInfo() {
return TInfo;
}
+static unsigned getIndexForTypeID(serialization::TypeID ID) {
+ return (ID & llvm::maskTrailingOnes(32)) >> Qualifiers::FastWidth;
+ ;
ChuanqiXu9 wrote:
Done
@@ -6659,13 +6655,22 @@ void ASTWriter::MacroRead(serialization::MacroID ID,
MacroInfo *MI) {
}
void ASTWriter::TypeRead(TypeIdx Idx, QualType T) {
- // Always take the highest-numbered type index. This copes with an
interesting
+ // Always take the type index that comes i
@@ -70,38 +71,51 @@ using DeclID = DeclIDBase::DeclID;
/// An ID number that refers to a type in an AST file.
///
-/// The ID of a type is partitioned into two parts: the lower
-/// three bits are used to store the const/volatile/restrict
-/// qualifiers (as with QualType) and
@@ -44,10 +44,6 @@ export inline int getA() {
return 43;
}
-export inline int getA2(int) {
ChuanqiXu9 wrote:
Previously, in `m-partA.v1.cppm`, we add a new declaration `int getA(int);`.
And what we want to test is, the BMI of `useBOnly.cppm` shouldn't ch
@@ -70,38 +71,51 @@ using DeclID = DeclIDBase::DeclID;
/// An ID number that refers to a type in an AST file.
///
-/// The ID of a type is partitioned into two parts: the lower
-/// three bits are used to store the const/volatile/restrict
-/// qualifiers (as with QualType) and
https://github.com/ChuanqiXu9 updated
https://github.com/llvm/llvm-project/pull/92511
>From e8f756ec7f8ea7e5bf18cc122a965fb2f258fd15 Mon Sep 17 00:00:00 2001
From: Chuanqi Xu
Date: Tue, 14 May 2024 15:33:12 +0800
Subject: [PATCH 1/3] [Serialization] No transitive identifier change
---
.../cla
https://github.com/ChuanqiXu9 edited
https://github.com/llvm/llvm-project/pull/92511
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
https://github.com/ChuanqiXu9 closed
https://github.com/llvm/llvm-project/pull/92085
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
https://github.com/ChuanqiXu9 updated
https://github.com/llvm/llvm-project/pull/92085
>From a2f883278bafb311eb290015a9cf04affeb8d760 Mon Sep 17 00:00:00 2001
From: Chuanqi Xu
Date: Tue, 14 May 2024 15:33:12 +0800
Subject: [PATCH] [Serialization] No transitive identifier change
---
.../clang/L
Author: Chuanqi Xu
Date: 2024-06-20T13:13:47+08:00
New Revision: da2ad44119edf13eb944f7e685469352aa840e63
URL:
https://github.com/llvm/llvm-project/commit/da2ad44119edf13eb944f7e685469352aa840e63
DIFF:
https://github.com/llvm/llvm-project/commit/da2ad44119edf13eb944f7e685469352aa840e63.diff
LO
301 - 400 of 1807 matches
Mail list logo