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

--- Comment #2 from Marc Glisse <glisse at gcc dot gnu.org> ---
(In reply to Jakub Jelinek from comment #1)
> I think this is a result of many changes.
> E.g. r249885 bumps .s size from 3709 to 4599 bytes, r254724 from 4599 to
> 5768, r255510 from 5772 to 7713.  You are compiling with -O3, not -Os, so
> the size is not what counts though, but the code speed, right?

-Os gives something much larger (16633). I agree 100% that what matters at -O3
is code speed, not size, and I am only using the size as a crude indicator
before looking into the code more closely. And what I saw were many extra moves
and some missed __builtin_constant_p opportunities, both of which obviously
have a negative impact on performance. If the only size increase came from
outlining the exception code, that would be fine. But compiling with
-fno-exceptions (after removing enough exception-related unnecessary stuff from
the file so it compiles) still shows an increase from 2639 to 4268.

Reply via email to