MCPcopy Create free account
hub / github.com/Snapchat/KeyDB / codearith

Function codearith

deps/lua/src/lcode.c:653–670  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

651
652
653static void codearith (FuncState *fs, OpCode op, expdesc *e1, expdesc *e2) {
654 if (constfolding(op, e1, e2))
655 return;
656 else {
657 int o2 = (op != OP_UNM && op != OP_LEN) ? luaK_exp2RK(fs, e2) : 0;
658 int o1 = luaK_exp2RK(fs, e1);
659 if (o1 > o2) {
660 freeexp(fs, e1);
661 freeexp(fs, e2);
662 }
663 else {
664 freeexp(fs, e2);
665 freeexp(fs, e1);
666 }
667 e1->u.s.info = luaK_codeABC(fs, op, 0, o1, o2);
668 e1->k = VRELOCABLE;
669 }
670}
671
672
673static void codecomp (FuncState *fs, OpCode op, int cond, expdesc *e1,

Callers 2

luaK_prefixFunction · 0.85
luaK_posfixFunction · 0.85

Calls 4

constfoldingFunction · 0.85
luaK_exp2RKFunction · 0.85
freeexpFunction · 0.85
luaK_codeABCFunction · 0.85

Tested by

no test coverage detected