diff options
author | Roberto Ierusalimschy <roberto@inf.puc-rio.br> | 2010-05-13 16:53:05 -0300 |
---|---|---|
committer | Roberto Ierusalimschy <roberto@inf.puc-rio.br> | 2010-05-13 16:53:05 -0300 |
commit | cf531912f233ce0c7151131fb027c046d3beab39 (patch) | |
tree | ded2bddb69afad9ad0e0d66963b5cacb59aa4969 /lvm.c | |
parent | 0d00729e316dd7cd9a1b00ae716761eef8f00dfe (diff) | |
download | lua-cf531912f233ce0c7151131fb027c046d3beab39.tar.gz lua-cf531912f233ce0c7151131fb027c046d3beab39.tar.bz2 lua-cf531912f233ce0c7151131fb027c046d3beab39.zip |
one more macro (mvdispatch) to easy experiments with alternative
dispatch methods
Diffstat (limited to 'lvm.c')
-rw-r--r-- | lvm.c | 5 |
1 files changed, 3 insertions, 2 deletions
@@ -1,5 +1,5 @@ | |||
1 | /* | 1 | /* |
2 | ** $Id: lvm.c,v 2.118 2010/05/12 20:31:33 roberto Exp roberto $ | 2 | ** $Id: lvm.c,v 2.119 2010/05/12 20:40:35 roberto Exp roberto $ |
3 | ** Lua virtual machine | 3 | ** Lua virtual machine |
4 | ** See Copyright Notice in lua.h | 4 | ** See Copyright Notice in lua.h |
5 | */ | 5 | */ |
@@ -439,6 +439,7 @@ void luaV_finishOp (lua_State *L) { | |||
439 | else { Protect(luaV_arith(L, ra, rb, rc, tm)); } } | 439 | else { Protect(luaV_arith(L, ra, rb, rc, tm)); } } |
440 | 440 | ||
441 | 441 | ||
442 | #define vmdispatch(o) switch(o) | ||
442 | #define vmcase(l,b) case l: {b} break; | 443 | #define vmcase(l,b) case l: {b} break; |
443 | 444 | ||
444 | void luaV_execute (lua_State *L) { | 445 | void luaV_execute (lua_State *L) { |
@@ -464,7 +465,7 @@ void luaV_execute (lua_State *L) { | |||
464 | ra = RA(i); | 465 | ra = RA(i); |
465 | lua_assert(base == ci->u.l.base); | 466 | lua_assert(base == ci->u.l.base); |
466 | lua_assert(base <= L->top && L->top < L->stack + L->stacksize); | 467 | lua_assert(base <= L->top && L->top < L->stack + L->stacksize); |
467 | switch (GET_OPCODE(i)) { | 468 | vmdispatch (GET_OPCODE(i)) { |
468 | vmcase(OP_MOVE, | 469 | vmcase(OP_MOVE, |
469 | setobjs2s(L, ra, RB(i)); | 470 | setobjs2s(L, ra, RB(i)); |
470 | ) | 471 | ) |