From: Takayuki 'January June' Suwa Date: Tue, 27 May 2025 06:58:35 +0000 (+0900) Subject: xtensa: Remove an unnecessary constraint modifier from movsf_internal insn pattern X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=2e5130f6870bdb016f58f42f2ff99a2226e93af6;p=thirdparty%2Fgcc.git xtensa: Remove an unnecessary constraint modifier from movsf_internal insn pattern 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. --- diff --git a/gcc/config/xtensa/xtensa.md b/gcc/config/xtensa/xtensa.md index 88f011cd0ef..c7ac456ae5f 100644 --- a/gcc/config/xtensa/xtensa.md +++ b/gcc/config/xtensa/xtensa.md @@ -1453,7 +1453,7 @@ }) (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))