diff options
author | Alexey Kopytov <Alexey.Kopytov@sun.com> | 2010-07-12 18:58:55 +0400 |
---|---|---|
committer | Alexey Kopytov <Alexey.Kopytov@sun.com> | 2010-07-12 18:58:55 +0400 |
commit | e98169d52c8610efa523040d4409054e352f92df (patch) | |
tree | 1f7d9c4a8b5f1c09c64fa7cb7eefed6f869617c1 | |
parent | 52d5941bf14b1d9329819e4cdf861bf26fbecb45 (diff) | |
download | mariadb-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.cc | 2 |
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 |