Github User Fetcher 1.0.0
C Application with Server and GUI
|
Go to the source code of this file.
Macros | |
#define | NO_JUMP (-1) |
#define | foldbinop(op) ((op) <= OPR_SHR) |
#define | luaK_codeABC(fs, o, a, b, c) luaK_codeABCk(fs,o,a,b,c,0) |
#define | getinstruction(fs, e) ((fs)->f->code[(e)->u.info]) |
#define | luaK_setmultret(fs, e) luaK_setreturns(fs, e, LUA_MULTRET) |
#define | luaK_jumpto(fs, t) luaK_patchlist(fs, luaK_jump(fs), t) |
Typedefs | |
typedef enum BinOpr | BinOpr |
typedef enum UnOpr | UnOpr |
Enumerations | |
enum | BinOpr { OPR_ADD , OPR_SUB , OPR_MUL , OPR_MOD , OPR_POW , OPR_DIV , OPR_IDIV , OPR_BAND , OPR_BOR , OPR_BXOR , OPR_SHL , OPR_SHR , OPR_CONCAT , OPR_EQ , OPR_LT , OPR_LE , OPR_NE , OPR_GT , OPR_GE , OPR_AND , OPR_OR , OPR_NOBINOPR } |
enum | UnOpr { OPR_MINUS , OPR_BNOT , OPR_NOT , OPR_LEN , OPR_NOUNOPR } |
#define foldbinop | ( | op | ) | ((op) <= OPR_SHR) |
Definition at line 45 of file lua-5.4.3/src/lcode.h.
Referenced by luaK_posfix().
#define getinstruction | ( | fs, | |
e ) ((fs)->f->code[(e)->u.info]) |
Definition at line 55 of file lua-5.4.3/src/lcode.h.
#define luaK_codeABC | ( | fs, | |
o, | |||
a, | |||
b, | |||
c ) luaK_codeABCk(fs,o,a,b,c,0) |
Definition at line 48 of file lua-5.4.3/src/lcode.h.
Referenced by breakstat(), check_conflict(), check_conflict(), check_conflict(), check_conflict(), checktoclose(), code_label(), code_label(), code_loadbool(), code_loadbool(), codearith(), codearith(), codebinexpval(), codeconcat(), codenot(), codenot(), codenot(), codenot(), codeunexpval(), codeunexpval(), condjump(), condjump(), condjump(), constructor(), constructor(), constructor(), constructor(), createlabel(), discharge2reg(), discharge2reg(), discharge2reg(), discharge2reg(), forbody(), forbody(), forbody(), forbody(), funcargs(), funcargs(), funcargs(), funcargs(), gotostat(), leaveblock(), leaveblock(), luaK_dischargevars(), luaK_nil(), luaK_ret(), luaK_self(), luaK_setlist(), luaK_storevar(), pushclosure(), recfield(), recfield(), recfield(), repeatstat(), setvararg(), simpleexp(), simpleexp(), simpleexp(), and simpleexp().
#define luaK_jumpto | ( | fs, | |
t ) luaK_patchlist(fs, luaK_jump(fs), t) |
Definition at line 60 of file lua-5.4.3/src/lcode.h.
#define luaK_setmultret | ( | fs, | |
e ) luaK_setreturns(fs, e, LUA_MULTRET) |
Definition at line 58 of file lua-5.4.3/src/lcode.h.
#define NO_JUMP (-1) |
Definition at line 20 of file lua-5.4.3/src/lcode.h.
enum BinOpr |
Enumerator | |
---|---|
OPR_ADD | |
OPR_SUB | |
OPR_MUL | |
OPR_MOD | |
OPR_POW | |
OPR_DIV | |
OPR_IDIV | |
OPR_BAND | |
OPR_BOR | |
OPR_BXOR | |
OPR_SHL | |
OPR_SHR | |
OPR_CONCAT | |
OPR_EQ | |
OPR_LT | |
OPR_LE | |
OPR_NE | |
OPR_GT | |
OPR_GE | |
OPR_AND | |
OPR_OR | |
OPR_NOBINOPR |
Definition at line 26 of file lua-5.4.3/src/lcode.h.
enum UnOpr |
Enumerator | |
---|---|
OPR_MINUS | |
OPR_BNOT | |
OPR_NOT | |
OPR_LEN | |
OPR_NOUNOPR |
Definition at line 51 of file lua-5.4.3/src/lcode.h.
Definition at line 199 of file lua-5.1.5/src/lcode.c.
References cast_byte, FuncState::f, FuncState::freereg, FuncState::ls, luaX_syntaxerror(), MAXREGS, MAXSTACK, and Proto::maxstacksize.
Referenced by forlist(), forlist(), forlist(), forlist(), and luaK_reserveregs().
LUAI_FUNC int luaK_code | ( | FuncState * | fs, |
Instruction | i ) |
Definition at line 381 of file lua-5.4.3/src/lcode.c.
References Proto::code, FuncState::f, LexState::L, LexState::lastline, FuncState::ls, luaM_growvector, MAX_INT, FuncState::pc, savelineinfo(), and Proto::sizecode.
Referenced by codeextraarg(), codesJ(), luaK_codeABCk(), luaK_codeABx(), and luaK_codeAsBx().
Definition at line 396 of file lua-5.4.3/src/lcode.c.
References CREATE_ABCk, getOpMode, iABC, lua_assert, luaK_code(), MAXARG_A, MAXARG_B, and MAXARG_C.
Referenced by codeABRK(), condjump(), finishbinexpval(), and luaK_setlist().
Definition at line 812 of file lua-5.1.5/src/lcode.c.
References CREATE_ABx, getCMode, getOpMode, iABx, iAsBx, LexState::lastline, FuncState::ls, lua_assert, luaK_code(), luaK_code(), luaK_code(), luaK_code(), MAXARG_A, MAXARG_Bx, and OpArgN.
Referenced by codeclosure(), codeclosure(), codeclosure(), discharge2reg(), forbody(), fornum(), luaK_codek(), luaK_codek(), luaK_dischargevars(), luaK_storevar(), and pushclosure().
Definition at line 417 of file lua-5.4.3/src/lcode.c.
References CREATE_ABx, getOpMode, iAsBx, lua_assert, luaK_code(), MAXARG_A, MAXARG_Bx, and OFFSET_sBx.
Definition at line 185 of file lua-5.1.5/src/lcode.c.
References fixjump(), fixjump(), fixjump(), fixjump(), getjump(), getjump(), getjump(), getjump(), next, and NO_JUMP.
Referenced by breakstat(), exp2reg(), exp2reg(), exp2reg(), exp2reg(), ifstat(), luaK_goiffalse(), luaK_goiffalse(), luaK_goiftrue(), luaK_jump(), luaK_patchtohere(), luaK_posfix(), luaK_posfix(), luaK_posfix(), test_then_block(), test_then_block(), and test_then_block().
Definition at line 304 of file lua-5.1.5/src/lcode.c.
References expdesc::aux, const2exp(), const2val(), freereg(), freereg(), freereg(), freereg(), freeregs(), expdesc::idx, expdesc::ind, expdesc::info, expdesc::k, lua_assert, luaK_codeABC, luaK_codeABx(), luaK_setoneret(), OP_GETFIELD, OP_GETGLOBAL, OP_GETI, OP_GETTABLE, OP_GETTABUP, OP_GETUPVAL, expdesc::ridx, expdesc::s, expdesc::t, expdesc::u, expdesc::var, VCALL, VCONST, VGLOBAL, VINDEXED, VINDEXI, VINDEXSTR, VINDEXUP, VLOCAL, VNONRELOC, VRELOC, VRELOCABLE, expdesc::vt, VUPVAL, and VVARARG.
Referenced by codenot(), codenot(), codenot(), discharge2reg(), discharge2reg(), discharge2reg(), discharge2reg(), luaK_exp2anyreg(), luaK_exp2nextreg(), luaK_exp2val(), luaK_goiffalse(), luaK_goiffalse(), luaK_goiftrue(), luaK_infix(), luaK_posfix(), luaK_posfix(), luaK_posfix(), luaK_prefix(), prefixexp(), primaryexp(), primaryexp(), and primaryexp().
Definition at line 422 of file lua-5.1.5/src/lcode.c.
References exp2reg(), exp2reg(), exp2reg(), exp2reg(), hasjumps, expdesc::info, expdesc::k, luaK_dischargevars(), luaK_exp2nextreg(), luaY_nvarstack(), FuncState::nactvar, expdesc::s, expdesc::u, and VNONRELOC.
Referenced by codebinexpval(), codeeq(), codeorder(), codeunexpval(), codeunexpval(), field(), finishbinexpval(), luaK_exp2anyregup(), luaK_exp2RK(), luaK_exp2val(), luaK_indexed(), luaK_infix(), luaK_prefix(), luaK_prefix(), luaK_self(), luaK_storevar(), primaryexp(), retstat(), retstat(), retstat(), and retstat().
Definition at line 514 of file lua-5.2.4/src/lcode.c.
References hasjumps, expdesc::k, luaK_exp2anyreg(), and VUPVAL.
Referenced by fieldsel(), fieldsel(), fieldsel(), suffixedexp(), suffixedexp(), and suffixedexp().
Definition at line 83 of file lua-5.4.3/src/lcode.c.
References const2val(), hasjumps, expdesc::k, LexState::L, FuncState::ls, setbfvalue, setbtvalue, setnilvalue, setobj, setsvalue, expdesc::strval, tonumeral(), expdesc::u, VCONST, VFALSE, VKSTR, VNIL, and VTRUE.
Referenced by localstat().
Definition at line 414 of file lua-5.1.5/src/lcode.c.
References exp2reg(), exp2reg(), exp2reg(), exp2reg(), freeexp(), freeexp(), freeexp(), freeexp(), FuncState::freereg, luaK_dischargevars(), and luaK_reserveregs().
Referenced by adjust_assign(), adjust_assign(), adjust_assign(), adjust_assign(), closelistfield(), closelistfield(), closelistfield(), closelistfield(), codeclosure(), codeclosure(), codeclosure(), constructor(), constructor(), constructor(), exp1(), exp1(), exp1(), exp1(), explist(), explist(), explist(), explist1(), funcargs(), funcargs(), funcargs(), funcargs(), lastlistfield(), lastlistfield(), lastlistfield(), lastlistfield(), luaK_exp2anyreg(), luaK_infix(), luaK_posfix(), luaK_posfix(), luaK_posfix(), primaryexp(), retstat(), retstat(), retstat(), retstat(), suffixedexp(), suffixedexp(), and suffixedexp().
Definition at line 444 of file lua-5.1.5/src/lcode.c.
References boolK(), boolK(), boolK(), expdesc::info, expdesc::ival, expdesc::k, luaK_exp2anyreg(), luaK_exp2K(), luaK_exp2val(), luaK_intK(), luaK_numberK(), luaK_numberK(), MAXINDEXRK, nilK(), nilK(), nilK(), FuncState::nk, expdesc::nval, RKASK, expdesc::s, expdesc::u, VFALSE, VK, VKFLT, VKINT, VKNUM, VNIL, and VTRUE.
Referenced by codeABRK(), codearith(), codearith(), codebinexpval(), codebitwise(), codecomp(), codecomp(), codecomp(), codeeq(), luaK_indexed(), luaK_infix(), luaK_self(), luaK_storevar(), recfield(), recfield(), and recfield().
Definition at line 436 of file lua-5.1.5/src/lcode.c.
References hasjumps, luaK_dischargevars(), and luaK_exp2anyreg().
Referenced by luaK_exp2RK(), luaK_posfix(), luaK_posfix(), yindex(), yindex(), yindex(), and yindex().
Definition at line 1786 of file lua-5.4.3/src/lcode.c.
References Proto::code, FuncState::f, finaltarget(), fixjump(), GET_OPCODE, Proto::is_vararg, isIT, isOT, lua_assert, FuncState::needclose, Proto::numparams, OP_JMP, OP_RETURN, OP_RETURN0, OP_RETURN1, OP_TAILCALL, FuncState::pc, SET_OPCODE, SETARG_C, and SETARG_k.
Referenced by close_func().
Definition at line 784 of file lua-5.1.5/src/lcode.c.
References FuncState::f, Proto::lineinfo, FuncState::pc, removelastlineinfo(), and savelineinfo().
Referenced by codearith(), codebinexpval(), codeconcat(), codeunexpval(), codeunexpval(), finishbinexpval(), forbody(), forbody(), forbody(), forbody(), funcargs(), funcargs(), funcargs(), funcargs(), funcstat(), funcstat(), funcstat(), and funcstat().
Definition at line 94 of file lua-5.1.5/src/lcode.c.
References FuncState::lasttarget, and FuncState::pc.
Referenced by code_label(), code_label(), code_loadbool(), code_loadbool(), createlabel(), exp2reg(), exp2reg(), exp2reg(), exp2reg(), forbody(), labelstat(), luaK_patchtohere(), repeatstat(), repeatstat(), repeatstat(), repeatstat(), whilestat(), whilestat(), whilestat(), and whilestat().
Definition at line 645 of file lua-5.2.4/src/lcode.c.
References expdesc::f, expdesc::info, jumponcond(), jumponcond(), jumponcond(), expdesc::k, luaK_concat(), luaK_dischargevars(), luaK_patchtohere(), NO_JUMP, expdesc::t, expdesc::u, VFALSE, VJMP, and VNIL.
Referenced by luaK_infix().
Definition at line 539 of file lua-5.1.5/src/lcode.c.
References expdesc::f, expdesc::info, invertjump(), invertjump(), jumponcond(), jumponcond(), jumponcond(), jumponcond(), expdesc::k, luaK_concat(), luaK_dischargevars(), luaK_patchtohere(), negatecondition(), negatecondition(), NO_JUMP, expdesc::s, expdesc::t, expdesc::u, VJMP, VK, VKFLT, VKINT, VKNUM, VKSTR, and VTRUE.
Referenced by cond(), cond(), cond(), cond(), luaK_infix(), test_then_block(), test_then_block(), and test_then_block().
Definition at line 621 of file lua-5.1.5/src/lcode.c.
References expdesc::aux, cast_int, check_exp, hasjumps, expdesc::idx, expdesc::ind, expdesc::info, isCint(), isKstr(), expdesc::ival, expdesc::k, lua_assert, luaK_exp2anyreg(), luaK_exp2RK(), expdesc::ridx, expdesc::s, str2K(), expdesc::t, expdesc::u, expdesc::var, VINDEXED, VINDEXI, VINDEXSTR, VINDEXUP, vkisinreg, VKSTR, VLOCAL, VNONRELOC, expdesc::vt, and VUPVAL.
Referenced by field(), fieldsel(), fieldsel(), fieldsel(), primaryexp(), recfield(), singlevar(), singlevar(), singlevar(), suffixedexp(), suffixedexp(), and suffixedexp().
Definition at line 710 of file lua-5.1.5/src/lcode.c.
References dummy, isnumeral(), isnumeral(), isSCnumber(), lua_assert, luaK_dischargevars(), luaK_exp2anyreg(), luaK_exp2nextreg(), luaK_exp2RK(), luaK_goiffalse(), luaK_goiffalse(), luaK_goiftrue(), NULL, OPR_ADD, OPR_AND, OPR_BAND, OPR_BOR, OPR_BXOR, OPR_CONCAT, OPR_DIV, OPR_EQ, OPR_GE, OPR_GT, OPR_IDIV, OPR_LE, OPR_LT, OPR_MOD, OPR_MUL, OPR_NE, OPR_OR, OPR_POW, OPR_SHL, OPR_SHR, OPR_SUB, tonumeral(), and tonumeral().
Referenced by subexpr(), subexpr(), subexpr(), and subexpr().
LUAI_FUNC void luaK_int | ( | FuncState * | fs, |
int | reg, | ||
lua_Integer | n ) |
Definition at line 654 of file lua-5.4.3/src/lcode.c.
References cast_int, fitsBx(), luaK_codeAsBx, luaK_codek(), luaK_intK(), and OP_LOADI.
Referenced by discharge2reg(), and fornum().
Definition at line 1210 of file lua-5.4.3/src/lcode.c.
References hasjumps, expdesc::k, and VKINT.
Referenced by finishbinexpneg(), isCint(), and isSCint().
Definition at line 59 of file lua-5.1.5/src/lcode.c.
References codesJ(), FuncState::jpc, luaK_codeAsBx, luaK_concat(), NO_JUMP, and OP_JMP.
Referenced by breakstat(), breakstat(), condjump(), condjump(), condjump(), condjump(), exp2reg(), exp2reg(), exp2reg(), exp2reg(), forbody(), forbody(), forbody(), gotostat(), ifstat(), leaveblock(), leaveblock(), repeatstat(), repeatstat(), statement(), statement(), test_then_block(), test_then_block(), test_then_block(), and whilestat().
Definition at line 35 of file lua-5.1.5/src/lcode.c.
References Proto::code, FuncState::f, GET_OPCODE, GETARG_A, GETARG_B, FuncState::lasttarget, luaK_codeABC, FuncState::nactvar, OP_LOADNIL, FuncState::pc, previousinstruction(), SETARG_A, and SETARG_B.
Referenced by adjust_assign(), adjust_assign(), adjust_assign(), adjust_assign(), discharge2reg(), discharge2reg(), discharge2reg(), and discharge2reg().
Definition at line 169 of file lua-5.1.5/src/lcode.c.
References lua_assert, luaK_patchtohere(), NO_REG, patchlistaux(), patchlistaux(), patchlistaux(), patchlistaux(), and FuncState::pc.
Referenced by closegoto(), closegoto(), forbody(), forbody(), forbody(), gotostat(), luaK_patchtohere(), repeatstat(), repeatstat(), repeatstat(), repeatstat(), solvegoto(), and whilestat().
Definition at line 179 of file lua-5.1.5/src/lcode.c.
References FuncState::jpc, luaK_concat(), luaK_getlabel(), and luaK_patchlist().
Referenced by exp2reg(), exp2reg(), exp2reg(), exp2reg(), forbody(), forbody(), forbody(), ifstat(), ifstat(), ifstat(), ifstat(), leaveblock(), leaveblock(), leaveblock(), luaK_goiffalse(), luaK_goiffalse(), luaK_goiftrue(), luaK_patchlist(), repeatstat(), repeatstat(), test_then_block(), test_then_block(), test_then_block(), whilestat(), whilestat(), whilestat(), and whilestat().
Definition at line 813 of file lua-5.2.4/src/lcode.c.
References cast, codearith(), codearith(), codebinexpval(), codebinexpval(), codebini(), codebitwise(), codecommutative(), codecomp(), codecomp(), codeconcat(), codeeq(), codeorder(), constfolding(), constfolding(), expdesc::f, finishbinexpneg(), foldbinop, freeexp(), freeexp(), GET_OPCODE, GETARG_B, getcode, getinstruction, expdesc::info, isSCint(), expdesc::k, lua_assert, LUA_OPADD, luaK_concat(), luaK_dischargevars(), luaK_exp2nextreg(), luaK_exp2val(), NO_JUMP, OP_ADD, OP_ADDI, OP_CONCAT, OP_EQ, OP_SHL, OP_SHLI, OP_SHR, OP_SHRI, OPR_ADD, OPR_AND, OPR_BAND, OPR_BOR, OPR_BXOR, OPR_CONCAT, OPR_DIV, OPR_EQ, OPR_GE, OPR_GT, OPR_IDIV, OPR_LE, OPR_LT, OPR_MOD, OPR_MUL, OPR_NE, OPR_OR, OPR_POW, OPR_SHL, OPR_SHR, OPR_SUB, SETARG_B, swapexps(), expdesc::t, TM_SHL, TM_SHR, TM_SUB, expdesc::u, and VRELOCABLE.
Definition at line 762 of file lua-5.2.4/src/lcode.c.
References cast, codearith(), codenot(), codenot(), codenot(), codeunexpval(), codeunexpval(), constfolding(), constfolding(), expdesc::f, isnumeral(), expdesc::k, lua_assert, LUA_OPUNM, luai_numunm, luaK_dischargevars(), luaK_exp2anyreg(), NO_JUMP, NULL, expdesc::nval, OP_LEN, OP_UNM, OPR_BNOT, OPR_LEN, OPR_MINUS, OPR_NOT, expdesc::t, expdesc::u, VKINT, and VKNUM.
Definition at line 209 of file lua-5.1.5/src/lcode.c.
References FuncState::freereg, and luaK_checkstack().
Referenced by adjust_assign(), adjust_assign(), adjust_assign(), adjust_assign(), check_conflict(), check_conflict(), check_conflict(), check_conflict(), constructor(), discharge2anyreg(), discharge2anyreg(), discharge2anyreg(), discharge2anyreg(), forbody(), forbody(), forbody(), forbody(), fornum(), fornum(), fornum(), fornum(), localfunc(), luaK_exp2nextreg(), luaK_self(), luaK_setreturns(), parlist(), parlist(), parlist(), and parlist().
Definition at line 69 of file lua-5.1.5/src/lcode.c.
References luaK_codeABC, OP_RETURN, OP_RETURN0, and OP_RETURN1.
Referenced by close_func(), close_func(), close_func(), close_func(), retstat(), retstat(), retstat(), and retstat().
Definition at line 503 of file lua-5.1.5/src/lcode.c.
References codeABRK(), freeexp(), freeexp(), freeexp(), freeexp(), FuncState::freereg, expdesc::info, expdesc::k, luaK_codeABC, luaK_exp2anyreg(), luaK_exp2RK(), luaK_reserveregs(), OP_SELF, expdesc::s, expdesc::u, and VNONRELOC.
Referenced by primaryexp(), suffixedexp(), suffixedexp(), and suffixedexp().
Definition at line 45 of file lua-5.4.3/src/lcode.c.
References luaX_syntaxerror(), LexState::t, and Token::token.
Referenced by check_readonly(), checkrepeated(), getlocalattribute(), jumpscopeerror(), localstat(), and undefgoto().
Definition at line 819 of file lua-5.1.5/src/lcode.c.
References cast, codeextraarg(), codeextraarg(), codeextraarg(), FuncState::freereg, LexState::lastline, LFIELDS_PER_FLUSH, FuncState::ls, lua_assert, LUA_MULTRET, luaK_code(), luaK_codeABC, luaK_codeABCk(), luaX_syntaxerror(), MAXARG_Ax, MAXARG_C, and OP_SETLIST.
Referenced by closelistfield(), closelistfield(), closelistfield(), closelistfield(), lastlistfield(), lastlistfield(), lastlistfield(), and lastlistfield().
Definition at line 292 of file lua-5.1.5/src/lcode.c.
References GETARG_A, GETARG_C, getcode, getinstruction, expdesc::info, expdesc::k, lua_assert, expdesc::s, SETARG_B, SETARG_C, expdesc::u, VCALL, VNONRELOC, VRELOC, VRELOCABLE, and VVARARG.
Referenced by assignment(), assignment(), assignment(), luaK_dischargevars(), and restassign().
Definition at line 280 of file lua-5.1.5/src/lcode.c.
References FuncState::freereg, getcode, getinstruction, expdesc::k, lua_assert, LUA_MULTRET, luaK_reserveregs(), SETARG_A, SETARG_B, SETARG_C, VCALL, and VVARARG.
Referenced by adjust_assign(), adjust_assign(), adjust_assign(), and adjust_assign().
Definition at line 1732 of file lua-5.4.3/src/lcode.c.
References Proto::code, CREATE_ABCk, CREATE_Ax, FuncState::f, luaO_ceillog2(), MAXARG_C, OP_EXTRAARG, and OP_NEWTABLE.
Referenced by constructor().
Definition at line 472 of file lua-5.1.5/src/lcode.c.
References expdesc::aux, codeABRK(), exp2reg(), exp2reg(), exp2reg(), exp2reg(), freeexp(), freeexp(), freeexp(), freeexp(), expdesc::idx, expdesc::ind, expdesc::info, expdesc::k, lua_assert, luaK_codeABC, luaK_codeABx(), luaK_exp2anyreg(), luaK_exp2RK(), OP_SETFIELD, OP_SETGLOBAL, OP_SETI, OP_SETTABLE, OP_SETTABUP, OP_SETUPVAL, expdesc::ridx, expdesc::s, expdesc::t, expdesc::u, expdesc::var, VGLOBAL, VINDEXED, VINDEXI, VINDEXSTR, VINDEXUP, VLOCAL, expdesc::vt, and VUPVAL.
Referenced by assignment(), assignment(), assignment(), funcstat(), funcstat(), funcstat(), funcstat(), localfunc(), recfield(), and restassign().