Re: Bytecode differences between v1 and v2?

  • From: Petri Häkkinen <petrih3@xxxxxxxxx>
  • To: luajit <luajit@xxxxxxxxxxxxx>
  • Date: Wed, 30 Dec 2020 22:50:06 +0200


On 30 Dec 2020, at 21.17, Spar <developspartv@xxxxxxxxx> wrote:

The version byte is also changed. 64-bit versions requires FR2 flag and 
*probably* different TValue format.

Thanks! I'm diffing lj_bcread.c between v1 and v2 bytecode formats and I'm not 
seeing any relevant changes.

But there's this:
if ((flags & BCDUMP_F_FR2) != LJ_FR2*BCDUMP_F_FR2) return 0;

So it's erroring if the FR2 flag is not what's expecting it to be. Any ideas 
why? The dump file seems to have the exact same format regardless of the FR2 
flag... So I'm guessing FR2 requires something special in the emitted bytecode?

Petri


Other related posts: