@w-m 10d

From the article:

I think this is the first time in quite a few releases where we end up with an overall regression. However, the situation is not quite as bad as it looks.

In particular, the large regression on the right is due to enabling C++17 by default. The close to two times slowdown in 7zip O0 builds comes down to STL headers becoming 2-3 times as large in C++17.

While this is sad, and I had to edit out some choice words on the C++ standardization committee (I hear that this gets even worse in C++20), at least this does not affect non-clang compilers (e.g. Rust) and C code.

@IndoorPatio 10d
Shouldn't people expect compile times to be slower at -O3? Presumably the improvements are better optimizations, many of which trade compile time for execution time. Now if it's getting slower at -O0, that might be a concern.
@nikic 9d
You can see the impact on Rust here: https://perf.rust-lang.org/compare.html?start=2d0a7def330ed9...

The tl;dr is that check builds are faster (i.e. optimization quality has improved) while debug/opt builds are mixed, but slightly slower when averaged over everything.

@akvadrako 10d
Yeah, LLVM is a dog, about twice as slow and GCC and 20 times slower than TCC:

   gcc-11.2  -O0     0.02
   clang-12.0.1 -O0  0.04
   tcc               0.002
I wish TCC was still being maintained and supported by modern toolchains.

[1]: https://forum.nim-lang.org/t/8677