]> gcc.gnu.org Git - gcc.git/commitdiff
(expand_units): Fix blockage calculation.
authorJim Wilson <wilson@gcc.gnu.org>
Wed, 16 Feb 1994 20:39:39 +0000 (12:39 -0800)
committerJim Wilson <wilson@gcc.gnu.org>
Wed, 16 Feb 1994 20:39:39 +0000 (12:39 -0800)
From-SVN: r6575

gcc/genattrtab.c

index 55ec2255dd37e1f2a72e3671dcd499ed108f99fc..851d23b391adc3aaf717d1842c21deab8932a4a5 100644 (file)
@@ -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);
This page took 0.071125 seconds and 5 git commands to generate.