Messages in this thread | | | Date | Sun, 22 Jul 2007 21:55:32 +0200 | From | Andi Kleen <> | Subject | Re: [PATCH] x86: Create clflush() inline, remove hardcoded wbinvd |
| |
On Sun, Jul 22, 2007 at 11:05:24AM -0700, H. Peter Anvin wrote: > Andi Kleen wrote: > >> The main reason is that everyone seems to invoke it either incorrectly > > Where is it incorrect? > > Using "r" or "m" (as opposed as "+m") gives gcc the wrong dependency > information, and it could, at least in theory, cause memory references > to be moved around it -- especially when using "r".
That doesn't sound correct. Taking the address should be like an escaping pointer and equivalent to read/write and effectively disable optimizations on this memory.
-Andi - 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/
| |