From: Richard Kenner Date: Mon, 12 Aug 1996 03:12:40 +0000 (-0400) Subject: (expand_abs): When OP0 and TARGET are the same pseudo register, it is X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=5c0bf7476e6547500e2492ef67be94589078cb67;p=gcc.git (expand_abs): When OP0 and TARGET are the same pseudo register, it is safe to use TARGET. From-SVN: r12619 --- diff --git a/gcc/optabs.c b/gcc/optabs.c index ba4b72f147d..8f4a640d996 100644 --- a/gcc/optabs.c +++ b/gcc/optabs.c @@ -2118,6 +2118,13 @@ expand_abs (mode, op0, target, unsignedp, safe) } /* If that does not win, use conditional jump and negate. */ + + /* It is safe to use the target if it is the same + as the source if this is also a pseudo register */ + if (op0 == target && GET_CODE (op0) == REG + && REGNO (op0) >= FIRST_PSEUDO_REGISTER) + safe = 1; + op1 = gen_label_rtx (); if (target == 0 || ! safe || GET_MODE (target) != mode