aboutsummaryrefslogtreecommitdiff
path: root/lopcodes.h
diff options
context:
space:
mode:
Diffstat (limited to 'lopcodes.h')
-rw-r--r--lopcodes.h30
1 files changed, 27 insertions, 3 deletions
diff --git a/lopcodes.h b/lopcodes.h
index 7ba79e25..e1b95122 100644
--- a/lopcodes.h
+++ b/lopcodes.h
@@ -1,5 +1,5 @@
1/* 1/*
2** $Id: lopcodes.h,v 1.3 1997/09/19 21:17:52 roberto Exp roberto $ 2** $Id: lopcodes.h,v 1.4 1997/09/22 20:53:20 roberto Exp roberto $
3** Opcodes for Lua virtual machine 3** Opcodes for Lua virtual machine
4** See Copyright Notice in lua.h 4** See Copyright Notice in lua.h
5*/ 5*/
@@ -29,10 +29,21 @@ PUSH2,/* - 2.0 */
29PUSHBYTE,/* b - (float)b */ 29PUSHBYTE,/* b - (float)b */
30PUSHWORD,/* w - (float)w */ 30PUSHWORD,/* w - (float)w */
31 31
32PUSHCONSTANT0,/* - CNST[0] */
33PUSHCONSTANT1,/* - CNST[1] */
34PUSHCONSTANT2,/* - CNST[2] */
35PUSHCONSTANT3,/* - CNST[3] */
36PUSHCONSTANT4,/* - CNST[4] */
37PUSHCONSTANT5,/* - CNST[5] */
38PUSHCONSTANT6,/* - CNST[6] */
39PUSHCONSTANT7,/* - CNST[7] */
40PUSHCONSTANT8,/* - CNST[8] */
41PUSHCONSTANT9,/* - CNST[9] */
32PUSHCONSTANTB,/*b - CNST[b] */ 42PUSHCONSTANTB,/*b - CNST[b] */
33PUSHCONSTANT,/* w - CNST[w] */ 43PUSHCONSTANT,/* w - CNST[w] */
34 44
35PUSHUPVALUE0, 45PUSHUPVALUE0,
46PUSHUPVALUE1,
36PUSHUPVALUE,/* b - Closure[b] */ 47PUSHUPVALUE,/* b - Closure[b] */
37 48
38PUSHLOCAL0,/* - LOC[0] */ 49PUSHLOCAL0,/* - LOC[0] */
@@ -47,6 +58,16 @@ PUSHLOCAL8,/* - LOC[8] */
47PUSHLOCAL9,/* - LOC[9] */ 58PUSHLOCAL9,/* - LOC[9] */
48PUSHLOCAL,/* b - LOC[b] */ 59PUSHLOCAL,/* b - LOC[b] */
49 60
61GETGLOBAL0,/* - VAR[CNST[0]] */
62GETGLOBAL1,/* - VAR[CNST[1]] */
63GETGLOBAL2,/* - VAR[CNST[2]] */
64GETGLOBAL3,/* - VAR[CNST[3]] */
65GETGLOBAL4,/* - VAR[CNST[4]] */
66GETGLOBAL5,/* - VAR[CNST[5]] */
67GETGLOBAL6,/* - VAR[CNST[6]] */
68GETGLOBAL7,/* - VAR[CNST[7]] */
69GETGLOBAL8,/* - VAR[CNST[8]] */
70GETGLOBAL9,/* - VAR[CNST[9]] */
50GETGLOBALB,/* b - VAR[CNST[b]] */ 71GETGLOBALB,/* b - VAR[CNST[b]] */
51GETGLOBAL,/* w - VAR[CNST[w]] */ 72GETGLOBAL,/* w - VAR[CNST[w]] */
52 73
@@ -94,11 +115,14 @@ CONCOP,/* y x x..y */
94MINUSOP,/* x -x */ 115MINUSOP,/* x -x */
95NOTOP,/* x (x==nil)? 1 : nil */ 116NOTOP,/* x (x==nil)? 1 : nil */
96 117
97ONTJMP,/* w x (x!=nil)? x : - (x!=nil)? PC+=w */ 118/* NOTICE: all jumps are relative to the position following the opcode */
98ONFJMP,/* w x (x==nil)? x : - (x==nil)? PC+=w */ 119ONTJMP,/* b x (x!=nil)? x : - (x!=nil)? PC+=b */
120ONFJMP,/* b x (x==nil)? x : - (x==nil)? PC+=b */
99JMP,/* w - - PC+=w */ 121JMP,/* w - - PC+=w */
122UPJMPB,/* b - - PC-=b */
100UPJMP,/* w - - PC-=w */ 123UPJMP,/* w - - PC-=w */
101IFFJMP,/* w x - (x==nil)? PC+=w */ 124IFFJMP,/* w x - (x==nil)? PC+=w */
125IFFUPJMPB,/* b x - (x==nil)? PC-=b */
102IFFUPJMP,/* w x - (x==nil)? PC-=w */ 126IFFUPJMP,/* w x - (x==nil)? PC-=w */
103 127
104CLOSUREB,/* b v_1...v_n c(CNST[b]) */ 128CLOSUREB,/* b v_1...v_n c(CNST[b]) */