The Design and Implementation of the FreeBSD Operating System, Second Edition
Now available: The Design and Implementation of the FreeBSD Operating System (Second Edition)


[ source navigation ] [ diff markup ] [ identifier search ] [ freetext search ] [ file search ] [ list types ] [ track identifier ]

FreeBSD/Linux Kernel Cross Reference
sys/contrib/openzfs/module/lua/lopcodes.c

Version: -  FREEBSD  -  FREEBSD-13-STABLE  -  FREEBSD-13-0  -  FREEBSD-12-STABLE  -  FREEBSD-12-0  -  FREEBSD-11-STABLE  -  FREEBSD-11-0  -  FREEBSD-10-STABLE  -  FREEBSD-10-0  -  FREEBSD-9-STABLE  -  FREEBSD-9-0  -  FREEBSD-8-STABLE  -  FREEBSD-8-0  -  FREEBSD-7-STABLE  -  FREEBSD-7-0  -  FREEBSD-6-STABLE  -  FREEBSD-6-0  -  FREEBSD-5-STABLE  -  FREEBSD-5-0  -  FREEBSD-4-STABLE  -  FREEBSD-3-STABLE  -  FREEBSD22  -  l41  -  OPENBSD  -  linux-2.6  -  MK84  -  PLAN9  -  xnu-8792 
SearchContext: -  none  -  3  -  10 

    1 /*
    2 ** $Id: lopcodes.c,v 1.49.1.1 2013/04/12 18:48:47 roberto Exp $
    3 ** Opcodes for Lua virtual machine
    4 ** See Copyright Notice in lua.h
    5 */
    6 
    7 
    8 #define lopcodes_c
    9 #define LUA_CORE
   10 
   11 
   12 #include "lopcodes.h"
   13 
   14 
   15 /* ORDER OP */
   16 
   17 LUAI_DDEF const char *const luaP_opnames[NUM_OPCODES+1] = {
   18   "MOVE",
   19   "LOADK",
   20   "LOADKX",
   21   "LOADBOOL",
   22   "LOADNIL",
   23   "GETUPVAL",
   24   "GETTABUP",
   25   "GETTABLE",
   26   "SETTABUP",
   27   "SETUPVAL",
   28   "SETTABLE",
   29   "NEWTABLE",
   30   "SELF",
   31   "ADD",
   32   "SUB",
   33   "MUL",
   34   "DIV",
   35   "MOD",
   36   "POW",
   37   "UNM",
   38   "NOT",
   39   "LEN",
   40   "CONCAT",
   41   "JMP",
   42   "EQ",
   43   "LT",
   44   "LE",
   45   "TEST",
   46   "TESTSET",
   47   "CALL",
   48   "TAILCALL",
   49   "RETURN",
   50   "FORLOOP",
   51   "FORPREP",
   52   "TFORCALL",
   53   "TFORLOOP",
   54   "SETLIST",
   55   "CLOSURE",
   56   "VARARG",
   57   "EXTRAARG",
   58   NULL
   59 };
   60 
   61 
   62 #define opmode(t,a,b,c,m) (((t)<<7) | ((a)<<6) | ((b)<<4) | ((c)<<2) | (m))
   63 
   64 LUAI_DDEF const lu_byte luaP_opmodes[NUM_OPCODES] = {
   65 /*       T  A    B       C     mode                opcode       */
   66   opmode(0, 1, OpArgR, OpArgN, iABC)            /* OP_MOVE */
   67  ,opmode(0, 1, OpArgK, OpArgN, iABx)            /* OP_LOADK */
   68  ,opmode(0, 1, OpArgN, OpArgN, iABx)            /* OP_LOADKX */
   69  ,opmode(0, 1, OpArgU, OpArgU, iABC)            /* OP_LOADBOOL */
   70  ,opmode(0, 1, OpArgU, OpArgN, iABC)            /* OP_LOADNIL */
   71  ,opmode(0, 1, OpArgU, OpArgN, iABC)            /* OP_GETUPVAL */
   72  ,opmode(0, 1, OpArgU, OpArgK, iABC)            /* OP_GETTABUP */
   73  ,opmode(0, 1, OpArgR, OpArgK, iABC)            /* OP_GETTABLE */
   74  ,opmode(0, 0, OpArgK, OpArgK, iABC)            /* OP_SETTABUP */
   75  ,opmode(0, 0, OpArgU, OpArgN, iABC)            /* OP_SETUPVAL */
   76  ,opmode(0, 0, OpArgK, OpArgK, iABC)            /* OP_SETTABLE */
   77  ,opmode(0, 1, OpArgU, OpArgU, iABC)            /* OP_NEWTABLE */
   78  ,opmode(0, 1, OpArgR, OpArgK, iABC)            /* OP_SELF */
   79  ,opmode(0, 1, OpArgK, OpArgK, iABC)            /* OP_ADD */
   80  ,opmode(0, 1, OpArgK, OpArgK, iABC)            /* OP_SUB */
   81  ,opmode(0, 1, OpArgK, OpArgK, iABC)            /* OP_MUL */
   82  ,opmode(0, 1, OpArgK, OpArgK, iABC)            /* OP_DIV */
   83  ,opmode(0, 1, OpArgK, OpArgK, iABC)            /* OP_MOD */
   84  ,opmode(0, 1, OpArgK, OpArgK, iABC)            /* OP_POW */
   85  ,opmode(0, 1, OpArgR, OpArgN, iABC)            /* OP_UNM */
   86  ,opmode(0, 1, OpArgR, OpArgN, iABC)            /* OP_NOT */
   87  ,opmode(0, 1, OpArgR, OpArgN, iABC)            /* OP_LEN */
   88  ,opmode(0, 1, OpArgR, OpArgR, iABC)            /* OP_CONCAT */
   89  ,opmode(0, 0, OpArgR, OpArgN, iAsBx)           /* OP_JMP */
   90  ,opmode(1, 0, OpArgK, OpArgK, iABC)            /* OP_EQ */
   91  ,opmode(1, 0, OpArgK, OpArgK, iABC)            /* OP_LT */
   92  ,opmode(1, 0, OpArgK, OpArgK, iABC)            /* OP_LE */
   93  ,opmode(1, 0, OpArgN, OpArgU, iABC)            /* OP_TEST */
   94  ,opmode(1, 1, OpArgR, OpArgU, iABC)            /* OP_TESTSET */
   95  ,opmode(0, 1, OpArgU, OpArgU, iABC)            /* OP_CALL */
   96  ,opmode(0, 1, OpArgU, OpArgU, iABC)            /* OP_TAILCALL */
   97  ,opmode(0, 0, OpArgU, OpArgN, iABC)            /* OP_RETURN */
   98  ,opmode(0, 1, OpArgR, OpArgN, iAsBx)           /* OP_FORLOOP */
   99  ,opmode(0, 1, OpArgR, OpArgN, iAsBx)           /* OP_FORPREP */
  100  ,opmode(0, 0, OpArgN, OpArgU, iABC)            /* OP_TFORCALL */
  101  ,opmode(0, 1, OpArgR, OpArgN, iAsBx)           /* OP_TFORLOOP */
  102  ,opmode(0, 0, OpArgU, OpArgU, iABC)            /* OP_SETLIST */
  103  ,opmode(0, 1, OpArgU, OpArgN, iABx)            /* OP_CLOSURE */
  104  ,opmode(0, 1, OpArgU, OpArgN, iABC)            /* OP_VARARG */
  105  ,opmode(0, 0, OpArgU, OpArgU, iAx)             /* OP_EXTRAARG */
  106 };

Cache object: a2d2800cbe53234f88dd6b793a082a1e


[ source navigation ] [ diff markup ] [ identifier search ] [ freetext search ] [ file search ] [ list types ] [ track identifier ]


This page is part of the FreeBSD/Linux Linux Kernel Cross-Reference, and was automatically generated using a modified version of the LXR engine.