]> git.ipfire.org Git - thirdparty/gcc.git/commitdiff
xtensa: Remove redundant use of 'F'-constraint
authorTakayuki 'January June' Suwa <jjsuwa_sys3175@yahoo.co.jp>
Fri, 31 Oct 2025 06:21:54 +0000 (15:21 +0900)
committerMax Filippov <jcmvbkbc@gmail.com>
Sat, 1 Nov 2025 04:38:48 +0000 (21:38 -0700)
Because it is redundant to specify 'F'-constraints on operands in single-
alternative match templates whose predicates imply CONST_DOUBLE_P().

gcc/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

index 4ba7f54c9408e121d96e1be1cc3f69315e6afe57..e05b35bb964b0e8ad8f41d0c9d2b2bed978d6b03 100644 (file)
 (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")
 (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")
 (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")