David Miller <[EMAIL PROTECTED]> writes: > This is not a game or some fun theoretical discussion about language > semantics. People will be harmed and lose lots of their own personal > time debugging these kinds of things if GCC generates code like this. > It's unreasonable, regardless of what the standards say. Sometimes > the standards are wrong or fail to guide the implementation in these > grey areas, and GCC should do what's best for the users in these > cases. And I believe that this means to not do conditional > computations on memory even though it might be more efficient in some > situations.
I have no objection to implementing the sort of change you want as an option, if it can clearly specified. I'm going to repeat that this optimization is not new. As far as I know, nobody has complained about it for the several years that it has been implemented. That does not mean that I think we should keep it. It just means that I think you are reaching for the hyperbole button without justification. The gcc compiler is under considerable pressure from many people to deliver better performance. The kernel programmers have different requirements than most programmers do. Since gcc tries to be the compiler for everybody, it has to weigh significantly different concerns from many people. You are describing this situation as though there is only one side to the argument. I do not believe that is the case. Ian