]> git.ipfire.org Git - thirdparty/gcc.git/commitdiff
* config/i386/i386.h (TARGET_FLT_EVAL_METHOD): Return -1 for
authoruros <uros@138bc75d-0d04-0410-961f-82ee72b054a4>
Wed, 13 Jan 2016 16:41:46 +0000 (16:41 +0000)
committeruros <uros@138bc75d-0d04-0410-961f-82ee72b054a4>
Wed, 13 Jan 2016 16:41:46 +0000 (16:41 +0000)
TARGET_SSE_MATH without TARGET_SSE2.  Rewrite.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@232328 138bc75d-0d04-0410-961f-82ee72b054a4

gcc/ChangeLog
gcc/config/i386/i386.h

index 7a2ce92c6cf006812e152e1bc06a5ffd8c76c1f0..f8126eff8c2afacc121b99fd10d13cd841070055 100644 (file)
@@ -1,3 +1,8 @@
+2016-01-13  Uros Bizjak  <ubizjak@gmail.com>
+
+       * config/i386/i386.h (TARGET_FLT_EVAL_METHOD): Return -1 for
+       TARGET_SSE_MATH without TARGET_SSE2.  Rewrite.
+
 2016-01-13  Yvan Roux  <yvan.roux@linaro.org>
 
        * config/arm/arm-arches.def: Remove spurious whitespace in "armv8.1-a"
index 6c63871e7f24e8082f303e54ff5112cccfb785d4..9062d631165bcbd996a9f19ddcb6f0125e126d50 100644 (file)
@@ -693,8 +693,11 @@ extern const char *host_detect_local_cpu (int argc, const char **argv);
    only SSE, rounding is correct; when using both SSE and the FPU,
    the rounding precision is indeterminate, since either may be chosen
    apparently at random.  */
-#define TARGET_FLT_EVAL_METHOD \
-  (TARGET_MIX_SSE_I387 ? -1 : (TARGET_80387 && !TARGET_SSE_MATH) ? 2 : 0)
+#define TARGET_FLT_EVAL_METHOD                                         \
+  (TARGET_80387                                                                \
+   ? (TARGET_MIX_SSE_I387 ? -1                                         \
+      : (TARGET_SSE_MATH ? (TARGET_SSE2 ? 0 : -1) : 2))                        \
+   : 0)
 
 /* Whether to allow x87 floating-point arithmetic on MODE (one of
    SFmode, DFmode and XFmode) in the current excess precision