Lua 修改虚拟机实战2 - 字节码顺序

2017-05-14  本文已影响350人  自由快挂

续上一篇:

漏掉了 lopcodes.cluaP_opmodes 的顺序:

const lu_byte luaP_opmodes[NUM_OPCODES] = {
/*       T  A    B       C     mode        opcode   */
  opmode(0, 1, OpArgK, OpArgK, iABC)   /* OP_ADD */
 ,opmode(0, 1, OpArgU, OpArgU, iABC)   /* OP_CALL */
 ,opmode(0, 1, OpArgR, OpArgN, iABC)        /* OP_MOVE */
$ make macosx
$ cd src
$ ./luac -o optest.luac optest.lua && ./lua optest.luac
hello
qt  2.6

没有毛病啊,老铁 ~

此外,我还注意到 ** grep "ORDER OPR" if you change these enums 这个东西,貌似也可以玩一下 ~

上一篇下一篇

猜你喜欢

热点阅读