summaryrefslogtreecommitdiff
path: root/configure.in
diff options
context:
space:
mode:
authorAndrew Dunstan <andrew@dunslane.net>2011-12-14 17:15:24 -0500
committerAndrew Dunstan <andrew@dunslane.net>2011-12-14 17:15:24 -0500
commit5878a328e36b7f59c6c173212b77d0536e8804dd (patch)
tree804df702f16d6480ea0396af74a6f6328f40fdb6 /configure.in
parentfb0eca0695e0e287335cf969b8ae48f0a42c40e8 (diff)
downloadpostgresql-5878a328e36b7f59c6c173212b77d0536e8804dd.tar.gz
Disable excessive FP optimization by recent versions of gcc.
Suggested solution from Tom Lane. Problem discovered, probably not for the first time, while testing the mingw-w64 32 bit compiler. Backpatched to all live branches.
Diffstat (limited to 'configure.in')
-rw-r--r--configure.in2
1 files changed, 2 insertions, 0 deletions
diff --git a/configure.in b/configure.in
index 9cf084d4b6..9def3d54d5 100644
--- a/configure.in
+++ b/configure.in
@@ -437,6 +437,8 @@ if test "$GCC" = yes -a "$ICC" = no; then
PGAC_PROG_CC_CFLAGS_OPT([-fno-strict-aliasing])
# Disable optimizations that assume no overflow; needed for gcc 4.3+
PGAC_PROG_CC_CFLAGS_OPT([-fwrapv])
+ # Disable FP optimizations that cause various errors on gcc 4.5+ or maybe 4.6+
+ PGAC_PROG_CC_CFLAGS_OPT([-fexcess-precision=standard])
elif test "$ICC" = yes; then
# Intel's compiler has a bug/misoptimization in checking for
# division by NAN (NaN == 0), -mp1 fixes it, so add it to the CFLAGS.