[<prev] [next>] [thread-next>] [day] [month] [year] [list]
Message-ID: <20080118045921.GB974@phobos.i.cabal.ca>
Date: Thu, 17 Jan 2008 23:59:21 -0500
From: Kyle McMartin <kyle@...artin.ca>
To: hpa@...or.com
Cc: tglx@...utronix.de, mingo@...hat.com, linux-kernel@...r.kernel.org
Subject: [PATCH] x86: make clflush a required feature on x86_64
Hopefully nobody will be stupid enough to implement a cpu without
it. Frankly, it seems safe enough given we already require SSE2.
This means the compiler can optimise away "if (!cpu_has_clflush)"
blocks.
Signed-off-by: Kyle McMartin <kyle@...artin.ca>
---
include/asm-x86/cpufeature_64.h | 3 +++
include/asm-x86/required-features.h | 4 +++-
2 files changed, 6 insertions(+), 1 deletions(-)
diff --git a/include/asm-x86/cpufeature_64.h b/include/asm-x86/cpufeature_64.h
index e18496b..ef11d27 100644
--- a/include/asm-x86/cpufeature_64.h
+++ b/include/asm-x86/cpufeature_64.h
@@ -18,6 +18,9 @@
#undef cpu_has_mp
#define cpu_has_mp 1 /* XXX */
+#undef cpu_has_clflush
+#define cpu_has_clflush 1
+
#undef cpu_has_k6_mtrr
#define cpu_has_k6_mtrr 0
diff --git a/include/asm-x86/required-features.h b/include/asm-x86/required-features.h
index 7400d3a..cc27664 100644
--- a/include/asm-x86/required-features.h
+++ b/include/asm-x86/required-features.h
@@ -45,6 +45,7 @@
#define NEED_XMM (1<<(X86_FEATURE_XMM & 31))
#define NEED_XMM2 (1<<(X86_FEATURE_XMM2 & 31))
#define NEED_LM (1<<(X86_FEATURE_LM & 31))
+#define NEED_CLFLSH (1<<(X86_FEATURE_CLFLSH & 31))
#else
#define NEED_PSE 0
#define NEED_MSR 0
@@ -53,11 +54,12 @@
#define NEED_XMM 0
#define NEED_XMM2 0
#define NEED_LM 0
+#define NEED_CLFLSH 0
#endif
#define REQUIRED_MASK0 (NEED_FPU|NEED_PSE|NEED_MSR|NEED_PAE|\
NEED_CX8|NEED_PGE|NEED_FXSR|NEED_CMOV|\
- NEED_XMM|NEED_XMM2)
+ NEED_XMM|NEED_XMM2|NEED_CLFLSH)
#define SSE_MASK (NEED_XMM|NEED_XMM2)
#define REQUIRED_MASK1 (NEED_LM|NEED_3DNOW)
--
1.5.3.7
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
Powered by blists - more mailing lists