mirror of
https://github.com/ilyakooo0/urbit.git
synced 2024-12-15 01:52:42 +03:00
u3: only perform road stack checks in +stir jet if necessary
This commit is contained in:
parent
2e8d84c173
commit
8db9a4d394
@ -975,10 +975,6 @@
|
||||
u3j_gate_lose(&fel_u);
|
||||
}
|
||||
|
||||
// check for stack overflow
|
||||
//
|
||||
u3a_pile_sane(&pil_u);
|
||||
|
||||
// unwind the stack, folding parse results into [wag] by way of [raq]
|
||||
//
|
||||
if ( len_w ) {
|
||||
@ -986,6 +982,10 @@
|
||||
u3j_site raq_u;
|
||||
u3j_gate_prep(&raq_u, u3k(raq));
|
||||
|
||||
// check for stack overflow
|
||||
//
|
||||
u3a_pile_sane(&pil_u);
|
||||
|
||||
while ( len_w-- > 0 ) {
|
||||
p_vex = *top;
|
||||
top = u3a_pop(&pil_u);
|
||||
@ -996,11 +996,11 @@
|
||||
puq_wag = u3j_gate_slam(&raq_u, u3nc(puq_vex, puq_wag));
|
||||
}
|
||||
|
||||
c3_assert( c3y == u3a_pile_done(&pil_u) );
|
||||
|
||||
u3j_gate_lose(&raq_u);
|
||||
}
|
||||
|
||||
c3_assert( c3y == u3a_pile_done(&pil_u) );
|
||||
|
||||
return u3nq(p_wag, u3_nul, puq_wag, quq_wag);
|
||||
}
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user