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) \