binary operators use R instead of RK
faster + nobody uses RK(B), so B can be smaller (freeing one bit for more opcodes, soon)
This commit is contained in:
32
lopcodes.c
32
lopcodes.c
@@ -1,5 +1,5 @@
|
||||
/*
|
||||
** $Id: lopcodes.c,v 1.62 2017/09/15 14:19:06 roberto Exp roberto $
|
||||
** $Id: lopcodes.c,v 1.63 2017/09/19 18:38:14 roberto Exp roberto $
|
||||
** Opcodes for Lua virtual machine
|
||||
** See Copyright Notice in lua.h
|
||||
*/
|
||||
@@ -101,18 +101,18 @@ LUAI_DDEF const lu_byte luaP_opmodes[NUM_OPCODES] = {
|
||||
,opmode(0, 1, OpArgU, OpArgU, iABC) /* OP_NEWTABLE */
|
||||
,opmode(0, 1, OpArgR, OpArgK, iABC) /* OP_SELF */
|
||||
,opmode(0, 1, OpArgR, OpArgU, iABC) /* OP_ADDI */
|
||||
,opmode(0, 1, OpArgK, OpArgK, iABC) /* OP_ADD */
|
||||
,opmode(0, 1, OpArgK, OpArgK, iABC) /* OP_SUB */
|
||||
,opmode(0, 1, OpArgK, OpArgK, iABC) /* OP_MUL */
|
||||
,opmode(0, 1, OpArgK, OpArgK, iABC) /* OP_MOD */
|
||||
,opmode(0, 1, OpArgK, OpArgK, iABC) /* OP_POW */
|
||||
,opmode(0, 1, OpArgK, OpArgK, iABC) /* OP_DIV */
|
||||
,opmode(0, 1, OpArgK, OpArgK, iABC) /* OP_IDIV */
|
||||
,opmode(0, 1, OpArgK, OpArgK, iABC) /* OP_BAND */
|
||||
,opmode(0, 1, OpArgK, OpArgK, iABC) /* OP_BOR */
|
||||
,opmode(0, 1, OpArgK, OpArgK, iABC) /* OP_BXOR */
|
||||
,opmode(0, 1, OpArgK, OpArgK, iABC) /* OP_SHL */
|
||||
,opmode(0, 1, OpArgK, OpArgK, iABC) /* OP_SHR */
|
||||
,opmode(0, 1, OpArgR, OpArgR, iABC) /* OP_ADD */
|
||||
,opmode(0, 1, OpArgR, OpArgR, iABC) /* OP_SUB */
|
||||
,opmode(0, 1, OpArgR, OpArgR, iABC) /* OP_MUL */
|
||||
,opmode(0, 1, OpArgR, OpArgR, iABC) /* OP_MOD */
|
||||
,opmode(0, 1, OpArgR, OpArgR, iABC) /* OP_POW */
|
||||
,opmode(0, 1, OpArgR, OpArgR, iABC) /* OP_DIV */
|
||||
,opmode(0, 1, OpArgR, OpArgR, iABC) /* OP_IDIV */
|
||||
,opmode(0, 1, OpArgR, OpArgR, iABC) /* OP_BAND */
|
||||
,opmode(0, 1, OpArgR, OpArgR, iABC) /* OP_BOR */
|
||||
,opmode(0, 1, OpArgR, OpArgR, iABC) /* OP_BXOR */
|
||||
,opmode(0, 1, OpArgR, OpArgR, iABC) /* OP_SHL */
|
||||
,opmode(0, 1, OpArgR, OpArgR, iABC) /* OP_SHR */
|
||||
,opmode(0, 1, OpArgR, OpArgN, iABC) /* OP_UNM */
|
||||
,opmode(0, 1, OpArgR, OpArgN, iABC) /* OP_BNOT */
|
||||
,opmode(0, 1, OpArgR, OpArgN, iABC) /* OP_NOT */
|
||||
@@ -120,9 +120,9 @@ LUAI_DDEF const lu_byte luaP_opmodes[NUM_OPCODES] = {
|
||||
,opmode(0, 1, OpArgR, OpArgR, iABC) /* OP_CONCAT */
|
||||
,opmode(0, 0, OpArgN, OpArgN, iABC) /* OP_CLOSE */
|
||||
,opmode(0, 0, OpArgU, OpArgN, iAsBx) /* OP_JMP */
|
||||
,opmode(1, 0, OpArgK, OpArgK, iABC) /* OP_EQ */
|
||||
,opmode(1, 0, OpArgK, OpArgK, iABC) /* OP_LT */
|
||||
,opmode(1, 0, OpArgK, OpArgK, iABC) /* OP_LE */
|
||||
,opmode(1, 0, OpArgR, OpArgR, iABC) /* OP_EQ */
|
||||
,opmode(1, 0, OpArgR, OpArgR, iABC) /* OP_LT */
|
||||
,opmode(1, 0, OpArgR, OpArgR, iABC) /* OP_LE */
|
||||
,opmode(1, 0, OpArgN, OpArgU, iABC) /* OP_TEST */
|
||||
,opmode(1, 1, OpArgR, OpArgU, iABC) /* OP_TESTSET */
|
||||
,opmode(0, 1, OpArgU, OpArgU, iABC) /* OP_CALL */
|
||||
|
||||
Reference in New Issue
Block a user