Messages in this thread |  | | Date | Thu, 10 May 2001 14:19:48 +0200 | From | Ingo Oeser <> | Subject | Re: page_launder() bug |
| |
On Tue, May 08, 2001 at 09:52:15AM +0200, Helge Hafting wrote: > > Isn't this asking for trouble with the optimizer ? It could kill both > > !!. Using that is like trusting on a certain struct padding-alignment. > > No, this won't cause trouble with the optimizer, because the > optimizer isn't supposed to do _wrong_ things.
Right. The optimizer proves equivalence of terms and exchange the one that are bad for the optimization goal (e.g performance, speed, size) against the one that works more towards this goal.
Everything else is an optimizer BUG, which should be reported and fixed.
The C{89,99} standard now defines the syntax and semantics of theses terms.
Relevant for the optimizer: possible values of terms, assumptions made on the static and dynamic behavior of these terms (add anything I forgot).
So the optimizer should NEVER cause trouble if you write completely valid C{89,99} and the compiler and environment implement 100% of the semantics of it.
Compiler specific features should be seen as an addition to the standard on this compiler. They follow the same rules stated above.
Regards
Ingo Oeser -- 10.+11.03.2001 - 3. Chemnitzer LinuxTag <http://www.tu-chemnitz.de/linux/tag> <<<<<<<<<<<< been there and had much fun >>>>>>>>>>>> - To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
|  |