[Tarantool-patches] [PATCH luajit v3 3/7] vm: introduce VM states for Lua and fast functions

Igor Munkin imun at tarantool.org
Mon Dec 28 08:14:32 MSK 2020


Sergey,

Thanks for the fixes! LGTM.

On 28.12.20, Sergey Kaplun wrote:
> This patch introduces LJ_VMST_LFUNC and LJ_VMST_FFUNC VM states
> separated from LJ_VMST_INERP. New VM states allow to determine the
> context of Lua VM execution for x86 and x64 arches. Also, LJ_VMST_C is
> renamed to LJ_VMST_CFUNC for naming consistence with new VM states.
> 
> Also, this patch adjusts stack layout for x86 and x64 arches to save VM
> state for its consistency while stack unwinding when error is raised.
> 
> To group all traces into the one vmstate, a special
> macro LJ_VMST_TRACE equal to LJ_VMST__MAX is introduced.
> 
> Part of tarantool/tarantool#5442
> ---
> 
> Changes in v3:
>  * Adjusted vmstate saving.
>  * Fix Win X64.
>  * Fix typos in frame layout.
>  * Codestyle fixes.
> 
>  src/lj_frame.h     |  16 ++---
>  src/lj_obj.h       |  11 +++-
>  src/lj_profile.c   |   5 +-
>  src/luajit-gdb.py  |  14 +++--
>  src/vm_arm.dasc    |   6 +-
>  src/vm_arm64.dasc  |   6 +-
>  src/vm_mips.dasc   |   6 +-
>  src/vm_mips64.dasc |   6 +-
>  src/vm_ppc.dasc    |   6 +-
>  src/vm_x64.dasc    |  93 +++++++++++++++++++++--------
>  src/vm_x86.dasc    | 146 ++++++++++++++++++++++++++++++++-------------
>  11 files changed, 218 insertions(+), 97 deletions(-)
> 

<snipped>

> -- 
> 2.28.0
> 

-- 
Best regards,
IM


More information about the Tarantool-patches mailing list