Lua 5.1.4: lopcodes.c


L0001    /*
L0002    ** $Id: lopcodes.c,v 1.37.1.1 2007/12/27 13:02:25 roberto Exp $
L0003    ** See Copyright Notice in lua.h
L0004    */
L0005    
L0006    
L0007    #define lopcodes_c
L0008    #define LUA_CORE
L0009    
L0010    
L0011    #include "lopcodes.h"
L0012    
L0013    
L0014    /* ORDER OP */
L0015    
L0016    const char *const luaP_opnames[NUM_OPCODES+1] = {
L0017      "MOVE",
L0018      "LOADK",
L0019      "LOADBOOL",
L0020      "LOADNIL",
L0021      "GETUPVAL",
L0022      "GETGLOBAL",
L0023      "GETTABLE",
L0024      "SETGLOBAL",
L0025      "SETUPVAL",
L0026      "SETTABLE",
L0027      "NEWTABLE",
L0028      "SELF",
L0029      "ADD",
L0030      "SUB",
L0031      "MUL",
L0032      "DIV",
L0033      "MOD",
L0034      "POW",
L0035      "UNM",
L0036      "NOT",
L0037      "LEN",
L0038      "CONCAT",
L0039      "JMP",
L0040      "EQ",
L0041      "LT",
L0042      "LE",
L0043      "TEST",
L0044      "TESTSET",
L0045      "CALL",
L0046      "TAILCALL",
L0047      "RETURN",
L0048      "FORLOOP",
L0049      "FORPREP",
L0050      "TFORLOOP",
L0051      "SETLIST",
L0052      "CLOSE",
L0053      "CLOSURE",
L0054      "VARARG",
L0055      NULL
L0056    };
L0057    
L0058    
L0059    #define opmode(t,a,b,c,m) (((t)<<7) | ((a)<<6) | ((b)<<4) | ((c)<<2) | (m))
L0060    
L0061    const lu_byte luaP_opmodes[NUM_OPCODES] = {
L0062    /*       T  A    B       C     mode		   opcode	*/
L0063      opmode(0, 1, OpArgR, OpArgN, iABC) 		/* OP_MOVE */
L0064     ,opmode(0, 1, OpArgK, OpArgN, iABx)		/* OP_LOADK */
L0065     ,opmode(0, 1, OpArgU, OpArgU, iABC)		/* OP_LOADBOOL */
L0066     ,opmode(0, 1, OpArgR, OpArgN, iABC)		/* OP_LOADNIL */
L0067     ,opmode(0, 1, OpArgU, OpArgN, iABC)		/* OP_GETUPVAL */
L0068     ,opmode(0, 1, OpArgK, OpArgN, iABx)		/* OP_GETGLOBAL */
L0069     ,opmode(0, 1, OpArgR, OpArgK, iABC)		/* OP_GETTABLE */
L0070     ,opmode(0, 0, OpArgK, OpArgN, iABx)		/* OP_SETGLOBAL */
L0071     ,opmode(0, 0, OpArgU, OpArgN, iABC)		/* OP_SETUPVAL */
L0072     ,opmode(0, 0, OpArgK, OpArgK, iABC)		/* OP_SETTABLE */
L0073     ,opmode(0, 1, OpArgU, OpArgU, iABC)		/* OP_NEWTABLE */
L0074     ,opmode(0, 1, OpArgR, OpArgK, iABC)		/* OP_SELF */
L0075     ,opmode(0, 1, OpArgK, OpArgK, iABC)		/* OP_ADD */
L0076     ,opmode(0, 1, OpArgK, OpArgK, iABC)		/* OP_SUB */
L0077     ,opmode(0, 1, OpArgK, OpArgK, iABC)		/* OP_MUL */
L0078     ,opmode(0, 1, OpArgK, OpArgK, iABC)		/* OP_DIV */
L0079     ,opmode(0, 1, OpArgK, OpArgK, iABC)		/* OP_MOD */
L0080     ,opmode(0, 1, OpArgK, OpArgK, iABC)		/* OP_POW */
L0081     ,opmode(0, 1, OpArgR, OpArgN, iABC)		/* OP_UNM */
L0082     ,opmode(0, 1, OpArgR, OpArgN, iABC)		/* OP_NOT */
L0083     ,opmode(0, 1, OpArgR, OpArgN, iABC)		/* OP_LEN */
L0084     ,opmode(0, 1, OpArgR, OpArgR, iABC)		/* OP_CONCAT */
L0085     ,opmode(0, 0, OpArgR, OpArgN, iAsBx)		/* OP_JMP */
L0086     ,opmode(1, 0, OpArgK, OpArgK, iABC)		/* OP_EQ */
L0087     ,opmode(1, 0, OpArgK, OpArgK, iABC)		/* OP_LT */
L0088     ,opmode(1, 0, OpArgK, OpArgK, iABC)		/* OP_LE */
L0089     ,opmode(1, 1, OpArgR, OpArgU, iABC)		/* OP_TEST */
L0090     ,opmode(1, 1, OpArgR, OpArgU, iABC)		/* OP_TESTSET */
L0091     ,opmode(0, 1, OpArgU, OpArgU, iABC)		/* OP_CALL */
L0092     ,opmode(0, 1, OpArgU, OpArgU, iABC)		/* OP_TAILCALL */
L0093     ,opmode(0, 0, OpArgU, OpArgN, iABC)		/* OP_RETURN */
L0094     ,opmode(0, 1, OpArgR, OpArgN, iAsBx)		/* OP_FORLOOP */
L0095     ,opmode(0, 1, OpArgR, OpArgN, iAsBx)		/* OP_FORPREP */
L0096     ,opmode(1, 0, OpArgN, OpArgU, iABC)		/* OP_TFORLOOP */
L0097     ,opmode(0, 0, OpArgU, OpArgU, iABC)		/* OP_SETLIST */
L0098     ,opmode(0, 0, OpArgN, OpArgN, iABC)		/* OP_CLOSE */
L0099     ,opmode(0, 1, OpArgU, OpArgN, iABx)		/* OP_CLOSURE */
L0100     ,opmode(0, 1, OpArgU, OpArgN, iABC)		/* OP_VARARG */
L0101    };
L0102    

Generated by pretty.lua