Because it is redundant to specify 'F'-constraints on operands in single-
alternative match templates whose predicates imply CONST_DOUBLE_P().

cc/ChangeLog:

        * config/xtensa/xtensa.md (*fix<s_fix>_truncsfsi2_scaled,
        *float<s_float>sisf2_scaled, *l<m_round>sfsi2_scaled):
        Remove 'F'-constraint.
---
 gcc/config/xtensa/xtensa.md | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/gcc/config/xtensa/xtensa.md b/gcc/config/xtensa/xtensa.md
index 4ba7f54c940..e05b35bb964 100644
--- a/gcc/config/xtensa/xtensa.md
+++ b/gcc/config/xtensa/xtensa.md
@@ -1139,7 +1139,7 @@
 (define_insn "*fix<s_fix>_truncsfsi2_scaled"
   [(set (match_operand:SI 0 "register_operand" "=a")
        (any_fix:SI (mult:SF (match_operand:SF 1 "register_operand" "f")
-                            (match_operand:SF 2 "fix_scaling_operand" "F"))))]
+                            (match_operand:SF 2 "fix_scaling_operand" ""))))]
   "TARGET_HARD_FLOAT"
   "<m_fix>.s\t%0, %1, %U2"
   [(set_attr "type"  "fconv")
@@ -1158,7 +1158,7 @@
 (define_insn "*float<s_float>sisf2_scaled"
   [(set (match_operand:SF 0 "register_operand" "=f")
        (mult:SF (any_float:SF (match_operand:SI 1 "register_operand" "a"))
-                (match_operand:SF 2 "float_scaling_operand" "F")))]
+                (match_operand:SF 2 "float_scaling_operand" "")))]
   "TARGET_HARD_FLOAT"
   "<m_float>.s\t%0, %1, %V2"
   [(set_attr "type"  "fconv")
@@ -1187,7 +1187,7 @@
 (define_insn "*l<m_round>sfsi2_scaled"
   [(set (match_operand:SI 0 "register_operand" "=a")
        (unspec:SI [(mult:SF (match_operand:SF 1 "register_operand" "f")
-                            (match_operand:SF 2 "fix_scaling_operand" "F"))] 
ANY_ROUND))]
+                            (match_operand:SF 2 "fix_scaling_operand" ""))] 
ANY_ROUND))]
   "TARGET_HARD_FLOAT"
   "<m_round>.s\t%0, %1, %U2"
   [(set_attr "type"  "fconv")
--
2.39.5

Reply via email to