clean up subroutine code in wake of merge from master branch

This commit is contained in:
Joel Dice 2008-11-15 18:03:43 -07:00
parent 9b6d4fdeab
commit 92a8a4d83b
2 changed files with 1 additions and 9 deletions

View File

@ -2911,7 +2911,7 @@ compile(MyThread* t, Frame* initialFrame, unsigned ip,
// wasn't already a live value there, which is something we
// should verify once we have complete data flow information
// (todo).
c->storeLocal(BytesPerWord, c->constant(0), index);
c->storeLocal(1, c->constant(0), index);
frame->storedObject(index);
}

View File

@ -4029,16 +4029,8 @@ class MyCompiler: public Compiler {
virtual void endSubroutine(Subroutine* subroutine) {
MySubroutine* sr = static_cast<MySubroutine*>(subroutine);
if (sr->forkState) {
fprintf(stderr, "restore sr forkstate\n");
Local* locals = c.locals;
::restoreState(&c, sr->forkState);
for (int i = c.localFootprint - 1; i >= 0; --i) {
if (locals[i].value and c.locals[i].value == 0) {
storeLocal(locals[i].footprint, locals[i].value, i);
}
}
} else {
fprintf(stderr, "save sr forkstate\n");
sr->forkState = ::saveState(&c);
}
}