Messages in this thread | | | From | "Nakajima, Jun" <> | Subject | RE: [PATCH] fixes for building kernel 2.5.45 using Intel compiler (Ta ke 2) | Date | Thu, 31 Oct 2002 14:47:16 -0800 |
| |
> From: Nakajima, Jun [mailto:jun.nakajima@intel.com] > Sent: Thursday, October 31, 2002 12:17 PM > > This is take 2 of the updated patch against 2.5.45. I'm > asking the compiler team if someone can answer your question: > > > Considering that Intel largely wrote iBCS2, I guess some > Intel person can > > know what the standard was ;)
This is what some Intel person said: The optimization the compiler is working around is perfectly legal. It isn't legal C/C++ to "use" a parameter after the function has returned. The optimizer knows this, and that is why the code got removed. The volatile is necessary in order to make this kind of C code work.
The point is that once sys_iopl(unsigned long unused) returns a value, unused is finished. So nobody can do anything with the data associated with it after that.
Jun - 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/
| |