|
@@ -872,9 +872,9 @@ static void discharge2anyreg (FuncState *fs, expdesc *e) {
|
|
|
}
|
|
|
|
|
|
|
|
|
-static int code_loadbool (FuncState *fs, int A, OpCode op, int jump) {
|
|
|
+static int code_loadbool (FuncState *fs, int A, OpCode op) {
|
|
|
luaK_getlabel(fs); /* those instructions may be jump targets */
|
|
|
- return luaK_codeABC(fs, op, A, jump, 0);
|
|
|
+ return luaK_codeABC(fs, op, A, 0, 0);
|
|
|
}
|
|
|
|
|
|
|
|
@@ -908,8 +908,8 @@ static void exp2reg (FuncState *fs, expdesc *e, int reg) {
|
|
|
int p_t = NO_JUMP; /* position of an eventual LOAD true */
|
|
|
if (need_value(fs, e->t) || need_value(fs, e->f)) {
|
|
|
int fj = (e->k == VJMP) ? NO_JUMP : luaK_jump(fs);
|
|
|
- p_f = code_loadbool(fs, reg, OP_LOADFALSE, 1); /* skip next inst. */
|
|
|
- p_t = code_loadbool(fs, reg, OP_LOADTRUE, 0);
|
|
|
+ p_f = code_loadbool(fs, reg, OP_LFALSESKIP); /* skip next inst. */
|
|
|
+ p_t = code_loadbool(fs, reg, OP_LOADTRUE);
|
|
|
/* jump around these booleans if 'e' is not a test */
|
|
|
luaK_patchtohere(fs, fj);
|
|
|
}
|