mirror of
https://github.com/LuaJIT/LuaJIT.git
synced 2025-02-07 15:14:08 +00:00
Merge branch 'master' into v2.1
This commit is contained in:
commit
b3369f3c95
@ -126,11 +126,6 @@ static IRType crec_ct2irt(CTState *cts, CType *ct)
|
||||
#define CREC_COPY_MAXLEN 128
|
||||
|
||||
#define CREC_FILL_MAXUNROLL 16
|
||||
#if LJ_TARGET_UNALIGNED
|
||||
#define CREC_FILL_MAXLEN (CTSIZE_PTR * CREC_FILL_MAXUNROLL)
|
||||
#else
|
||||
#define CREC_FILL_MAXLEN CREC_FILL_MAXUNROLL
|
||||
#endif
|
||||
|
||||
/* Number of windowed registers used for optimized memory copy. */
|
||||
#if LJ_TARGET_X86
|
||||
@ -321,9 +316,9 @@ static void crec_fill(jit_State *J, TRef trdst, TRef trlen, TRef trfill,
|
||||
MSize mlp;
|
||||
CTSize len = (CTSize)IR(tref_ref(trlen))->i;
|
||||
if (len == 0) return; /* Shortcut. */
|
||||
if (len > CREC_FILL_MAXLEN) goto fallback;
|
||||
if (LJ_TARGET_UNALIGNED || step >= CTSIZE_PTR)
|
||||
step = CTSIZE_PTR;
|
||||
if (step * CREC_FILL_MAXUNROLL < len) goto fallback;
|
||||
mlp = crec_fill_unroll(ml, len, step);
|
||||
if (!mlp) goto fallback;
|
||||
if (tref_isk(trfill) || ml[0].tp != IRT_U8)
|
||||
|
@ -564,6 +564,8 @@ void lj_snap_replay(jit_State *J, GCtrace *T)
|
||||
continue;
|
||||
}
|
||||
tmp = emitir(irs->ot, tmp, val);
|
||||
} else if (LJ_HASFFI && irs->o == IR_XBAR && ir->o == IR_CNEW) {
|
||||
emitir(IRT(IR_XBAR, IRT_NIL), 0, 0);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user