|
|
1e4169 |
diff --git a/configure.ac b/configure.ac
|
|
|
1e4169 |
index 26c509e..c1bfd62 100644
|
|
|
1e4169 |
--- a/configure.ac
|
|
|
1e4169 |
+++ b/configure.ac
|
|
|
1e4169 |
@@ -4152,6 +4152,10 @@ if test "yes" = "$use_atomic"; then
|
|
Adam Tkac |
5e22ac |
AC_MSG_RESULT($arch)
|
|
Adam Tkac |
5e22ac |
fi
|
|
Adam Tkac |
5e22ac |
|
|
Adam Tkac |
5e22ac |
+if test ! "$arch" = "x86_64" -a "$have_xaddq" = "yes"; then
|
|
Adam Tkac |
5e22ac |
+ AC_MSG_ERROR([XADDQ present but disabled by Fedora patch!])
|
|
Adam Tkac |
5e22ac |
+fi
|
|
Adam Tkac |
5e22ac |
+
|
|
|
102df2 |
if test "yes" = "$have_atomic"; then
|
|
Adam Tkac |
5e22ac |
AC_MSG_CHECKING([compiler support for inline assembly code])
|
|
Adam Tkac |
5e22ac |
|
|
Tomas Hozza |
3fed71 |
diff --git a/lib/isc/include/isc/platform.h.in b/lib/isc/include/isc/platform.h.in
|
|
|
1e4169 |
index c902d46..9c7c342 100644
|
|
Tomas Hozza |
3fed71 |
--- a/lib/isc/include/isc/platform.h.in
|
|
Tomas Hozza |
3fed71 |
+++ b/lib/isc/include/isc/platform.h.in
|
|
|
1e4169 |
@@ -284,19 +284,25 @@
|
|
Adam Tkac |
5e22ac |
* If the "xaddq" operation (64bit xadd) is available on this architecture,
|
|
Adam Tkac |
5e22ac |
* ISC_PLATFORM_HAVEXADDQ will be defined.
|
|
Adam Tkac |
5e22ac |
*/
|
|
Adam Tkac |
5e22ac |
-@ISC_PLATFORM_HAVEXADDQ@
|
|
|
2ac37f |
|
|
|
2ac37f |
/*
|
|
|
2ac37f |
- * If the 32-bit "atomic swap" operation is available on this
|
|
|
2ac37f |
- * architecture, ISC_PLATFORM_HAVEATOMICSTORE" will be defined.
|
|
|
2ac37f |
+ * If the 64-bit "atomic swap" operation is available on this
|
|
|
2ac37f |
+ * architecture, ISC_PLATFORM_HAVEATOMICSTOREQ" will be defined.
|
|
|
2ac37f |
*/
|
|
|
2ac37f |
-@ISC_PLATFORM_HAVEATOMICSTORE@
|
|
|
2ac37f |
+
|
|
Adam Tkac |
5e22ac |
+#ifdef __x86_64__
|
|
Adam Tkac |
5e22ac |
+#define ISC_PLATFORM_HAVEXADDQ 1
|
|
|
2ac37f |
+#define ISC_PLATFORM_HAVEATOMICSTOREQ 1
|
|
Adam Tkac |
5e22ac |
+#else
|
|
Adam Tkac |
5e22ac |
+#undef ISC_PLATFORM_HAVEXADDQ
|
|
|
2ac37f |
+#undef ISC_PLATFORM_HAVEATOMICSTOREQ
|
|
Adam Tkac |
5e22ac |
+#endif
|
|
Adam Tkac |
5e22ac |
|
|
Adam Tkac |
5e22ac |
/*
|
|
|
2ac37f |
- * If the 64-bit "atomic swap" operation is available on this
|
|
|
2ac37f |
+ * If the 32-bit "atomic swap" operation is available on this
|
|
|
2ac37f |
* architecture, ISC_PLATFORM_HAVEATOMICSTORE" will be defined.
|
|
|
2ac37f |
*/
|
|
|
2ac37f |
-@ISC_PLATFORM_HAVEATOMICSTOREQ@
|
|
|
2ac37f |
+@ISC_PLATFORM_HAVEATOMICSTORE@
|
|
|
2ac37f |
|
|
|
2ac37f |
/*
|
|
|
2ac37f |
* If the "compare-and-exchange" operation is available on this architecture,
|