fix to for-loop code was wrong; fixed again

This commit is contained in:
ceriel
1989-10-30 15:45:43 +00:00
parent 67e5a8e7a5
commit 8cb76d3ed8
2 changed files with 5 additions and 13 deletions

View File

@@ -219,7 +219,7 @@ arith
CodeInitFor(nd, priority)
register struct node *nd;
{
/* Push init-value or final-value, the value may only be evaluated
/* Push final-value, the value may only be evaluated
once, so generate a temporary for it, when not a constant.
*/
@@ -237,10 +237,9 @@ CodeInitFor(nd, priority)
return (arith) 0;
}
CodeFor(nd, stepsize, l1, l2, tmp1)
CodeFor(nd, stepsize, l1, l2)
struct node *nd;
label l1, l2;
arith tmp1;
{
/* Test if loop has to be done */
if( stepsize == 1 ) /* TO */
@@ -248,12 +247,6 @@ CodeFor(nd, stepsize, l1, l2, tmp1)
else /* DOWNTO */
C_blt(l2);
/* Store init-value in control-variable */
if( tmp1 )
C_lol(tmp1);
else
CodePExpr(nd->nd_left);
/* Label at begin of the body */
C_df_ilb(l1);