mirror of
https://github.com/LuaJIT/LuaJIT.git
synced 2025-02-07 23:24:09 +00:00
Merge branch 'master' into v2.1
This commit is contained in:
commit
10ddae75af
@ -89,12 +89,20 @@ typedef uint16_t HotCount;
|
|||||||
typedef struct GG_State {
|
typedef struct GG_State {
|
||||||
lua_State L; /* Main thread. */
|
lua_State L; /* Main thread. */
|
||||||
global_State g; /* Global state. */
|
global_State g; /* Global state. */
|
||||||
|
#if LJ_TARGET_ARM
|
||||||
|
/* Make g reachable via K12 encoded DISPATCH-relative addressing. */
|
||||||
|
uint8_t align1[(16-sizeof(global_State))&15];
|
||||||
|
#endif
|
||||||
#if LJ_TARGET_MIPS
|
#if LJ_TARGET_MIPS
|
||||||
ASMFunction got[LJ_GOT__MAX]; /* Global offset table. */
|
ASMFunction got[LJ_GOT__MAX]; /* Global offset table. */
|
||||||
#endif
|
#endif
|
||||||
#if LJ_HASJIT
|
#if LJ_HASJIT
|
||||||
jit_State J; /* JIT state. */
|
jit_State J; /* JIT state. */
|
||||||
HotCount hotcount[HOTCOUNT_SIZE]; /* Hot counters. */
|
HotCount hotcount[HOTCOUNT_SIZE]; /* Hot counters. */
|
||||||
|
#if LJ_TARGET_ARM
|
||||||
|
/* Ditto for J. */
|
||||||
|
uint8_t align2[(16-sizeof(jit_State)-sizeof(HotCount)*HOTCOUNT_SIZE)&15];
|
||||||
|
#endif
|
||||||
#endif
|
#endif
|
||||||
ASMFunction dispatch[GG_LEN_DISP]; /* Instruction dispatch tables. */
|
ASMFunction dispatch[GG_LEN_DISP]; /* Instruction dispatch tables. */
|
||||||
BCIns bcff[GG_NUM_ASMFF]; /* Bytecode for ASM fast functions. */
|
BCIns bcff[GG_NUM_ASMFF]; /* Bytecode for ASM fast functions. */
|
||||||
|
@ -503,11 +503,7 @@ typedef struct jit_State {
|
|||||||
BCLine prev_line; /* Previous line. */
|
BCLine prev_line; /* Previous line. */
|
||||||
int prof_mode; /* Profiling mode: 0, 'f', 'l'. */
|
int prof_mode; /* Profiling mode: 0, 'f', 'l'. */
|
||||||
#endif
|
#endif
|
||||||
}
|
} jit_State;
|
||||||
#if LJ_TARGET_ARM
|
|
||||||
LJ_ALIGN(16) /* For DISPATCH-relative addresses in assembler part. */
|
|
||||||
#endif
|
|
||||||
jit_State;
|
|
||||||
|
|
||||||
#ifdef LUA_USE_ASSERT
|
#ifdef LUA_USE_ASSERT
|
||||||
#define lj_assertJ(c, ...) lj_assertG_(J2G(J), (c), __VA_ARGS__)
|
#define lj_assertJ(c, ...) lj_assertG_(J2G(J), (c), __VA_ARGS__)
|
||||||
|
Loading…
Reference in New Issue
Block a user