[PATCH] D126694: [C++20][Modules] Implementation of GMF decl elision.

Iain Sandoe via Phabricator via cfe-commits cfe-commits at lists.llvm.org
Mon Jul 3 23:28:55 PDT 2023


iains added a comment.

In D126694#4470139 <https://reviews.llvm.org/D126694#4470139>, @ChuanqiXu wrote:

> Now I think the feature may be important for the performance of modules. And I feel we should work on the ASTWriter side instead of ASTReader side. Since the size of BMIs is a problem now also it shows that it is not free to load the large BMIs. So while it is semantical correct to work on the reader side, it is better for the performance to work on the writer side.
>
> I'd like to finish the idea. And for the current patch, I'd like to refactor it a little bit:
>
> 1. Test it by unittest instead of by matching the dump result.

fine with me

> 2. Remove the Serialization part. So it will be a NFC patch.

how do you plan to identify "elided" decls (we agreed to leave them in the BMI to keep diagnostics quality up, but we need to be able to ignore them)

> 3. Some other trivial polishment.



4. I wanted to take another look at using visitors to implement the checks.

> Of course, I'll still mark you as the author.
>
> How do you feel about this?

Do you plan to try this before clang-17?
 (if so, then go ahead - my next priority for 17 is the lookup bug)

Otherwise, this is on my TODO for clang-18.

BTW, I think that there are other opportunities to reduce the BMI size that we could realistically aim for clang-18
 (but let us make that discussion separately from this patch)


Repository:
  rG LLVM Github Monorepo

CHANGES SINCE LAST ACTION
  https://reviews.llvm.org/D126694/new/

https://reviews.llvm.org/D126694



More information about the cfe-commits mailing list