On 16/06/15 05:42 PM, Brigham Toskin
wrote:
I'm assuming based on documentation/other thread, and also this: the
opcodes indicate "local x do x = function() end end" loads "nil"
into x, then changes x later, so LuaJIT can't just assume "x" is
constant/immutable so instead it uses an indirect jump when you call
x. with "local x = (function(...) return function() end end)(...)"
there's a call opcode but x doesn't get implicitly nil-ed before it.
--
Disclaimer: these emails are public and can be accessed from <TODO: get a non-DHCP IP and put it here>. If you do not agree with this, DO NOT REPLY.
|