cg tried to stack register parameters of moves, when
authorkeie <none@none>
Tue, 26 Feb 1985 16:31:38 +0000 (16:31 +0000)
committerkeie <none@none>
Tue, 26 Feb 1985 16:31:38 +0000 (16:31 +0000)
these registers were killed.

mach/proto/ncg/move.c

index 4c2e7fa..34c90a1 100644 (file)
@@ -96,7 +96,9 @@ move(tp1,tp2,ply,toplevel,maxcost) token_p tp1,tp2; unsigned maxcost; {
        fakestack[stackheight] = *tp2;
        fakestack[stackheight+1] = *tp1;
        stackheight += 2;
+       tokpatlen += 2;
        t = codegen(&coderules[mp->m_cindex],ply,toplevel,maxcost,0);
+       tokpatlen -= 2;
        stackheight -= 2;
        return(t);
 }
@@ -143,7 +145,9 @@ test(tp,ply,toplevel,maxcost) token_p tp; unsigned maxcost; {
 
        fakestack[stackheight] = *tp;
        stackheight++;
+       tokpatlen++;
        t = codegen(&coderules[mp->t_cindex],ply,toplevel,maxcost,0);
+       tokpatlen--;
        stackheight--;
        return(t);
 }