Lines Matching refs:uv

250 #define uvalue(o)(&rawuvalue(o)->uv)
289 }uv; member
497 struct UpVal uv; member
503 #define gco2u(o)(&rawgco2u(o)->uv)
507 #define gco2uv(o)check_exp((o)->gch.tt==(8+2),&((o)->uv))
508 #define ngcotouv(o)check_exp((o)==NULL||(o)->gch.tt==(8+2),&((o)->uv))
587 static void luaC_linkupval(lua_State*L,UpVal*uv);
833 UpVal*uv=luaM_new(L,UpVal);
834 luaC_link(L,obj2gco(uv),(8+2));
835 uv->v=&uv->u.value;
836 setnilvalue(uv->v);
837 return uv;
843 UpVal*uv;
852 uv=luaM_new(L,UpVal);
853 uv->tt=(8+2);
854 uv->marked=luaC_white(g);
855 uv->v=level;
856 uv->next=*pp;
857 *pp=obj2gco(uv);
858 uv->u.l.prev=&g->uvhead;
859 uv->u.l.next=g->uvhead.u.l.next;
860 uv->u.l.next->u.l.prev=uv;
861 g->uvhead.u.l.next=uv;
862 return uv;
864 static void unlinkupval(UpVal*uv){
865 uv->u.l.next->u.l.prev=uv->u.l.prev;
866 uv->u.l.prev->u.l.next=uv->u.l.next;
868 static void luaF_freeupval(lua_State*L,UpVal*uv){
869 if(uv->v!=&uv->u.value)
870 unlinkupval(uv);
871 luaM_free(L,uv);
874 UpVal*uv;
876 while(L->openupval!=NULL&&(uv=ngcotouv(L->openupval))->v>=level){
877 GCObject*o=obj2gco(uv);
878 L->openupval=uv->next;
880 luaF_freeupval(L,uv);
882 unlinkupval(uv);
883 setobj(L,&uv->u.value,uv->v);
884 uv->v=&uv->u.value;
885 luaC_linkupval(L,uv);
1329 u->uv.marked=luaC_white(G(L));
1330 u->uv.tt=7;
1331 u->uv.len=s;
1332 u->uv.metatable=NULL;
1333 u->uv.env=e;
1334 u->uv.next=G(L)->mainthread->next;
1746 UpVal*uv=gco2uv(o);
1747 markvalue(g,uv->v);
1748 if(uv->v==&uv->u.value)
2049 g->tmudata->gch.next=udata->uv.next;
2050 udata->uv.next=g->mainthread->next;
2053 tm=fasttm(L,udata->uv.metatable,TM_GC);
2096 UpVal*uv;
2097 for(uv=g->uvhead.u.l.next;uv!=&g->uvhead;uv=uv->u.l.next){
2098 if(isgray(obj2gco(uv)))
2099 markvalue(g,uv->v);
2218 static void luaC_linkupval(lua_State*L,UpVal*uv){
2220 GCObject*o=obj2gco(uv);
2226 luaC_barrier(L,uv,uv->v);
5002 UpVal*uv=cl->upvals[GETARG_B(i)];
5003 setobj(L,uv->v,ra);
5004 luaC_barrier(L,uv,ra);