Merge branch 'master' into upstream.
[cascardo/linux.git] / include / linux / prefetch.h
index 1adfe66..a3bfbdf 100644 (file)
        prefetchw(x)    - prefetches the cacheline at "x" for write
        spin_lock_prefetch(x) - prefetches the spinlock *x for taking
        
-       there is also PREFETCH_STRIDE which is the architecure-prefered 
+       there is also PREFETCH_STRIDE which is the architecure-preferred 
        "lookahead" size for prefetching streamed operations.
        
 */
 
-/*
- *     These cannot be do{}while(0) macros. See the mental gymnastics in
- *     the loop macro.
- */
 #ifndef ARCH_HAS_PREFETCH
-static inline void prefetch(const void *x) {;}
+#define prefetch(x) __builtin_prefetch(x)
 #endif
 
 #ifndef ARCH_HAS_PREFETCHW
-static inline void prefetchw(const void *x) {;}
+#define prefetchw(x) __builtin_prefetch(x,1)
 #endif
 
 #ifndef ARCH_HAS_SPINLOCK_PREFETCH