Reorder tests in last change for speed
authorMichael Meissner <meissner@gcc.gnu.org>
Mon, 15 Jun 1998 16:32:00 +0000 (16:32 +0000)
committerMichael Meissner <meissner@gcc.gnu.org>
Mon, 15 Jun 1998 16:32:00 +0000 (16:32 +0000)
From-SVN: r20513

gcc/regmove.c

index f932da8417dede37ba046f1b2b9d789ba70bb616..9dd583378955945d2cbdc16c7b25a2875c95c362 100644 (file)
@@ -560,11 +560,12 @@ copy_src_to_dest (insn, src, dest, loop_depth)
      parameter when there is no frame pointer that is not allocated a register.
      For now, we just reject them, rather than incrementing the live length.  */
 
-  if (GET_CODE (src) == REG && GET_CODE (dest) == REG
+  if (GET_CODE (src) == REG
+      && REG_LIVE_LENGTH (REGNO (src)) > 0
+      && GET_CODE (dest) == REG
+      && REG_LIVE_LENGTH (REGNO (dest)) > 0
       && (set = single_set (insn)) != NULL_RTX
       && !reg_mentioned_p (dest, SET_SRC (set))
-      && REG_LIVE_LENGTH (REGNO (dest)) > 0
-      && REG_LIVE_LENGTH (REGNO (src)) > 0
       && validate_replace_rtx (src, dest, insn))
     {
       /* Generate the src->dest move.  */