gzdoom-gles/src/scripting/vm
Christoph Oelckers a9ec819557 - moved the type infomation entirely out of VMValue.
For the varargs functions that used the Type field to validate their parameters, now a hidden additional argument is passed which contains a byte array with the type info for the current call's arguments. Since this is static per call location it can be better prepared once when the code is being compiled instead of being put in a runtime created array for each invocation. Everything else uses the per-function instance of the same data.

The only thing that still needed the type field with a VMValue is the defaults array, so this uses a different struct type now to store its data.
2018-11-18 19:31:13 +01:00
..
jit.cpp - only allocate stack space for vmframe and call returns when we need them 2018-11-18 13:49:19 +01:00
jit.h - construct our own runtime as the one provided by asmjit is too primitive 2018-10-14 00:46:54 +02:00
jit_call.cpp - moved the type infomation entirely out of VMValue. 2018-11-18 19:31:13 +01:00
jit_flow.cpp - delay emitting PARAM and VTBL instructions until CALL/CALL_K 2018-11-18 12:38:55 +01:00
jit_load.cpp - add missing CheckVMFrame call 2018-11-18 14:02:39 +01:00
jit_math.cpp - stop using lambda functions for CreateCall because MSVC lambas use a different calling convention and "converts" them to the right one by generating a thunk function 2018-11-17 05:12:47 +01:00
jit_move.cpp - stop using lambda functions for CreateCall because MSVC lambas use a different calling convention and "converts" them to the right one by generating a thunk function 2018-11-17 05:12:47 +01:00
jit_store.cpp - fix missing convert from float to double in LSP and LSP_R opcodes 2018-10-11 03:53:11 +02:00
jitintern.h - only allocate stack space for vmframe and call returns when we need them 2018-11-18 13:49:19 +01:00
vm.h - moved the type infomation entirely out of VMValue. 2018-11-18 19:31:13 +01:00
vmexec.cpp - moved the type infomation entirely out of VMValue. 2018-11-18 19:31:13 +01:00
vmexec.h - moved the type infomation entirely out of VMValue. 2018-11-18 19:31:13 +01:00
vmframe.cpp - moved the type infomation entirely out of VMValue. 2018-11-18 19:31:13 +01:00
vmintern.h Merge remote-tracking branch 'origin/master' into asmjit 2018-10-14 22:55:57 +02:00
vmops.h - removed OP_TAIL. 2018-11-18 07:43:03 +01:00