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?
cheers,
DaveK
--
Can't think of a witty .sigline today....