https://gcc.gnu.org/bugzilla/show_bug.cgi?id=114979

--- Comment #3 from Andrew Pinski <pinskia at gcc dot gnu.org> ---
(In reply to Jorge Acereda from comment #2)
> Thanks for the prompt reply. I understand the behaviour for external
> functions, but for static functions, isn't it a missed opportunity for
> optimization?

The question comes is the function still a non-prototyped function or not even
if there is a definition. The answer is yes it is still a non-prototyped
function.

Anyways this does not matter that much since C23 changes () to be always
prototyped and the same as (void).

Also a zeroing of the register does only takes up icache space and does not get
issued as it is taken care of during rename on most (if not all) modern x86_64
cores.

So this is a very very minor space savings at best.

Reply via email to