[clang] [C++20] [Modules] Introduce reduced BMI (PR #75894)

2024-03-07 Thread Chuanqi Xu via cfe-commits
https://github.com/ChuanqiXu9 closed https://github.com/llvm/llvm-project/pull/75894 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [C++20] [Modules] Introduce reduced BMI (PR #75894)

2024-03-06 Thread Chuanqi Xu via cfe-commits
ChuanqiXu9 wrote: > Can we add a release note and documentation for this? Thanks! The current patch is transparent to users and it is only part of the series patches. I'd like to document that after I made the series of patches. https://github.com/llvm/llvm-project/pull/75894 _

[clang] [C++20] [Modules] Introduce reduced BMI (PR #75894)

2024-03-06 Thread via cfe-commits
cor3ntin wrote: Can we add a release note and documentation for this? Thanks! https://github.com/llvm/llvm-project/pull/75894 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [C++20] [Modules] Introduce reduced BMI (PR #75894)

2024-03-06 Thread Iain Sandoe via cfe-commits
iains wrote: I have no further comments so LGTM if there are no objections from the other reviewers this week. https://github.com/llvm/llvm-project/pull/75894 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailm

[clang] [C++20] [Modules] Introduce reduced BMI (PR #75894)

2024-03-05 Thread Chuanqi Xu via cfe-commits
ChuanqiXu9 wrote: I am going to land this in the week later if no objections come in. I think it is necessary to land the series of patches (to reduce the contents of BMI) for clang19. And of course, the functionality will be opt in for one~two releases for experimental. https://github.com/ll

[clang] [C++20] [Modules] Introduce reduced BMI (PR #75894)

2024-03-05 Thread Chuanqi Xu via cfe-commits
ChuanqiXu9 wrote: > Do you expect to make any changes to type streaming? I don't expect to do that explicitly. The number of types deserialized can be decreased naturally after we avoid emitting declarations during the writing. https://github.com/llvm/llvm-project/pull/75894 __

[clang] [C++20] [Modules] Introduce reduced BMI (PR #75894)

2024-03-05 Thread Iain Sandoe via cfe-commits
iains wrote: Do you expect to make any changes to type streaming? https://github.com/llvm/llvm-project/pull/75894 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [C++20] [Modules] Introduce reduced BMI (PR #75894)

2024-03-05 Thread Chuanqi Xu via cfe-commits
@@ -830,6 +843,19 @@ class PCHGenerator : public SemaConsumer { bool hasEmittedPCH() const { return Buffer->IsComplete; } }; +class ReducedBMIGenerator : public PCHGenerator { +public: + ReducedBMIGenerator(const Preprocessor &PP, InMemoryModuleCache &ModuleCache, +

[clang] [C++20] [Modules] Introduce reduced BMI (PR #75894)

2024-03-05 Thread Chuanqi Xu via cfe-commits
ChuanqiXu9 wrote: > * I do not want to block progress, so let's move forward with this patch for > now. Yeah. Great to see we have some progress finally. I think this is really important since I see more and more peope complaninig the performance for modules. I feel this series patch is key t

[clang] [C++20] [Modules] Introduce reduced BMI (PR #75894)

2024-03-05 Thread Iain Sandoe via cfe-commits
@@ -830,6 +843,19 @@ class PCHGenerator : public SemaConsumer { bool hasEmittedPCH() const { return Buffer->IsComplete; } }; +class ReducedBMIGenerator : public PCHGenerator { +public: + ReducedBMIGenerator(const Preprocessor &PP, InMemoryModuleCache &ModuleCache, +

[clang] [C++20] [Modules] Introduce reduced BMI (PR #75894)

2024-03-05 Thread Iain Sandoe via cfe-commits
iains wrote: * I do not want to block progress, so let's move forward with this patch for now. * It seems to me (as we found with GMF decl elision) that the process is quite a bit more complex than simply omitting a decl. We need to elide other decls that are then unused (e.g. decls local t

[clang] [C++20] [Modules] Introduce reduced BMI (PR #75894)

2024-02-17 Thread Chuanqi Xu via cfe-commits
ChuanqiXu9 wrote: @iains @mizvekov ping~ https://github.com/llvm/llvm-project/pull/75894 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [C++20] [Modules] Introduce reduced BMI (PR #75894)

2024-01-31 Thread Chuanqi Xu via cfe-commits
ChuanqiXu9 wrote: @mizvekov would you like to take a look at this? This is related (in some level) to what you say https://github.com/llvm/llvm-project/pull/79959. In short, in the direction, in the one-phase compilation, the pcm won't be compiled into object files. (But it still will in the t

[clang] [C++20] [Modules] Introduce reduced BMI (PR #75894)

2024-01-31 Thread Chuanqi Xu via cfe-commits
ChuanqiXu9 wrote: @iains would you like to take a look on this. I feel OK to not land this in 18 but I think it is really important to land this in 19. Although it is still early to that, there are other works to do (e.g., the next patch and more testing). So it may be better to start it earli

[clang] [C++20] [Modules] Introduce reduced BMI (PR #75894)

2024-01-04 Thread Chuanqi Xu via cfe-commits
ChuanqiXu9 wrote: > > Like I said in the commit message, this patch itself doesn't involve > > anything relevant to user interfaces. I left it to the latter patches. > > Are you in a position to post the next patch (at least as a draft)? That > would help me see the direction. I post it here

[clang] [C++20] [Modules] Introduce reduced BMI (PR #75894)

2024-01-04 Thread Iain Sandoe via cfe-commits
iains wrote: > Like I said in the commit message, this patch itself doesn't involve anything > relevant to user interfaces. I left it to the latter patches. Are you in a position to post the next patch (at least as a draft)? That would help me see the direction. > > * I was concerned from e

[clang] [C++20] [Modules] Introduce reduced BMI (PR #75894)

2024-01-03 Thread Chuanqi Xu via cfe-commits
ChuanqiXu9 wrote: > @ChuanqiXu9 very sorry for the slow review. It would help me if the design > was described in the commit message instead of trying to deduce it from the > patch (maybe it's in a thread somewhere - so a cross-reference would help). hi @iains , sorry for the confusion. It may

[clang] [C++20] [Modules] Introduce reduced BMI (PR #75894)

2024-01-03 Thread Iain Sandoe via cfe-commits
iains wrote: @ChuanqiXu9 very sorry for the slow review. It would help me if the design was described in the commit message instead of trying to deduce it from the patch (maybe it's in a thread somewhere - so a cross-reference would help). two immediate questions and one observation: - I see

[clang] [C++20] [Modules] Introduce reduced BMI (PR #75894)

2024-01-02 Thread Chuanqi Xu via cfe-commits
ChuanqiXu9 wrote: @iains @dwblaikie ping~ https://github.com/llvm/llvm-project/pull/75894 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [C++20] [Modules] Introduce reduced BMI (PR #75894)

2023-12-18 Thread Chuanqi Xu via cfe-commits
ChuanqiXu9 wrote: My impression to the feedbacks is that every one of us loves the direction, while we may need more agreement on the user interfaces. To make it easier to review, I split all the user interfaces related part to following patches. So that the current patch won't affect users.

[clang] [C++20] [Modules] Introduce reduced BMI (PR #75894)

2023-12-18 Thread via cfe-commits
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 cdc03926696d674c6aa61b55d5b509d7118ed023 6354bb468098f25b869deae3a475bf6bcfe37d40 --

[clang] [C++20] [Modules] Introduce reduced BMI (PR #75894)

2023-12-18 Thread via cfe-commits
llvmbot wrote: @llvm/pr-subscribers-clang @llvm/pr-subscribers-clang-modules Author: Chuanqi Xu (ChuanqiXu9) Changes Close https://github.com/llvm/llvm-project/issues/71034 See https://discourse.llvm.org/t/rfc-c-20-modules-introduce-thin-bmi-and-decls-hash/74755 This patch introduces red