From 81fe0dbc99a48b3e8efa5c3ed972514961e32705 Mon Sep 17 00:00:00 2001 From: Jim Wilson Date: Wed, 16 Feb 1994 12:39:39 -0800 Subject: [PATCH] (expand_units): Fix blockage calculation. From-SVN: r6575 --- gcc/genattrtab.c | 17 ++++++++++------- 1 file changed, 10 insertions(+), 7 deletions(-) diff --git a/gcc/genattrtab.c b/gcc/genattrtab.c index 55ec2255dd3..851d23b391a 100644 --- a/gcc/genattrtab.c +++ b/gcc/genattrtab.c @@ -2003,16 +2003,19 @@ expand_units () for (op = unit->ops; op; op = op->next) { - rtx blockage = readycost; - int delay = op->ready - 1; + rtx blockage = operate_exp (POS_MINUS_OP, readycost, + make_numeric_value (1)); if (unit->simultaneity != 0) - delay = MIN (delay, ((unit->simultaneity - 1) - * unit->issue_delay.min)); + { + rtx filltime = make_numeric_value ((unit->simultaneity - 1) + * unit->issue_delay.min); + blockage = operate_exp (MIN_OP, blockage, filltime); + } - if (delay > 0) - blockage = operate_exp (POS_MINUS_OP, - make_numeric_value (delay), blockage); + blockage = operate_exp (POS_MINUS_OP, + make_numeric_value (op->ready), + blockage); blockage = operate_exp (MAX_OP, blockage, op->issue_exp); blockage = simplify_knowing (blockage, unit->condexp); -- 2.30.2