aboutsummaryrefslogtreecommitdiff
path: root/gcc
diff options
context:
space:
mode:
authorUros Bizjak <ubizjak@gmail.com>2016-01-13 17:41:46 +0100
committerUros Bizjak <uros@gcc.gnu.org>2016-01-13 17:41:46 +0100
commit6235f59c57ed748912df409410718c09b04e8ef0 (patch)
tree667509371fa96fd95f95f4476dd91781fc6e4a33 /gcc
parent39a1d8c894fe8861719db2c2afd69007ab6cc0f5 (diff)
downloadgcc-6235f59c57ed748912df409410718c09b04e8ef0.zip
gcc-6235f59c57ed748912df409410718c09b04e8ef0.tar.gz
gcc-6235f59c57ed748912df409410718c09b04e8ef0.tar.bz2
i386.h (TARGET_FLT_EVAL_METHOD): Return -1 for TARGET_SSE_MATH without TARGET_SSE2.
* config/i386/i386.h (TARGET_FLT_EVAL_METHOD): Return -1 for TARGET_SSE_MATH without TARGET_SSE2. Rewrite. From-SVN: r232328
Diffstat (limited to 'gcc')
-rw-r--r--gcc/ChangeLog5
-rw-r--r--gcc/config/i386/i386.h7
2 files changed, 10 insertions, 2 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index 7a2ce92..f8126ef 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -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"
diff --git a/gcc/config/i386/i386.h b/gcc/config/i386/i386.h
index 6c63871..9062d63 100644
--- a/gcc/config/i386/i386.h
+++ b/gcc/config/i386/i386.h
@@ -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