root/lj_snap.h

/* [<][>][^][v][top][bottom][index][help] */

INCLUDED FROM


DEFINITIONS

This source file includes following definitions.
  1. lj_snap_grow_buf
  2. lj_snap_grow_map

   1 /*
   2 ** Snapshot handling.
   3 ** Copyright (C) 2005-2017 Mike Pall. See Copyright Notice in luajit.h
   4 */
   5 
   6 #ifndef _LJ_SNAP_H
   7 #define _LJ_SNAP_H
   8 
   9 #include "lj_obj.h"
  10 #include "lj_jit.h"
  11 
  12 #if LJ_HASJIT
  13 LJ_FUNC void lj_snap_add(jit_State *J);
  14 LJ_FUNC void lj_snap_purge(jit_State *J);
  15 LJ_FUNC void lj_snap_shrink(jit_State *J);
  16 LJ_FUNC IRIns *lj_snap_regspmap(GCtrace *T, SnapNo snapno, IRIns *ir);
  17 LJ_FUNC void lj_snap_replay(jit_State *J, GCtrace *T);
  18 LJ_FUNC const BCIns *lj_snap_restore(jit_State *J, void *exptr);
  19 LJ_FUNC void lj_snap_grow_buf_(jit_State *J, MSize need);
  20 LJ_FUNC void lj_snap_grow_map_(jit_State *J, MSize need);
  21 
  22 static LJ_AINLINE void lj_snap_grow_buf(jit_State *J, MSize need)
  23 {
  24   if (LJ_UNLIKELY(need > J->sizesnap)) lj_snap_grow_buf_(J, need);
  25 }
  26 
  27 static LJ_AINLINE void lj_snap_grow_map(jit_State *J, MSize need)
  28 {
  29   if (LJ_UNLIKELY(need > J->sizesnapmap)) lj_snap_grow_map_(J, need);
  30 }
  31 
  32 #endif
  33 
  34 #endif

/* [<][>][^][v][top][bottom][index][help] */