Sha256: a1711260c174bdf1a53705ed54420736715ab877b1cf37f07ad7f76d58179d94

Contents?: true

Size: 1.54 KB

Versions: 24

Compression:

Stored size: 1.54 KB

Contents

/*
** Trace management.
** Copyright (C) 2005-2015 Mike Pall. See Copyright Notice in luajit.h
*/

#ifndef _LJ_TRACE_H
#define _LJ_TRACE_H

#include "lj_obj.h"

#if LJ_HASJIT
#include "lj_jit.h"
#include "lj_dispatch.h"

/* Trace errors. */
typedef enum {
#define TREDEF(name, msg)	LJ_TRERR_##name,
#include "lj_traceerr.h"
  LJ_TRERR__MAX
} TraceError;

LJ_FUNC_NORET void lj_trace_err(jit_State *J, TraceError e);
LJ_FUNC_NORET void lj_trace_err_info(jit_State *J, TraceError e);

/* Trace management. */
LJ_FUNC void LJ_FASTCALL lj_trace_free(global_State *g, GCtrace *T);
LJ_FUNC void lj_trace_reenableproto(GCproto *pt);
LJ_FUNC void lj_trace_flushproto(global_State *g, GCproto *pt);
LJ_FUNC void lj_trace_flush(jit_State *J, TraceNo traceno);
LJ_FUNC int lj_trace_flushall(lua_State *L);
LJ_FUNC void lj_trace_initstate(global_State *g);
LJ_FUNC void lj_trace_freestate(global_State *g);

/* Event handling. */
LJ_FUNC void lj_trace_ins(jit_State *J, const BCIns *pc);
LJ_FUNCA void LJ_FASTCALL lj_trace_hot(jit_State *J, const BCIns *pc);
LJ_FUNCA void LJ_FASTCALL lj_trace_stitch(jit_State *J, const BCIns *pc);
LJ_FUNCA int LJ_FASTCALL lj_trace_exit(jit_State *J, void *exptr);

/* Signal asynchronous abort of trace or end of trace. */
#define lj_trace_abort(g)	(G2J(g)->state &= ~LJ_TRACE_ACTIVE)
#define lj_trace_end(J)		(J->state = LJ_TRACE_END)

#else

#define lj_trace_flushall(L)	(UNUSED(L), 0)
#define lj_trace_initstate(g)	UNUSED(g)
#define lj_trace_freestate(g)	UNUSED(g)
#define lj_trace_abort(g)	UNUSED(g)
#define lj_trace_end(J)		UNUSED(J)

#endif

#endif

Version data entries

24 entries across 24 versions & 1 rubygems

Version Path
immunio-1.1.2 lua-hooks/ext/luajit/src/lj_trace.h
immunio-1.1.1 lua-hooks/ext/luajit/src/lj_trace.h
immunio-1.1.0 lua-hooks/ext/luajit/src/lj_trace.h
immunio-1.0.22 lua-hooks/ext/luajit/src/lj_trace.h
immunio-1.0.19 lua-hooks/ext/luajit/src/lj_trace.h
immunio-1.0.17 lua-hooks/ext/luajit/src/lj_trace.h
immunio-1.0.15 lua-hooks/ext/luajit/src/lj_trace.h
immunio-1.0.14 lua-hooks/ext/luajit/src/lj_trace.h
immunio-1.0.13 lua-hooks/ext/luajit/src/lj_trace.h
immunio-1.0.12 lua-hooks/ext/luajit/src/lj_trace.h
immunio-1.0.11 lua-hooks/ext/luajit/src/lj_trace.h
immunio-1.0.10 lua-hooks/ext/luajit/src/lj_trace.h
immunio-1.0.9 lua-hooks/ext/luajit/src/lj_trace.h
immunio-1.0.8 lua-hooks/ext/luajit/src/lj_trace.h
immunio-1.0.7 lua-hooks/ext/luajit/src/lj_trace.h
immunio-1.0.6 lua-hooks/ext/luajit/src/lj_trace.h
immunio-1.0.5 lua-hooks/ext/luajit/src/lj_trace.h
immunio-1.0.4 lua-hooks/ext/luajit/src/lj_trace.h
immunio-1.0.3 lua-hooks/ext/luajit/src/lj_trace.h
immunio-1.0.2 lua-hooks/ext/luajit/src/lj_trace.h