From f9011d0459ba76347967b60714bba4be6047c1b3 Mon Sep 17 00:00:00 2001 From: Richard Kenner Date: Mon, 29 Nov 1999 18:02:14 -0500 Subject: [PATCH] Install proper change From-SVN: r30715 --- gcc/fold-const.c | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/gcc/fold-const.c b/gcc/fold-const.c index 8766eb8ee0d..021a7d0b233 100644 --- a/gcc/fold-const.c +++ b/gcc/fold-const.c @@ -4367,14 +4367,15 @@ extract_muldiv (t, c, code, wide_type) if (t1 != 0 && t2 != 0) return fold (build (tcode, ctype, convert (ctype, t1), convert (ctype, t2))); - else if (TREE_CODE (op1) != INTEGER_CST) - break; /* If this was a subtraction, negate OP1 and set it to be an addition. This simplifies the logic below. */ if (tcode == MINUS_EXPR) tcode = PLUS_EXPR, op1 = negate_expr (op1); + if (TREE_CODE (op1) != INTEGER_CST) + break; + /* If either OP1 or C are negative, this optimization is not safe for some of the division and remainder types while for others we need to change the code. */ -- 2.30.2