From 4e73488985be5e67d33ee8eb32cd62a62a6d21cc Mon Sep 17 00:00:00 2001 From: Mike Pall Date: Wed, 24 Feb 2010 20:02:20 +0100 Subject: [PATCH] Fix 64 bit conversion warnings. --- src/lib_jit.c | 2 +- src/lj_asm.c | 2 +- src/lj_record.c | 6 +++--- 3 files changed, 5 insertions(+), 5 deletions(-) diff --git a/src/lib_jit.c b/src/lib_jit.c index 34e5bd34..e64ea9e4 100644 --- a/src/lib_jit.c +++ b/src/lib_jit.c @@ -99,7 +99,7 @@ LJLIB_CF(jit_status) setboolV(L->top++, (J->flags & JIT_F_ON) ? 1 : 0); flagbits_to_strings(L, J->flags, JIT_F_CPU_FIRST, JIT_F_CPUSTRING); flagbits_to_strings(L, J->flags, JIT_F_OPT_FIRST, JIT_F_OPTSTRING); - return L->top - L->base; + return (int)(L->top - L->base); #else setboolV(L->top++, 0); return 1; diff --git a/src/lj_asm.c b/src/lj_asm.c index 24467dbc..0b6ebc09 100644 --- a/src/lj_asm.c +++ b/src/lj_asm.c @@ -1047,7 +1047,7 @@ static void asm_guardcc(ASMState *as, int cc) MCode *p = as->mcp; if (LJ_UNLIKELY(p == as->invmcp)) { as->loopinv = 1; - *(int32_t *)(p+1) = target - (p+5); + *(int32_t *)(p+1) = jmprel(p+5, target); target = p; cc ^= 1; if (as->realign) { diff --git a/src/lj_record.c b/src/lj_record.c index 3f2abcdf..da9c221c 100644 --- a/src/lj_record.c +++ b/src/lj_record.c @@ -497,7 +497,7 @@ static void rec_call_setup(jit_State *J, BCReg func, ptrdiff_t nargs) trfunc = lj_ir_kfunc(J, funcV(functv)); emitir(IRTG(IR_EQ, IRT_FUNC), fbase[0], trfunc); fbase[0] = trfunc | TREF_FRAME; - J->maxslot = nargs; + J->maxslot = (BCReg)nargs; } /* Record call. */ @@ -1568,12 +1568,12 @@ static void LJ_FASTCALL recff_string_range(jit_State *J, RecordFFData *rd) ptrdiff_t i, len = end - start; if (len > 0) { TRef trslen = emitir(IRTI(IR_SUB), trend, trstart); - emitir(IRTGI(IR_EQ), trslen, lj_ir_kint(J, len)); + emitir(IRTGI(IR_EQ), trslen, lj_ir_kint(J, (int32_t)len)); if (J->baseslot + len > LJ_MAX_JSLOTS) lj_trace_err_info(J, LJ_TRERR_STACKOV); rd->nres = len; for (i = 0; i < len; i++) { - TRef tmp = emitir(IRTI(IR_ADD), trstart, lj_ir_kint(J, i)); + TRef tmp = emitir(IRTI(IR_ADD), trstart, lj_ir_kint(J, (int32_t)i)); tmp = emitir(IRT(IR_STRREF, IRT_PTR), trstr, tmp); J->base[i] = emitir(IRT(IR_XLOAD, IRT_U8), tmp, IRXLOAD_READONLY); } -- 2.11.4.GIT