From 5c0bf7476e6547500e2492ef67be94589078cb67 Mon Sep 17 00:00:00 2001 From: Richard Kenner Date: Sun, 11 Aug 1996 23:12:40 -0400 Subject: [PATCH] (expand_abs): When OP0 and TARGET are the same pseudo register, it is safe to use TARGET. From-SVN: r12619 --- gcc/optabs.c | 7 +++++++ 1 file changed, 7 insertions(+) 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 -- 2.30.2