missing some thread ku.k registers in overflow, and wrong size for i registers
svn: r2570
This commit is contained in:
parent
16f01a1109
commit
7ba6ab2bb8
|
@ -1296,16 +1296,18 @@ void *top_level_do(void *(*k)(void), int eb, void *sj_start)
|
||||||
pp = scheme_current_thread;
|
pp = scheme_current_thread;
|
||||||
pp->overflow_reply = NULL; /* means "continue the error" */
|
pp->overflow_reply = NULL; /* means "continue the error" */
|
||||||
} else {
|
} else {
|
||||||
void *p1, *p2, *p3, *p4;
|
void *p1, *p2, *p3, *p4, *p5;
|
||||||
int i1, i2, i3;
|
long i1, i2, i3, i4;
|
||||||
|
|
||||||
p1 = pp->ku.k.p1;
|
p1 = pp->ku.k.p1;
|
||||||
p2 = pp->ku.k.p2;
|
p2 = pp->ku.k.p2;
|
||||||
p3 = pp->ku.k.p3;
|
p3 = pp->ku.k.p3;
|
||||||
p4 = pp->ku.k.p4;
|
p4 = pp->ku.k.p4;
|
||||||
|
p5 = pp->ku.k.p5;
|
||||||
i1 = pp->ku.k.i1;
|
i1 = pp->ku.k.i1;
|
||||||
i2 = pp->ku.k.i2;
|
i2 = pp->ku.k.i2;
|
||||||
i3 = pp->ku.k.i3;
|
i3 = pp->ku.k.i3;
|
||||||
|
i4 = pp->ku.k.i4;
|
||||||
|
|
||||||
/* stack overflow is a lot of work; force a sleep */
|
/* stack overflow is a lot of work; force a sleep */
|
||||||
scheme_thread_block(0);
|
scheme_thread_block(0);
|
||||||
|
@ -1315,9 +1317,11 @@ void *top_level_do(void *(*k)(void), int eb, void *sj_start)
|
||||||
pp->ku.k.p2 = p2;
|
pp->ku.k.p2 = p2;
|
||||||
pp->ku.k.p3 = p3;
|
pp->ku.k.p3 = p3;
|
||||||
pp->ku.k.p4 = p4;
|
pp->ku.k.p4 = p4;
|
||||||
|
pp->ku.k.p5 = p5;
|
||||||
pp->ku.k.i1 = i1;
|
pp->ku.k.i1 = i1;
|
||||||
pp->ku.k.i2 = i2;
|
pp->ku.k.i2 = i2;
|
||||||
pp->ku.k.i3 = i3;
|
pp->ku.k.i3 = i3;
|
||||||
|
pp->ku.k.i4 = i4;
|
||||||
|
|
||||||
{
|
{
|
||||||
Overflow_K_Proc f = scheme_overflow_k;
|
Overflow_K_Proc f = scheme_overflow_k;
|
||||||
|
|
Loading…
Reference in New Issue
Block a user