lua

A copy of the Lua development repository
Log | Files | Refs | README

commit 0a5dce57044b782a211ce53896967b90fb81ce69
parent 8c22057b2ece906d3877363573db39e65de1b1b6
Author: Roberto Ierusalimschy <roberto@inf.puc-rio.br>
Date:   Sun,  6 Nov 1994 13:34:45 -0200

new opcodes for '>' and '>='

Diffstat:
Mlua.stx | 6+++---
Mopcode.h | 5++++-
2 files changed, 7 insertions(+), 4 deletions(-)

diff --git a/lua.stx b/lua.stx @@ -1,6 +1,6 @@ %{ -char *rcs_luastx = "$Id: lua.stx,v 3.1 1994/11/02 20:30:53 roberto Exp $"; +char *rcs_luastx = "$Id: lua.stx,v 3.2 1994/11/03 22:32:42 roberto Exp $"; #include <stdio.h> #include <stdlib.h> @@ -464,10 +464,10 @@ expr1 : expr { if ($1 == 0) code_byte(1); } expr : '(' expr ')' { $$ = $2; } | expr1 EQ expr1 { code_byte(EQOP); $$ = 1; } | expr1 '<' expr1 { code_byte(LTOP); $$ = 1; } - | expr1 '>' expr1 { code_byte(LEOP); code_byte(NOTOP); $$ = 1; } + | expr1 '>' expr1 { code_byte(GTOP); $$ = 1; } | expr1 NE expr1 { code_byte(EQOP); code_byte(NOTOP); $$ = 1; } | expr1 LE expr1 { code_byte(LEOP); $$ = 1; } - | expr1 GE expr1 { code_byte(LTOP); code_byte(NOTOP); $$ = 1; } + | expr1 GE expr1 { code_byte(GEOP); $$ = 1; } | expr1 '+' expr1 { code_byte(ADDOP); $$ = 1; } | expr1 '-' expr1 { code_byte(SUBOP); $$ = 1; } | expr1 '*' expr1 { code_byte(MULTOP); $$ = 1; } diff --git a/opcode.h b/opcode.h @@ -1,6 +1,6 @@ /* ** TeCGraf - PUC-Rio -** $Id: opcode.h,v 3.1 1994/11/02 20:30:53 roberto Exp roberto $ +** $Id: opcode.h,v 3.2 1994/11/04 10:47:49 roberto Exp $ */ #ifndef opcode_h @@ -74,6 +74,8 @@ typedef enum EQOP, LTOP, LEOP, + GTOP, + GEOP, ADDOP, SUBOP, MULTOP, @@ -159,5 +161,6 @@ char *lua_lasttext (void); /* from "lex.c" module */ int yylex (void); /* from "lex.c" module */ Byte *lua_parse (void); /* from "lua.stx" module */ void lua_travstack (void (*fn)(Object *)); +void luaI_setfallback (void); #endif