]> git.ipfire.org Git - thirdparty/gcc.git/commitdiff
xtensa: Remove an unnecessary constraint modifier from movsf_internal insn pattern
authorTakayuki 'January June' Suwa <jjsuwa_sys3175@yahoo.co.jp>
Tue, 27 May 2025 06:58:35 +0000 (15:58 +0900)
committerMax Filippov <jcmvbkbc@gmail.com>
Sun, 1 Jun 2025 00:32:04 +0000 (17:32 -0700)
In this case, there is no need to consider reloading when memory is the
destination.  On the other hand, when memory is the source, reloading
read from constant pool becomes double indirection and should obviously
be avoided.

gcc/ChangeLog:

* config/xtensa/xtensa.md (movsf_internal):
Remove destination side constraint modifier '^' in the third
alternative.

gcc/config/xtensa/xtensa.md

index 88f011cd0ef617638434e90f1486743039d0546b..c7ac456ae5f317266de1ca85f2184d7e48be25e8 100644 (file)
 })
 
 (define_insn "movsf_internal"
-  [(set (match_operand:SF 0 "nonimmed_operand" "=f,f,^U,D,a,D,R,a,f,a,a,W,a,U")
+  [(set (match_operand:SF 0 "nonimmed_operand" "=f,f,U,D,a,D,R,a,f,a,a,W,a,U")
        (match_operand:SF 1 "move_operand" "f,^U,f,d,T,R,d,r,r,f,Y,iF,U,r"))]
   "((register_operand (operands[0], SFmode)
      || register_operand (operands[1], SFmode))