https://gcc.gnu.org/g:6dd8d07444baa41f62426990c8768f746c79fb79

commit r17-1415-g6dd8d07444baa41f62426990c8768f746c79fb79
Author: Richard Sandiford <[email protected]>
Date:   Mon Jun 8 08:31:18 2026 +0100

    sh: Remove can_create_pseudo_p check
    
    Optab instruction conditions are cached and so won't adapt to the
    current phase of compilation.
    
    The old code to FAIL for !create_pseudo_p was redundant since
    general-purpose arithmetic optabs like bswap can only be used
    while can_create_pseudo_p is true.
    
    gcc/
            * config/sh/sh.md (bswapsi): Remove can_create_pseudo_p () check.

Diff:
---
 gcc/config/sh/sh.md | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/gcc/config/sh/sh.md b/gcc/config/sh/sh.md
index 0ead908e883b..fbffd63b0630 100644
--- a/gcc/config/sh/sh.md
+++ b/gcc/config/sh/sh.md
@@ -4597,7 +4597,7 @@
 (define_expand "bswapsi2"
   [(set (match_operand:SI 0 "arith_reg_dest" "")
        (bswap:SI (match_operand:SI 1 "arith_reg_operand" "")))]
-  "TARGET_SH1 && can_create_pseudo_p ()"
+  "TARGET_SH1"
 {
   rtx tmp0 = gen_reg_rtx (SImode);
   rtx tmp1 = gen_reg_rtx (SImode);

Reply via email to