Date: Sun, 24 Aug 2025 22:39:15 -0700
On Sunday, 24 August 2025 18:12:00 Pacific Daylight Time Adrian Johnston via
Std-Proposals wrote:
> Recently I spent some time looking at the generated assembly from gcc
> and clang and it doesn't look like the situation has improved in 30
> years.
Then I don't know where you were 30 years ago. The situation has MUCH improved
in all aspects I can tell. It's heads and shoulders above what the compilers
generated 15 years ago. There was a time when GCC was a bit of a joke in
optimisation - I remember a situation when one would take the assembly
generated by MSVC, decompile it back into C or C++ so GCC would end up doing
the right thing. Now it's the complete reverse: MSVC has fallen behind while
GCC and Clang "one up" each other in terms of optimisations.
30 years ago we didn't have link-time optimisations. Unnamed-namespace
variables did not become local symbols and hidden visibility wasn't taken into
account in inlining. In fact, no one used hidden visibility. And LLVM didn't
exist.
Std-Proposals wrote:
> Recently I spent some time looking at the generated assembly from gcc
> and clang and it doesn't look like the situation has improved in 30
> years.
Then I don't know where you were 30 years ago. The situation has MUCH improved
in all aspects I can tell. It's heads and shoulders above what the compilers
generated 15 years ago. There was a time when GCC was a bit of a joke in
optimisation - I remember a situation when one would take the assembly
generated by MSVC, decompile it back into C or C++ so GCC would end up doing
the right thing. Now it's the complete reverse: MSVC has fallen behind while
GCC and Clang "one up" each other in terms of optimisations.
30 years ago we didn't have link-time optimisations. Unnamed-namespace
variables did not become local symbols and hidden visibility wasn't taken into
account in inlining. In fact, no one used hidden visibility. And LLVM didn't
exist.
-- Thiago Macieira - thiago (AT) macieira.info - thiago (AT) kde.org Principal Engineer - Intel Platform & System Engineering
Received on 2025-08-25 05:39:29