summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authortanjent@gmail.com <tanjent@gmail.com@77a7d1d3-4c08-bdc2-d393-d5859734b01a>2013-04-19 19:57:16 +0000
committertanjent@gmail.com <tanjent@gmail.com@77a7d1d3-4c08-bdc2-d393-d5859734b01a>2013-04-19 19:57:16 +0000
commit8adb1336422e3ad4d78ba54fb56692f2ed07124c (patch)
treea138108247f885f3c7a2aee5a16d6924ac377b63
parente813f9b95be7adad5a2e441f4484278c453e5261 (diff)
downloadsrc-8adb1336422e3ad4d78ba54fb56692f2ed07124c.tar.gz
City.cpp/h was using the _mm_crc32_u64 intrinsic, which is only supported on x64 platforms - see https://bugs.gentoo.org/show_bug.cgi?id=459126 for details.
git-svn-id: http://smhasher.googlecode.com/svn/trunk@148 77a7d1d3-4c08-bdc2-d393-d5859734b01a
-rw-r--r--City.cpp2
-rw-r--r--City.h2
2 files changed, 2 insertions, 2 deletions
diff --git a/City.cpp b/City.cpp
index 4d70dd2..d7c33bc 100644
--- a/City.cpp
+++ b/City.cpp
@@ -351,7 +351,7 @@ uint128 CityHash128(const char *s, size_t len) {
}
}
-#ifdef __SSE4_2__
+#if defined(__SSE4_2__) && defined(__x86_64__)
#include <nmmintrin.h>
// Requires len >= 240.
diff --git a/City.h b/City.h
index fe2d3e2..c12c1bb 100644
--- a/City.h
+++ b/City.h
@@ -90,7 +90,7 @@ inline uint64 Hash128to64(const uint128& x) {
// Conditionally include declarations for versions of City that require SSE4.2
// instructions to be available.
-#ifdef __SSE4_2__
+#if defined(__SSE4_2__) && defined(__x86_64__)
// Hash function for a byte array.
uint128 CityHashCrc128(const char *s, size_t len);