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