[Date Prev][Date Next][Thread Prev][Thread Next]
[Date Index]
[Thread Index]
- Subject: Re: "or" shortcut does not work - but why?
- From: Andreas Rozek <Rozek@...>
- Date: Mon, 18 Jun 2007 21:44:47 +0200
Some more infos:
I'm currently looking at
#define GETARG_C(i) (cast(int, ((i)>>POS_C) & MASK1(SIZE_C,0)))
the relevant elements have the following values:
- i = 16410 (0100 0000 0001 1010 binary)
- POS_C = 14
- SIZE_C = 9
- MASK1 = 0x1FF
The macro itself seems to be correct - but what about "i"? If
lvm.c wants l_isfalse(ra) != GETARG_C(i) (see below:
case OP_TEST: {
if (l_isfalse(ra) != GETARG_C(i))
dojump(L, pc, GETARG_sBx(*pc));
pc++;
continue;
}
) the first "1" in "i" should better be 0!?
Unfortunately, I have no knowledge of Lua opcodes at all, and
thus I could be completely wrong...
Kind regards,
Andreas Rozek Phone: ++49 (7031) 436 5784
Brunnenstraße 30/2 Mobile: ++49 (151) 172 879 18
D-71032 Böblingen EMail: Andreas.Rozek@gmx.de
Germany URL: http://www.Andreas-Rozek.de