Date: Tue, 26 Aug 2025 07:18:42 -0700
On Tuesday, 26 August 2025 05:03:41 Pacific Daylight Time Jonathan Wakely via
Std-Proposals wrote:
> Yes, the abstraction penalty is not zero, but it's much lower than it was
> 15-20 years ago, let alone 30 years ago.
>
> Early inlining also made a difference for GCC.
I also particularly like constant propagation optimisations which make
inlining extremely powerful, often many-layers-deep function calls to a few
instructions emitted. And with it, a lot of dead code elimination.
if constexpr made maintaining large template expansions manageable, without
having to create an exponentially-increasing number of template functions.
Std-Proposals wrote:
> Yes, the abstraction penalty is not zero, but it's much lower than it was
> 15-20 years ago, let alone 30 years ago.
>
> Early inlining also made a difference for GCC.
I also particularly like constant propagation optimisations which make
inlining extremely powerful, often many-layers-deep function calls to a few
instructions emitted. And with it, a lot of dead code elimination.
if constexpr made maintaining large template expansions manageable, without
having to create an exponentially-increasing number of template functions.
-- Thiago Macieira - thiago (AT) macieira.info - thiago (AT) kde.org Principal Engineer - Intel Platform & System Engineering
Received on 2025-08-26 14:18:51