* sh.md (mulsi3_highpart): Add REG_EQUAL note to last insn.
authorJ"orn Rennecke <amylaar@cygnus.co.uk>
Wed, 16 Feb 2000 01:29:42 +0000 (01:29 +0000)
committerJoern Rennecke <amylaar@gcc.gnu.org>
Wed, 16 Feb 2000 01:29:42 +0000 (01:29 +0000)
From-SVN: r31998

gcc/ChangeLog
gcc/config/sh/sh.md

index a9ad434..3feaf69 100644 (file)
@@ -1,3 +1,7 @@
+Wed Feb 16 01:27:52 2000  J"orn Rennecke <amylaar@cygnus.co.uk>
+
+       * sh.md (mulsi3_highpart): Add REG_EQUAL note to last insn.
+
 Wed Feb 16 00:58:06 2000  J"orn Rennecke <amylaar@cygnus.co.uk>
 
        * sh.md (udivsi3_i1, divsi3_i1, umulhisi3_i, mulhisi3_i): Name.
index 3a662cd..903199e 100644 (file)
      invariant code motion can move it.  */
   REG_NOTES (first) = gen_rtx_INSN_LIST (REG_LIBCALL, last, REG_NOTES (first));
   REG_NOTES (last) = gen_rtx_INSN_LIST (REG_RETVAL, first, REG_NOTES (last));
+  /* expand_binop can't find a suitable code in mul_highpart_optab to
+     make a REG_EQUAL note from, so make one here.
+     ??? Alternatively, we could put this at the calling site of expand_binop,
+     i.e. expand_mult_highpart.  */
+  REG_NOTES (last)
+    = gen_rtx_EXPR_LIST (REG_EQUAL, copy_rtx (SET_SRC (single_set (first))),
+                        REG_NOTES (last));
   DONE;
 }")