Benno Schulenberg wrote:
Although I agree with your reasoning above, you are contradicting
yourself in the following two statements:
At least, it's no more broken under -Os than under -O2.
[...] benefits of using -Os over -O2 are minimal
compared against the possible problems it might cause.
If -Os is no more broken than -O2, then it shouldn't cause any extra
problems. :)
True, this is a contradiction, but only in the sense that I failed to
distinguish between the general case of "most things" that used to break
under -Os don't break anymore, vs. the specific cases where the two
settings actually do differ. Obviously, O2 and Os are using a different
set of optimizations. In most cases the code is the same, so if there's
a problem with the resulting code, it's probably not the compiler's
fault. But there are always going to be corner cases where some extra
space-saving optimization does something unintended, or exposes some
bug, that O2 does not.
--K
--
[EMAIL PROTECTED] mailing list