[PATCH] D119409: [C++20] [Modules] Remain dynamic initializing internal-linkage variables in module interface unit

2022-05-27 Thread Chuanqi Xu via Phabricator via cfe-commits
ChuanqiXu abandoned this revision. ChuanqiXu added a comment. Prefer https://reviews.llvm.org/D126189 CHANGES SINCE LAST ACTION https://reviews.llvm.org/D119409/new/ https://reviews.llvm.org/D119409 ___ cfe-commits mailing list

[PATCH] D119409: [C++20] [Modules] Remain dynamic initializing internal-linkage variables in module interface unit

2022-04-06 Thread Chuanqi Xu via Phabricator via cfe-commits
ChuanqiXu added a comment. In D119409#3432281 , @iains wrote: > In D119409#3410893 , @ChuanqiXu > wrote: > >> In D119409#3410868 , @iains wrote: >> >>> In

[PATCH] D119409: [C++20] [Modules] Remain dynamic initializing internal-linkage variables in module interface unit

2022-04-06 Thread Iain Sandoe via Phabricator via cfe-commits
iains added a comment. In D119409#3410893 , @ChuanqiXu wrote: > In D119409#3410868 , @iains wrote: > >> In D119409#3410474 , @ChuanqiXu >> wrote: >> >>> In

[PATCH] D119409: [C++20] [Modules] Remain dynamic initializing internal-linkage variables in module interface unit

2022-03-28 Thread Chuanqi Xu via Phabricator via cfe-commits
ChuanqiXu added a comment. In D119409#3410868 , @iains wrote: > In D119409#3410474 , @ChuanqiXu > wrote: > >> In D119409#3409806 , @iains wrote: >> >>> I think that this

[PATCH] D119409: [C++20] [Modules] Remain dynamic initializing internal-linkage variables in module interface unit

2022-03-28 Thread Iain Sandoe via Phabricator via cfe-commits
iains added a comment. In D119409#3410474 , @ChuanqiXu wrote: > In D119409#3409806 , @iains wrote: > >> I think that this problem might well be a consequence of the bug which is >> fixed by D122413

[PATCH] D119409: [C++20] [Modules] Remain dynamic initializing internal-linkage variables in module interface unit

2022-03-27 Thread Chuanqi Xu via Phabricator via cfe-commits
ChuanqiXu added a comment. In D119409#3409806 , @iains wrote: > I think that this problem might well be a consequence of the bug which is > fixed by D122413 . > > We have been generating code with module internal

[PATCH] D119409: [C++20] [Modules] Remain dynamic initializing internal-linkage variables in module interface unit

2022-03-26 Thread Iain Sandoe via Phabricator via cfe-commits
iains added a comment. addendum: note we still have work to do on the module initialisers - those are not correct yet (so probably some nesting of modules might not work). CHANGES SINCE LAST ACTION https://reviews.llvm.org/D119409/new/ https://reviews.llvm.org/D119409

[PATCH] D119409: [C++20] [Modules] Remain dynamic initializing internal-linkage variables in module interface unit

