Joe Buck wrote:

Agreed; -O0 could in principle be sped up; the important thing is making
sure that it happens.  In this case, adding a pass that computes SSA
information that is used only for uninitialized variable warnings costs
time; it could be compensated for by finding other speedups, but taken
alone it is a slowdown.

For one class of users, which includes many Ada users, speeding up
is less of an issue than code size. In a large scale (millions of
lines of code) application, the sheer size of the -O0 executable
can be a serious impediment to development, and slows down
the development cycle (compile/debug/fix/recompile), e.g. when this
executable is so large that it takes ages to download to an embedded
target, or when you have to start fiddling to set -g only in selected
units, because the overall size of the executable is too large. We
are seeing that GCC 4 is significantly worse than GCC 3 in this
respect (although Eric has some ideas on how to help fix this by
attacking unused size functions).

Reply via email to