ppc: fixed stack fail und ein kleines clean up
[uebersetzerbau-ss10.git] / gesamt_ppc / code.bfe
index ea5636519ca218fc08360cc97de80dd58ecac3c1..97dc26946b5bf724e4ac394240e6ea599645fe04 100644 (file)
@@ -223,7 +223,7 @@ void make_call(struct treenode *bnode)
                printf("\tmr %s,20\n", param_reg(j));
        }
        printf("\t#vars pushen\n");
-       for(j = VARBEGIN; j > VARBEGIN - bnode->vars; j--) {
+       for(j = bnode->soffset; j < bnode->soffset + bnode->vars; j++) {
                printf("\tstw %s,%d(1)\n", param_reg(j), j*4);
        }
 
@@ -254,7 +254,7 @@ void make_call(struct treenode *bnode)
        }
 
        printf("\t#vars poppen\n");
-       for(j = VARBEGIN+1 - bnode->vars; j < VARBEGIN+1; j++) {
+       for(j = bnode->soffset + bnode->vars - 1; j > bnode->soffset - 1; j--) {
                printf("\tlwz %s,%d(1)\n", param_reg(j), j*4);
        }