2022-03-26 Thread Iain Sandoe via Phabricator via cfe-commits
iains added a comment. I think that this problem might well be a consequence of the bug which is fixed by D122413 . We have been generating code with module internal entities (always) given the special ModuleInternalLinkage (which means that, although the

[PATCH] D119409: [C++20] [Modules] Remain dynamic initializing internal-linkage variables in module interface unit

2022-03-24 Thread Chuanqi Xu via Phabricator via cfe-commits
ChuanqiXu added a comment. In D119409#3405733 , @dblaikie wrote: > is this an issue for Clang Header Modules codegen too? (maybe the solution > should be the same for both, then) For my limited knowledge to clang header modules, `.modulemap` is a

[PATCH] D119409: [C++20] [Modules] Remain dynamic initializing internal-linkage variables in module interface unit

2022-03-24 Thread David Blaikie via Phabricator via cfe-commits
dblaikie added a comment. is this an issue for Clang Header Modules codegen too? (maybe the solution should be the same for both, then) & maybe we should do this regardless of the presence/absence/type of initializer, just for consistency? CHANGES SINCE LAST ACTION

[PATCH] D119409: [C++20] [Modules] Remain dynamic initializing internal-linkage variables in module interface unit

2022-03-22 Thread Chuanqi Xu via Phabricator via cfe-commits
ChuanqiXu added a subscriber: urnathan. ChuanqiXu added a comment. In D119409#3400287 , @dblaikie wrote: > In D119409#3398483 , @ChuanqiXu > wrote: > >> In D119409#3396690

[PATCH] D119409: [C++20] [Modules] Remain dynamic initializing internal-linkage variables in module interface unit

2022-03-22 Thread David Blaikie via Phabricator via cfe-commits
dblaikie added a comment. In D119409#3398483 , @ChuanqiXu wrote: > In D119409#3396690 , @dblaikie > wrote: > >> Not even necessarily then - if you have code like protobufs (large amounts >> of autogenerated

[PATCH] D119409: [C++20] [Modules] Remain dynamic initializing internal-linkage variables in module interface unit

2022-03-21 Thread Chuanqi Xu via Phabricator via cfe-commits
ChuanqiXu added a comment. In D119409#3396690 , @dblaikie wrote: > Not even necessarily then - if you have code like protobufs (large amounts of > autogenerated code, much of which you might never call) - or even just > libraries where you only use a

[PATCH] D119409: [C++20] [Modules] Remain dynamic initializing internal-linkage variables in module interface unit

2022-03-21 Thread David Blaikie via Phabricator via cfe-commits
dblaikie added a comment. In D119409#3334537 , @ChuanqiXu wrote: > In D119409#3332313 , @dblaikie > wrote: > >> (maybe relevant: For what it's worth: I originally implemented inline >> function homing in

[PATCH] D119409: [C++20] [Modules] Remain dynamic initializing internal-linkage variables in module interface unit

2022-03-14 Thread Chuanqi Xu via Phabricator via cfe-commits
ChuanqiXu added a comment. ping CHANGES SINCE LAST ACTION https://reviews.llvm.org/D119409/new/ https://reviews.llvm.org/D119409 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[PATCH] D119409: [C++20] [Modules] Remain dynamic initializing internal-linkage variables in module interface unit

2022-03-01 Thread Chuanqi Xu via Phabricator via cfe-commits
ChuanqiXu added a comment. Herald added a project: All. ping~ CHANGES SINCE LAST ACTION https://reviews.llvm.org/D119409/new/ https://reviews.llvm.org/D119409 ___ cfe-commits mailing list cfe-commits@lists.llvm.org

[PATCH] D119409: [C++20] [Modules] Remain dynamic initializing internal-linkage variables in module interface unit

2022-02-20 Thread Chuanqi Xu via Phabricator via cfe-commits
ChuanqiXu added a comment. In D119409#3332313 , @dblaikie wrote: > (maybe relevant: For what it's worth: I originally implemented inline > function homing in modules codegen for Clang Header Modules - the results I > got for object file size in an -O0

[PATCH] D119409: [C++20] [Modules] Remain dynamic initializing internal-linkage variables in module interface unit

2022-02-18 Thread David Blaikie via Phabricator via cfe-commits
dblaikie added a comment. In D119409#3332476 , @urnathan wrote: > In D119409#3332313 , @dblaikie > wrote: > >> > > That's interesting data. I guess one could emit the out-of-line bodies into > their own

[PATCH] D119409: [C++20] [Modules] Remain dynamic initializing internal-linkage variables in module interface unit

2022-02-18 Thread Nathan Sidwell via Phabricator via cfe-commits
urnathan added a comment. In D119409#3332313 , @dblaikie wrote: > That's interesting data. I guess one could emit the out-of-line bodies into their own sections, and then rely on linker section GC to elide them in the static link. But if you're

[PATCH] D119409: [C++20] [Modules] Remain dynamic initializing internal-linkage variables in module interface unit

2022-02-18 Thread David Blaikie via Phabricator via cfe-commits
dblaikie added a comment. (maybe relevant: For what it's worth: I originally implemented inline function homing in modules codegen for Clang Header Modules - the results I got for object file size in an -O0 build were marginal - a /slight/ win in object file size, but not as much as we

[PATCH] D119409: [C++20] [Modules] Remain dynamic initializing internal-linkage variables in module interface unit

2022-02-18 Thread Chuanqi Xu via Phabricator via cfe-commits
ChuanqiXu added inline comments. Comment at: clang/test/CXX/modules-ts/basic/basic.def.odr/p4/module.cpp:5 // CHECK-DAG: @extern_var_exported = external {{(dso_local )?}}global -// CHECK-DAG: @inline_var_exported = linkonce_odr {{(dso_local )?}}global +// CHECK-DAG:

[PATCH] D119409: [C++20] [Modules] Remain dynamic initializing internal-linkage variables in module interface unit

2022-02-18 Thread Chuanqi Xu via Phabricator via cfe-commits
ChuanqiXu updated this revision to Diff 409872. ChuanqiXu retitled this revision from "[C++20] [Modules] Remain internal-linkage variables in module interface unit" to "[C++20] [Modules] Remain dynamic initializing internal-linkage variables in module interface unit ". ChuanqiXu edited the