[Date Prev][Date Next][Thread Prev][Thread Next]
- Subject: Re: bug report
- From: Doug Currie <doug.currie@...>
- Date: Fri, 14 Jul 2006 10:32:59 -0400
Please disregard my message below... I was in a rush and had the wrong
model in my head! Sorry.
Friday, July 14, 2006, 10:27:22 AM, Doug Currie wrote:
> Friday, July 14, 2006, 12:15:07 AM, Peter Loveday wrote:
>> Rather than requiring a larger instruction word (and be incompatible with
>> any libraries that contain 'compiled' code rather than text), I have added
>> an OP_PRELOADK, which loads a prefix number for the high-bits of the
>> constant index. This is only used if the constant table reference would
>> exceed the Bx field size. Then the OP_LOADK will use this prefix value
>> shifted up by SIZE_Bx, or'ed with its normal constant index.
> Instead, why not add OP_POSTLOADK that modifies (e.g., ORs) the
> value initialized by OP_LOADK with some additional bits. Then you
> wouldn't need a "prefix number" variable.
>> I have added a varable to the lua_state to keep this prefix between opcodes,
>> but I am a little concerned about the non-atomicity of this. While its
>> always the case that an OP_PRELOADK will be followed by an OP_LOADK, if
>> somehow (maybe with a hook), execution were yielded in-between my
>> OP_PRELOADK and the OP_LOADK instructions, could this cause an issue? or is
>> the lua_state not shared between co-routines?
> Without the "prefix number" variable there would be no problem.