2792 Olav Sandstaa 2008-08-22 [merge]
Merging.....
modified:
mysql-test/suite/falcon/r/falcon_bug_22165.result
mysql-test/suite/falcon/t/falcon_bug_22165.test
storage/falcon/DenseArray.h
storage/falcon/Interlock.h
storage/falcon/MemMgr.cpp
storage/falcon/StorageTable.cpp
storage/falcon/StorageTable.h
storage/falcon/StorageTableShare.cpp
storage/falcon/StorageTableShare.h
storage/falcon/Transaction.cpp
storage/falcon/ha_falcon.cpp
storage/falcon/ha_falcon.h
=== modified file 'configure.in'
=== modified file 'configure.in'
--- a/configure.in 2008-08-12 22:21:35 +0000
+++ b/configure.in 2008-08-20 13:27:29 +0000
@@ -1797,6 +1797,9 @@
[Define to 1 if compiler provides atomic builtins.])
fi
+# Check if we have the atomic_* functions on Solaris
+AC_CHECK_FUNC(atomic_cas_32, AC_DEFINE([HAVE_SOLARIS_ATOMIC], [1], [Define to 1 if Solaris support atomic functions.]))
+
# Force static compilation to avoid linking problems/get more speed
AC_ARG_WITH(mysqld-ldflags,
[ --with-mysqld-ldflags Extra linking arguments for mysqld],
=== modified file 'storage/falcon/plug.in'
--- a/storage/falcon/plug.in 2008-08-12 21:50:50 +0000
+++ b/storage/falcon/plug.in 2008-08-20 13:27:29 +0000
@@ -19,6 +19,18 @@
int compare= 1;
int exchange= 2;
],[
+#if defined(__SUNPRO_C) || defined(__SUNPRO_CC)
+ /* When compiling with Sun Studio compiler we need the Solaris atomic
+ functions. These were first introduced in Solaris 10. */
+#if defined(HAVE_SOLARIS_ATOMIC)
+ return 0;
+#else
+ /* Fail if the atomic functions are not available. Support for this
+ will be added when the fix for bug 37622 is completed. */
+#error Need Solaris atomic functions to use Sun Studio compiler
+#endif /* HAVE_SOLARIS_ATOMIC */
+#else
+ /* Use gcc style inline assembly when compiling with gcc */
char ret;
__asm__ __volatile__ (
"membar #LoadLoad | #LoadStore | #StoreLoad | #StoreStore\n\t"
@@ -32,6 +44,7 @@
: "r" (&target), "0" (compare)
: "memory", "cc"
)
+#endif /* !__SUNPRO_C && !__SUNPRO_CC */
], falcon_supported_by_machine="yes",
falcon_supported_by_machine="no")
;;
| Thread |
|---|
| • bzr push into mysql-6.0-falcon branch (olav:2792) | Olav Sandstaa | 22 Aug |