[PATCH] D144844: [C++20] [Modules] Offer -fno-import-inter-module-function-defs to avoid duplicated compilation in modules

Iain Sandoe via Phabricator via cfe-commits cfe-commits at lists.llvm.org
Wed Mar 15 14:15:47 PDT 2023


iains added a comment.

In D144844#4195633 <https://reviews.llvm.org/D144844#4195633>, @ChuanqiXu wrote:

>> However, "performance" also includes compilation speed in the 'no optimisation, debug' case - that is also considered very important. So, perhaps, the short-term approach should be (as @dblaikie suggested) to include the bodies for -O >= 3?
>
> I don't think so. I think "performance" refers to the runtime performance generally. I don't believe the normal users will be happy if modules will decrease the performance of their program in any means. So I think we should include the bodies by default.

I think I must be misunderstanding something here.

The default for clang is to compile without optimisation - this benefits the compile-edit-debug cycle, by providing output that is closest to the original source, and quickest to compile.

The user should not be expecting any optimisations to be applied unless they supply `-ON` (n fact, they might we complain if we optimise something that makes debugging harder).

So, we should try to ensure that adding modules supports that model - and provides the quickest and closest to the original sources for the default options.  If the user wants better optimisation (at the expense of longer compile times), then they provide `-ON`, right?


Repository:
  rG LLVM Github Monorepo

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

https://reviews.llvm.org/D144844



More information about the cfe-commits mailing list