https://gcc.gnu.org/g:1b9c907a4c9f3a89970e5295c69aefa23a133958

commit r16-686-g1b9c907a4c9f3a89970e5295c69aefa23a133958
Author: Richard Sandiford <richard.sandif...@arm.com>
Date:   Fri May 16 13:24:03 2025 +0100

    Manual tweak of some end_sequence callers
    
    This patch mops up obvious redundancies that weren't caught by the
    automatic regexp replacements in earlier patches.  It doesn't do
    anything with genemit.cc, since that will be part of a later series.
    
    gcc/
            * config/arm/arm.cc (arm_gen_load_multiple_1): Simplify use of
            end_sequence.
            (arm_gen_store_multiple_1): Likewise.
            * expr.cc (gen_move_insn): Likewise.
            * gentarget-def.cc (main): Likewise.

Diff:
---
 gcc/config/arm/arm.cc | 12 ++----------
 gcc/expr.cc           |  5 +----
 gcc/gentarget-def.cc  |  4 +---
 3 files changed, 4 insertions(+), 17 deletions(-)

diff --git a/gcc/config/arm/arm.cc b/gcc/config/arm/arm.cc
index 94624cc87a42..bde06f3fa866 100644
--- a/gcc/config/arm/arm.cc
+++ b/gcc/config/arm/arm.cc
@@ -14891,8 +14891,6 @@ arm_gen_load_multiple_1 (int count, int *regs, rtx 
*mems, rtx basereg,
 
   if (!multiple_operation_profitable_p (false, count, 0))
     {
-      rtx seq;
-
       start_sequence ();
 
       for (i = 0; i < count; i++)
@@ -14901,9 +14899,7 @@ arm_gen_load_multiple_1 (int count, int *regs, rtx 
*mems, rtx basereg,
       if (wback_offset != 0)
        emit_move_insn (basereg, plus_constant (Pmode, basereg, wback_offset));
 
-      seq = end_sequence ();
-
-      return seq;
+      return end_sequence ();
     }
 
   result = gen_rtx_PARALLEL (VOIDmode,
@@ -14941,8 +14937,6 @@ arm_gen_store_multiple_1 (int count, int *regs, rtx 
*mems, rtx basereg,
 
   if (!multiple_operation_profitable_p (false, count, 0))
     {
-      rtx seq;
-
       start_sequence ();
 
       for (i = 0; i < count; i++)
@@ -14951,9 +14945,7 @@ arm_gen_store_multiple_1 (int count, int *regs, rtx 
*mems, rtx basereg,
       if (wback_offset != 0)
        emit_move_insn (basereg, plus_constant (Pmode, basereg, wback_offset));
 
-      seq = end_sequence ();
-
-      return seq;
+      return end_sequence ();
     }
 
   result = gen_rtx_PARALLEL (VOIDmode,
diff --git a/gcc/expr.cc b/gcc/expr.cc
index 0bc2095dae32..1eeefa1cadc0 100644
--- a/gcc/expr.cc
+++ b/gcc/expr.cc
@@ -4760,12 +4760,9 @@ emit_move_insn (rtx x, rtx y)
 rtx_insn *
 gen_move_insn (rtx x, rtx y)
 {
-  rtx_insn *seq;
-
   start_sequence ();
   emit_move_insn_1 (x, y);
-  seq = end_sequence ();
-  return seq;
+  return end_sequence ();
 }
 
 /* If Y is representable exactly in a narrower mode, and the target can
diff --git a/gcc/gentarget-def.cc b/gcc/gentarget-def.cc
index a846a7cb200b..d0a557864efb 100644
--- a/gcc/gentarget-def.cc
+++ b/gcc/gentarget-def.cc
@@ -319,9 +319,7 @@ main (int argc, const char **argv)
   printf ("    return insn;\n");
   printf ("  start_sequence ();\n");
   printf ("  emit (x, false);\n");
-  printf ("  rtx_insn *res = get_insns ();\n");
-  printf ("  end_sequence ();\n");
-  printf ("  return res;\n");
+  printf ("  return end_sequence ();\n");
   printf ("}\n");
 
 #define DEF_TARGET_INSN(INSN, ARGS) \

Reply via email to