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

Reply via email to