aboutsummaryrefslogtreecommitdiffstats
path: root/arch/x86/include/asm/processor.h
diff options
context:
space:
mode:
Diffstat (limited to 'arch/x86/include/asm/processor.h')
-rw-r--r--arch/x86/include/asm/processor.h16
1 files changed, 7 insertions, 9 deletions
diff --git a/arch/x86/include/asm/processor.h b/arch/x86/include/asm/processor.h
index ec1c93588cef..7be2c9a6caba 100644
--- a/arch/x86/include/asm/processor.h
+++ b/arch/x86/include/asm/processor.h
@@ -761,10 +761,10 @@ extern char ignore_fpu_irq;
761#define ARCH_HAS_SPINLOCK_PREFETCH 761#define ARCH_HAS_SPINLOCK_PREFETCH
762 762
763#ifdef CONFIG_X86_32 763#ifdef CONFIG_X86_32
764# define BASE_PREFETCH ASM_NOP4 764# define BASE_PREFETCH ""
765# define ARCH_HAS_PREFETCH 765# define ARCH_HAS_PREFETCH
766#else 766#else
767# define BASE_PREFETCH "prefetcht0 (%1)" 767# define BASE_PREFETCH "prefetcht0 %P1"
768#endif 768#endif
769 769
770/* 770/*
@@ -775,10 +775,9 @@ extern char ignore_fpu_irq;
775 */ 775 */
776static inline void prefetch(const void *x) 776static inline void prefetch(const void *x)
777{ 777{
778 alternative_input(BASE_PREFETCH, 778 alternative_input(BASE_PREFETCH, "prefetchnta %P1",
779 "prefetchnta (%1)",
780 X86_FEATURE_XMM, 779 X86_FEATURE_XMM,
781 "r" (x)); 780 "m" (*(const char *)x));
782} 781}
783 782
784/* 783/*
@@ -788,10 +787,9 @@ static inline void prefetch(const void *x)
788 */ 787 */
789static inline void prefetchw(const void *x) 788static inline void prefetchw(const void *x)
790{ 789{
791 alternative_input(BASE_PREFETCH, 790 alternative_input(BASE_PREFETCH, "prefetchw %P1",
792 "prefetchw (%1)", 791 X86_FEATURE_3DNOWPREFETCH,
793 X86_FEATURE_3DNOW, 792 "m" (*(const char *)x));
794 "r" (x));
795} 793}
796 794
797static inline void spin_lock_prefetch(const void *x) 795static inline void spin_lock_prefetch(const void *x)