On 20 December 2006 02:40, Mike Stump wrote: > On Dec 19, 2006, at 6:33 PM, Dave Korn wrote: >> On 20 December 2006 02:28, Andrew Pinski wrote: >> >>>> Paul Brook wrote: >>>>>> Compiler can optimize it any way it wants, >>>>>> as long as result is the same as unoptimized one. >>>>> >>>>> We have an option for that. It's called -O0. >>>>> >>>>> Pretty much all optimization will change the behavior of your >>>>> program. >>>> >>>> Now that's a bit TOO strong a statement, critical optimizations like >>>> register allocation and instruction scheduling will generally not change >>>> the behavior of the program (though the basic decision to put something >>>> in a register will, and *surely* no one suggests avoiding this critical >>>> optimization). >>> >>> Actually they will with multi threaded program, since you can have a case >>> where it works and now it is broken because one thread has speed up so >>> much it writes to a variable which had a copy on another thread's stack. >> >> Why isn't that just a buggy program with wilful disregard for the use of >> correct synchronisation techniques? > > It is that, as well as a program that features a result that is > different from unoptimized code.
Well, I for one wish to complain. All the empty for loops that I use for precision timing have been getting faster and faster over the past few years. It used to take several minutes for i to count from one to a hundred million. Now it seems to take no time at all! cheers, DaveK -- Can't think of a witty .sigline today....