1) As multiple people said, it *was* a regression bug fix. It actually fixed two regressions. (That it fixed the second was discovered only after I committed it). I'm sorry that it caused problems for you (even though it's actually lucky for GCC), but I can't help saying that it might have been the other way and it might have improved your weather forecasting app by 10-20% or more, as it did on one or two SPEC benchmarks.
2) I apologize for the bad quality of the patch. But I tested it on bootstrap, SPEC2000, and of course the testcase, and it had no problems. This testing takes more than 24 hours on my machine and it is more than is requested usually--and I did for correctness, not for performance testing. In addition, all but one of the fixes that H.J. made (and for which I have to thank him) were unrecognizable insns due to a misunderstanding of how peephole2 worked; I thought it recognized the produced instructions, instead apparently it's the only optimization in GCC where this does not happen. I have a patch to fix this in GCC 4.5. 3) I look forward to seeing the result of the tests H.J. asked you to do, so that at least we can find which peephole2 is responsible. If you want to revert it now, go ahead. I don't see any problems with that and I can approve the reversal of my patch. I'll try again for 4.5 and propose the patch for 4.5.1. Alternatively, let's use these 48 hours constructively to finish the above test, look at the code and try and understand the cause of the failure. I'll do my part by looking at the code *now*. 4) I would have appreciated being CCed on the message. That said, > I run a weather forecasting system 4 times daily to test it out. We can only thank you for this. Please keep the same attitude towards the people that try to improve the compiler. Paolo