diff --git a/src/lj_crecord.c b/src/lj_crecord.c index 1df6c70c..9a317891 100644 --- a/src/lj_crecord.c +++ b/src/lj_crecord.c @@ -372,7 +372,7 @@ void LJ_FASTCALL recff_cdata_index(jit_State *J, RecordFFData *rd) idx = emitir(IRT(IR_TOINT, IRT_INTP), idx, IRTOINT_ANY); #endif if (ctype_ispointer(ct->info)) { - ptrdiff_t sz = (ptrdiff_t)lj_ctype_size(cts, (sid = ctype_cid(ct->info))); + CTSize sz = lj_ctype_size(cts, (sid = ctype_cid(ct->info))); idx = crec_reassoc_ofs(J, idx, &ofs, sz); idx = emitir(IRT(IR_MUL, IRT_INTP), idx, lj_ir_kintp(J, sz)); ptr = emitir(IRT(IR_ADD, IRT_PTR), idx, ptr); diff --git a/src/lj_opt_mem.c b/src/lj_opt_mem.c index 3ed3c7ee..5aa5d8b9 100644 --- a/src/lj_opt_mem.c +++ b/src/lj_opt_mem.c @@ -40,7 +40,7 @@ typedef enum { /* Simplified escape analysis: check for intervening stores. */ static AliasRet aa_escape(jit_State *J, IRIns *ir, IRIns *stop) { - IRRef ref = ir - J->cur.ir; /* The reference that might be stored. */ + IRRef ref = (IRRef)(ir - J->cur.ir); /* The ref that might be stored. */ for (ir++; ir < stop; ir++) if (ir->op2 == ref && (ir->o == IR_ASTORE || ir->o == IR_HSTORE ||