summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--gcc/ChangeLog9
-rw-r--r--gcc/config/i386/i386.md18
2 files changed, 21 insertions, 6 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index 9374b611e35..8fe588c444d 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,3 +1,12 @@
+2014-09-30 Uros Bizjak <ubizjak@gmail.com>
+
+ * config/i386/i386.md (fmodxf3): Enable for flag_finite_math_only only.
+ (fmod<mode>3): Ditto.
+ (fpremxf4_i387): Ditto.
+ (reminderxf3): Ditto.
+ (reminder<mode>3): Ditto.
+ (fprem1xf4_i387): Ditto.
+
2014-09-30 Teresa Johnson <tejohnson@google.com>
* tree-ssa-threadupdate.c (struct ssa_local_info_t): New
diff --git a/gcc/config/i386/i386.md b/gcc/config/i386/i386.md
index 004302df4f0..624a1c1468b 100644
--- a/gcc/config/i386/i386.md
+++ b/gcc/config/i386/i386.md
@@ -13813,7 +13813,8 @@
(set (reg:CCFP FPSR_REG)
(unspec:CCFP [(match_dup 2) (match_dup 3)]
UNSPEC_C2_FLAG))]
- "TARGET_USE_FANCY_MATH_387"
+ "TARGET_USE_FANCY_MATH_387
+ && flag_finite_math_only"
"fprem"
[(set_attr "type" "fpspc")
(set_attr "mode" "XF")])
@@ -13822,7 +13823,8 @@
[(use (match_operand:XF 0 "register_operand"))
(use (match_operand:XF 1 "general_operand"))
(use (match_operand:XF 2 "general_operand"))]
- "TARGET_USE_FANCY_MATH_387"
+ "TARGET_USE_FANCY_MATH_387
+ && flag_finite_math_only"
{
rtx_code_label *label = gen_label_rtx ();
@@ -13845,7 +13847,8 @@
[(use (match_operand:MODEF 0 "register_operand"))
(use (match_operand:MODEF 1 "general_operand"))
(use (match_operand:MODEF 2 "general_operand"))]
- "TARGET_USE_FANCY_MATH_387"
+ "TARGET_USE_FANCY_MATH_387
+ && flag_finite_math_only"
{
rtx (*gen_truncxf) (rtx, rtx);
@@ -13884,7 +13887,8 @@
(set (reg:CCFP FPSR_REG)
(unspec:CCFP [(match_dup 2) (match_dup 3)]
UNSPEC_C2_FLAG))]
- "TARGET_USE_FANCY_MATH_387"
+ "TARGET_USE_FANCY_MATH_387
+ && flag_finite_math_only"
"fprem1"
[(set_attr "type" "fpspc")
(set_attr "mode" "XF")])
@@ -13893,7 +13897,8 @@
[(use (match_operand:XF 0 "register_operand"))
(use (match_operand:XF 1 "general_operand"))
(use (match_operand:XF 2 "general_operand"))]
- "TARGET_USE_FANCY_MATH_387"
+ "TARGET_USE_FANCY_MATH_387
+ && flag_finite_math_only"
{
rtx_code_label *label = gen_label_rtx ();
@@ -13916,7 +13921,8 @@
[(use (match_operand:MODEF 0 "register_operand"))
(use (match_operand:MODEF 1 "general_operand"))
(use (match_operand:MODEF 2 "general_operand"))]
- "TARGET_USE_FANCY_MATH_387"
+ "TARGET_USE_FANCY_MATH_387
+ && flag_finite_math_only"
{
rtx (*gen_truncxf) (rtx, rtx);