RE: [PATCH] fixes for building kernel 2.5.45 using Intel compiler

Nakajima, Jun (jun.nakajima@intel.com)
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/