lopcodes.c 2.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107
  1. /*
  2. ** $Id:$
  3. ** extracted automatically from lopcodes.h by mkprint.lua
  4. ** DO NOT EDIT
  5. ** See Copyright Notice in lua.h
  6. */
  7. #define LUA_PRIVATE
  8. #include "lua.h"
  9. #include "lopcodes.h"
  10. #ifdef LUA_OPNAMES
  11. const l_char *const luaP_opnames[] = {
  12. l_s("MOVE"),
  13. l_s("LOADK"),
  14. l_s("LOADINT"),
  15. l_s("LOADNIL"),
  16. l_s("LOADUPVAL"),
  17. l_s("GETGLOBAL"),
  18. l_s("GETTABLE"),
  19. l_s("SETGLOBAL"),
  20. l_s("SETTABLE"),
  21. l_s("NEWTABLE"),
  22. l_s("SELF"),
  23. l_s("ADD"),
  24. l_s("SUB"),
  25. l_s("MUL"),
  26. l_s("DIV"),
  27. l_s("POW"),
  28. l_s("UNM"),
  29. l_s("NOT"),
  30. l_s("CONCAT"),
  31. l_s("JMP"),
  32. l_s("CJMP"),
  33. l_s("TESTEQ"),
  34. l_s("TESTNE"),
  35. l_s("TESTLT"),
  36. l_s("TESTLE"),
  37. l_s("TESTGT"),
  38. l_s("TESTGE"),
  39. l_s("TESTT"),
  40. l_s("TESTF"),
  41. l_s("NILJMP"),
  42. l_s("CALL"),
  43. l_s("RETURN"),
  44. l_s("FORPREP"),
  45. l_s("FORLOOP"),
  46. l_s("TFORPREP"),
  47. l_s("TFORLOOP"),
  48. l_s("SETLIST"),
  49. l_s("SETLISTO"),
  50. l_s("CLOSURE")
  51. };
  52. #endif
  53. #define opmode(t,x,b,c,sa,k,m) (((t)<<OpModeT) | \
  54. ((b)<<OpModeBreg) | ((c)<<OpModeCreg) | \
  55. ((sa)<<OpModesetA) | ((k)<<OpModeK) | (m))
  56. const lu_byte luaP_opmodes[] = {
  57. /* T _ B C sA K mode opcode */
  58. opmode(0,0,1,0, 1,0,iABC) /* OP_MOVE */
  59. ,opmode(0,0,0,0, 1,1,iABc) /* OP_LOADK */
  60. ,opmode(0,0,0,0, 1,0,iAsBc) /* OP_LOADINT */
  61. ,opmode(0,0,1,0, 1,0,iABC) /* OP_LOADNIL */
  62. ,opmode(0,0,0,0, 1,0,iABc) /* OP_LOADUPVAL */
  63. ,opmode(0,0,0,0, 1,1,iABc) /* OP_GETGLOBAL */
  64. ,opmode(0,0,1,1, 1,0,iABC) /* OP_GETTABLE */
  65. ,opmode(0,0,0,0, 0,1,iABc) /* OP_SETGLOBAL */
  66. ,opmode(0,0,1,1, 0,0,iABC) /* OP_SETTABLE */
  67. ,opmode(0,0,0,0, 1,0,iABc) /* OP_NEWTABLE */
  68. ,opmode(0,0,1,1, 1,0,iABC) /* OP_SELF */
  69. ,opmode(0,0,1,1, 1,0,iABC) /* OP_ADD */
  70. ,opmode(0,0,1,1, 1,0,iABC) /* OP_SUB */
  71. ,opmode(0,0,1,1, 1,0,iABC) /* OP_MUL */
  72. ,opmode(0,0,1,1, 1,0,iABC) /* OP_DIV */
  73. ,opmode(0,0,1,1, 1,0,iABC) /* OP_POW */
  74. ,opmode(0,0,1,0, 1,0,iABC) /* OP_UNM */
  75. ,opmode(0,0,1,0, 1,0,iABC) /* OP_NOT */
  76. ,opmode(0,0,1,1, 1,0,iABC) /* OP_CONCAT */
  77. ,opmode(0,0,0,0, 0,0,iAsBc) /* OP_JMP */
  78. ,opmode(0,0,0,0, 0,0,iAsBc) /* OP_CJMP */
  79. ,opmode(1,0,0,1, 0,0,iABC) /* OP_TESTEQ */
  80. ,opmode(1,0,0,1, 0,0,iABC) /* OP_TESTNE */
  81. ,opmode(1,0,0,1, 0,0,iABC) /* OP_TESTLT */
  82. ,opmode(1,0,0,1, 0,0,iABC) /* OP_TESTLE */
  83. ,opmode(1,0,0,1, 0,0,iABC) /* OP_TESTGT */
  84. ,opmode(1,0,0,1, 0,0,iABC) /* OP_TESTGE */
  85. ,opmode(1,0,1,0, 1,0,iABC) /* OP_TESTT */
  86. ,opmode(1,0,1,0, 1,0,iABC) /* OP_TESTF */
  87. ,opmode(0,0,0,0, 1,0,iABc) /* OP_NILJMP */
  88. ,opmode(0,0,0,0, 0,0,iABC) /* OP_CALL */
  89. ,opmode(0,0,0,0, 0,0,iABC) /* OP_RETURN */
  90. ,opmode(0,0,0,0, 0,0,iAsBc) /* OP_FORPREP */
  91. ,opmode(0,0,0,0, 0,0,iAsBc) /* OP_FORLOOP */
  92. ,opmode(0,0,0,0, 0,0,iAsBc) /* OP_TFORPREP */
  93. ,opmode(0,0,0,0, 0,0,iAsBc) /* OP_TFORLOOP */
  94. ,opmode(0,0,0,0, 0,0,iABc) /* OP_SETLIST */
  95. ,opmode(0,0,0,0, 0,0,iABc) /* OP_SETLISTO */
  96. ,opmode(0,0,0,0, 1,0,iABc) /* OP_CLOSURE */
  97. };