aboutsummaryrefslogtreecommitdiff
path: root/src/lj_jit.h
diff options
context:
space:
mode:
Diffstat (limited to 'src/lj_jit.h')
-rw-r--r--src/lj_jit.h12
1 files changed, 12 insertions, 0 deletions
diff --git a/src/lj_jit.h b/src/lj_jit.h
index a8be1a97..38970fc7 100644
--- a/src/lj_jit.h
+++ b/src/lj_jit.h
@@ -240,6 +240,15 @@ enum {
240#define LJ_KSIMD(J, n) \ 240#define LJ_KSIMD(J, n) \
241 ((TValue *)(((intptr_t)&J->ksimd[2*(n)] + 15) & ~(intptr_t)15)) 241 ((TValue *)(((intptr_t)&J->ksimd[2*(n)] + 15) & ~(intptr_t)15))
242 242
243/* Set/reset flag to activate the SPLIT pass for the current trace. */
244#if LJ_32 && LJ_HASFFI
245#define lj_needsplit(J) (J->needsplit = 1)
246#define lj_resetsplit(J) (J->needsplit = 0)
247#else
248#define lj_needsplit(J) UNUSED(J)
249#define lj_resetsplit(J) UNUSED(J)
250#endif
251
243/* Fold state is used to fold instructions on-the-fly. */ 252/* Fold state is used to fold instructions on-the-fly. */
244typedef struct FoldState { 253typedef struct FoldState {
245 IRIns ins; /* Currently emitted instruction. */ 254 IRIns ins; /* Currently emitted instruction. */
@@ -293,6 +302,9 @@ typedef struct jit_State {
293 MSize sizesnapmap; /* Size of temp. snapshot map buffer. */ 302 MSize sizesnapmap; /* Size of temp. snapshot map buffer. */
294 303
295 PostProc postproc; /* Required post-processing after execution. */ 304 PostProc postproc; /* Required post-processing after execution. */
305#if LJ_32 && LJ_HASFFI
306 int needsplit; /* Need SPLIT pass. */
307#endif
296 308
297 GCRef *trace; /* Array of traces. */ 309 GCRef *trace; /* Array of traces. */
298 TraceNo freetrace; /* Start of scan for next free trace. */ 310 TraceNo freetrace; /* Start of scan for next free trace. */