List:Commits« Previous MessageNext Message »
From:Olav Sandstaa Date:August 22 2008 12:26pm
Subject:bzr push into mysql-6.0-falcon branch (olav:2792)
View as plain text  
 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 Sandstaa22 Aug