lj_ffrecord.h 637 B

123456789101112131415161718192021222324
  1. /*
  2. ** Fast function call recorder.
  3. ** Copyright (C) 2005-2014 Mike Pall. See Copyright Notice in luajit.h
  4. */
  5. #ifndef _LJ_FFRECORD_H
  6. #define _LJ_FFRECORD_H
  7. #include "lj_obj.h"
  8. #include "lj_jit.h"
  9. #if LJ_HASJIT
  10. /* Data used by handlers to record a fast function. */
  11. typedef struct RecordFFData {
  12. TValue *argv; /* Runtime argument values. */
  13. ptrdiff_t nres; /* Number of returned results (defaults to 1). */
  14. uint32_t data; /* Per-ffid auxiliary data (opcode, literal etc.). */
  15. } RecordFFData;
  16. LJ_FUNC int32_t lj_ffrecord_select_mode(jit_State *J, TRef tr, TValue *tv);
  17. LJ_FUNC void lj_ffrecord_func(jit_State *J);
  18. #endif
  19. #endif