From 78d114ef2d4ab348ab5446b9fc29da04c65de7ac Mon Sep 17 00:00:00 2001 From: "J\"orn Rennecke" Date: Wed, 16 Jun 1999 17:46:20 +0000 Subject: [PATCH] * sh.md (mulsi3): Don't add a no-op move at the end. From-SVN: r27554 --- gcc/ChangeLog | 4 ++++ gcc/config/sh/sh.md | 10 +--------- 2 files changed, 5 insertions(+), 9 deletions(-) diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 4f1699305af..73fd4f90b82 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,7 @@ +Thu Jun 17 01:45:24 1999 J"orn Rennecke + + * sh.md (mulsi3): Don't add a no-op move at the end. + Wed Jun 16 20:29:00 1999 J"orn Rennecke * cse.c (cse_insn): Don't put hard register source into tables for diff --git a/gcc/config/sh/sh.md b/gcc/config/sh/sh.md index 2acbb0f157d..38732e65256 100644 --- a/gcc/config/sh/sh.md +++ b/gcc/config/sh/sh.md @@ -1112,20 +1112,12 @@ else { rtx macl = gen_rtx_REG (SImode, MACL_REG); - rtx giv_insn; first = emit_insn (gen_mul_l (operands[1], operands[2])); /* consec_sets_giv can only recognize the first insn that sets a giv as the giv insn. So we must tag this also with a REG_EQUAL note. */ - giv_insn = emit_insn (gen_movsi_i ((operands[0]), macl)); - REG_NOTES (giv_insn) - = gen_rtx_EXPR_LIST (REG_EQUAL, - gen_rtx_MULT (SImode, operands[1], operands[2]), - REG_NOTES (giv_insn)); - /* The sequence must end in a no-op move, lest cse puts macl in its - tables and does invalid substitutions. */ - last = emit_insn (gen_movsi_i ((operands[0]), operands[0])); + last = emit_insn (gen_movsi_i ((operands[0]), macl)); } /* Wrap the sequence in REG_LIBCALL / REG_RETVAL notes so that loop invariant code motion can move it. */ -- 2.30.2