Lines Matching defs:ra

335 void luaV_objlen (lua_State *L, StkId ra, const TValue *rb) {
342 setnvalue(ra, cast_num(luaH_getn(h))); /* else primitive len */
346 setnvalue(ra, cast_num(tsvalue(rb)->len));
356 callTM(L, tm, rb, rb, ra, 1);
360 void luaV_arith (lua_State *L, StkId ra, const TValue *rb,
367 setnvalue(ra, res);
369 else if (!call_binTM(L, rb, rc, ra, op))
402 StkId ra) {
408 setclLvalue(L, ra, ncl); /* anchor new closure in stack */
525 setnvalue(ra, op(L, nb, nc)); \
527 else { Protect(luaV_arith(L, ra, rb, rc, tm)); } }
547 StkId ra;
552 /* WARNING: several calls may realloc the stack and invalidate `ra' */
553 ra = RA(i);
558 setobjs2s(L, ra, RB(i));
562 setobj2s(L, ra, rb);
568 setobj2s(L, ra, rb);
571 setbvalue(ra, GETARG_B(i));
577 setnilvalue(ra++);
582 setobj2s(L, ra, cl->upvals[b]->v);
586 Protect(luaV_gettable(L, cl->upvals[b]->v, RKC(i), ra));
589 Protect(luaV_gettable(L, RB(i), RKC(i), ra));
597 setobj(L, uv->v, ra);
598 luaC_barrier(L, uv, ra);
601 Protect(luaV_settable(L, ra, RKB(i), RKC(i)));
607 sethvalue(L, ra, t);
610 checkGC(L, ra + 1);
614 setobjs2s(L, ra+1, rb);
615 Protect(luaV_gettable(L, rb, RKC(i), ra));
639 setnvalue(ra, luai_numunm(L, nb));
642 Protect(luaV_arith(L, ra, rb, rb, TM_UNM));
648 setbvalue(ra, res);
651 Protect(luaV_objlen(L, ra, RB(i)));
659 ra = RA(i); /* 'luav_concat' may invoke TMs and move the stack */
661 setobjs2s(L, ra, rb);
662 checkGC(L, (ra >= rb ? ra + 1 : rb));
695 if (GETARG_C(i) ? l_isfalse(ra) : !l_isfalse(ra))
705 setobjs2s(L, ra, rb);
712 if (b != 0) L->top = ra+b; /* else previous instruction set top */
713 if (luaD_precall(L, ra, nresults)) { /* C function? */
725 if (b != 0) L->top = ra+b; /* else previous instruction set top */
727 if (luaD_precall(L, ra, LUA_MULTRET)) /* C function? */
754 if (b != 0) L->top = ra+b-1;
756 b = luaD_poscall(L, ra);
768 lua_Number step = nvalue(ra+2);
769 lua_Number idx = luai_numadd(L, nvalue(ra), step); /* increment index */
770 lua_Number limit = nvalue(ra+1);
774 setnvalue(ra, idx); /* update internal index... */
775 setnvalue(ra+3, idx); /* ...and external index */
779 const TValue *init = ra;
780 const TValue *plimit = ra+1;
781 const TValue *pstep = ra+2;
782 if (!tonumber(init, ra))
784 else if (!tonumber(plimit, ra+1))
786 else if (!tonumber(pstep, ra+2))
788 setnvalue(ra, luai_numsub(L, nvalue(ra), nvalue(pstep)));
792 StkId cb = ra + 3; /* call base */
793 setobjs2s(L, cb+2, ra+2);
794 setobjs2s(L, cb+1, ra+1);
795 setobjs2s(L, cb, ra);
800 ra = RA(i);
806 if (!ttisnil(ra + 1)) { /* continue loop? */
807 setobjs2s(L, ra, ra + 1); /* save control variable */
816 if (n == 0) n = cast_int(L->top - ra) - 1;
821 luai_runtimecheck(L, ttistable(ra));
822 h = hvalue(ra);
827 TValue *val = ra+n;
837 pushclosure(L, p, cl->upvals, base, ra); /* create a new one */
839 setclLvalue(L, ra, ncl); /* push cashed closure */
840 checkGC(L, ra + 1);
849 ra = RA(i); /* previous call may change the stack */
850 L->top = ra + n;
854 setobjs2s(L, ra + j, base - n + j);
857 setnilvalue(ra + j);