3 ms·
In JITted code? Nothing, it’s a pure tracing JIT so all calls are flattened. In the interpreter? We can always check the source[1], and it seems it implements i
by mananaysiempre 2y ago
In JITted code? Nothing, it’s a pure tracing JIT so all calls are flattened. In the interpreter? We can always check the source[1], and it seems it implements its own stack.
[1] https://repo.or.cz/luajit-2.0.git/blob/HEAD:/src/vm_x64.dasc https://repo.or.cz/luajit-2.0.git/blob/HEAD:/src/vm_x64.dasc: look for BC_CALL[2], then ins_call before that, then ins_callt just above it.
[2] see mirror of the old wiki for the semantics: https://chrisfls.github.io/luajit-wiki/Bytecode/#Calls-and-Vararg-Handling https://chrisfls.github.io/luajit-wiki/Bytecode/#Calls-and-V...