MCPcopy Create free account
hub / github.com/Overload-Technologies/Overload / checkstack

Function checkstack

Dependencies/lua/src/ltests.c:440–459  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

438
439
440static void checkstack (global_State *g, lua_State *L1) {
441 StkId o;
442 CallInfo *ci;
443 UpVal *uv;
444 assert(!isdead(g, L1));
445 if (L1->stack.p == NULL) { /* incomplete thread? */
446 assert(L1->openupval == NULL && L1->ci == NULL);
447 return;
448 }
449 for (uv = L1->openupval; uv != NULL; uv = uv->u.open.next)
450 assert(upisopen(uv)); /* must be open */
451 assert(L1->top.p <= L1->stack_last.p);
452 assert(L1->tbclist.p <= L1->top.p);
453 for (ci = L1->ci; ci != NULL; ci = ci->previous) {
454 assert(ci->top.p <= L1->stack_last.p);
455 assert(lua_checkpc(ci));
456 }
457 for (o = L1->stack.p; o < L1->stack_last.p; o++)
458 checkliveness(L1, s2v(o)); /* entire stack must have valid values */
459}
460
461
462static void checkrefs (global_State *g, GCObject *o) {

Callers 1

checkrefsFunction · 0.70

Calls 1

lua_checkpcFunction · 0.85

Tested by

no test coverage detected