On Oct 20, 2005 10:45 AM, Uros Bizjak <[EMAIL PROTECTED]> wrote: > I got following times: > > 1m37.986 > 1m37.139 > 1m38.410 > > And _with_ patch: > > 1m37.264 > 1m37.352 > 1m37.383 > > I would say that the difference is burried in noise.
It is still an extra pass over all instructions in the function. We've gone from a few dozen to a few hundred passes over the whole function since early GCC3 releases. And you're proposing to add another pass... _All_ changes we've done in the past, say, four years had compile time impacts "in the noise". And probably they were. But the overall effect is a huge slowdown. It's the accumulation of "noise" that hurts. So, these timings, and timings in general, don't mean anything to me. The fact is that there is another new pass over all instructions, and if we keep adding enough of those, all of them with cost "in the noise", we'll be slowing down even further. And FWIW, it is IMHO bad practice in general to just add new passes, instead of investigating why existing passes don't do the job and how they can be enhanced to do the job better. It's also not a particularly great idea to duplicate a lot of code (like you did, from the CC-cse pass), and I thought machine-specific optimization passes are a no-no unless there really, _really_ is no way to do the optimization elsewhere in the shared code. Gr. Steven