~ilya-yanok/ubuntu/precise/grub2/fix-for-948716

« back to all changes in this revision

Viewing changes to script/lua/lopcodes.c

  • Committer: Bazaar Package Importer
  • Author(s): Robert Millan
  • Date: 2009-07-25 19:00:53 UTC
  • mfrom: (1.6.3 upstream)
  • mto: (17.4.13 sid)
  • mto: This revision was merged to the branch mainline in revision 53.
  • Revision ID: james.westby@ubuntu.com-20090725190053-uv3lm6ya3zxs77ep
ImportĀ upstreamĀ versionĀ 1.96+20090725

Show diffs side-by-side

added added

removed removed

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