summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAlexey Kopytov <Alexey.Kopytov@sun.com>2010-07-12 18:58:55 +0400
committerAlexey Kopytov <Alexey.Kopytov@sun.com>2010-07-12 18:58:55 +0400
commite98169d52c8610efa523040d4409054e352f92df (patch)
tree1f7d9c4a8b5f1c09c64fa7cb7eefed6f869617c1
parent52d5941bf14b1d9329819e4cdf861bf26fbecb45 (diff)
downloadmariadb-git-e98169d52c8610efa523040d4409054e352f92df.tar.gz
Bug#55061: Build failing on sol 8 x86 - assembler code vs
compiler problem GCC-style inline assembly is not supported by the Sun Studio compilers prior to version 12. Added a check for the Sun Studio version to avoid using _FPU_GETCW() / _FPU_SETCW() when inline assembly is unsupported. This can lead to some differences in floating point calculations on Solaris 8/x86 which, however, is not worth bothering with Sun-style assembly .il templates.
-rw-r--r--sql/mysqld.cc2
1 files changed, 1 insertions, 1 deletions
diff --git a/sql/mysqld.cc b/sql/mysqld.cc
index 99f16b36dfa..598db8d993c 100644
--- a/sql/mysqld.cc
+++ b/sql/mysqld.cc
@@ -190,7 +190,7 @@ typedef fp_except fp_except_t;
# define fpu_control_t unsigned int
# define _FPU_EXTENDED 0x300
# define _FPU_DOUBLE 0x200
-# if defined(__GNUC__) || defined(__SUNPRO_CC)
+# if defined(__GNUC__) || (defined(__SUNPRO_CC) && __SUNPRO_CC >= 0x590)
# define _FPU_GETCW(cw) asm volatile ("fnstcw %0" : "=m" (*&cw))
# define _FPU_SETCW(cw) asm volatile ("fldcw %0" : : "m" (*&cw))
# else