This is the mail archive of the mailing list for the GCC project.

Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: [4.4] Strange performance regression?

Quoting Ian Lance Taylor <>:

francesco biscani <> writes:

I'm experiencing a strange behaviour with GCC 4.4.1. Basically I have
some C++ mathematical code which gets a ~x2 performance drop if I
*remove* the following debug line from the code:

This message is not appropriate for the mailing list
It is appropriate for  Please take any followups
to gcc-help.  Thanks.

I'm not sure about that; it depends on if this is a matter of how to use gcc (then it should indeed go to gcc-help) or if this is a manifestation of a consistent pessimization that we could reasonably fix.

An extra function call could inhibit excessive unrolling (as in PR39141), excessive inlining, and/or excessive constant propagation (as in PR38785)
with creation of expensive phi-nodes.

It would be interesting to know if this issue responds to one of the pending
patches in this area.  For unrolling and inlining, there are also tweakable
parameters that could be used to get an idea if one of these transformations
causes the performance differences.

But at any rate, the subject does not agree with the content of the original
post.  When we talk about a 'regression' in a particular gcc version, we
generally mean that this version is in some way worse than a previous version
of gcc.  E.g. if the code runs faster when compiled with a previous version
of gcc, than the slowdown in the newer gcc version would be a performance
regression; if the slowdown is sufficiently serious, that would be a
reportable bug.

Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]