]> git.ipfire.org Git - thirdparty/LuaJIT.git/commitdiff
Keep framesize in RA of FUNCC/FUNCCW instructions, too
authorMike Pall <mike>
Fri, 6 Aug 2010 17:43:55 +0000 (19:43 +0200)
committerMike Pall <mike>
Fri, 6 Aug 2010 17:43:55 +0000 (19:43 +0200)
src/lj_bc.h
src/lj_dispatch.c

index 74b116982121ea7cfa1bc99fe033f3bb897bce1b..ba8682836dc0ef8544fc2dee7f079bad4bf912d9 100644 (file)
   _(FUNCV,     rbase,  ___,    ___,    ___) \
   _(IFUNCV,    rbase,  ___,    ___,    ___) \
   _(JFUNCV,    rbase,  ___,    lit,    ___) \
-  _(FUNCC,     ___,    ___,    ___,    ___) \
-  _(FUNCCW,    ___,    ___,    ___,    ___)
+  _(FUNCC,     rbase,  ___,    ___,    ___) \
+  _(FUNCCW,    rbase,  ___,    ___,    ___)
 
 /* Bytecode opcode numbers. */
 typedef enum {
index 1a483b5ad9b70d36e4bb7536e260628eaf2de8b4..5ced161bc6c1757bec39f3a62abc5f03e6e67389 100644 (file)
@@ -40,7 +40,7 @@ void lj_dispatch_init(GG_State *GG)
   disp[BC_LOOP] = disp[BC_ILOOP];
   disp[BC_FUNCF] = disp[BC_IFUNCF];
   disp[BC_FUNCV] = disp[BC_IFUNCV];
-  GG->g.bc_cfunc_ext = GG->g.bc_cfunc_int = BCINS_AD(BC_FUNCC, 0, 0);
+  GG->g.bc_cfunc_ext = GG->g.bc_cfunc_int = BCINS_AD(BC_FUNCC, LUA_MINSTACK, 0);
   for (i = 0; i < GG_NUM_ASMFF; i++)
     GG->bcff[i] = BCINS_AD(BC__MAX+i, 0, 0);
 }