소스 검색

FFI: Fix recording of casts from 32 bit pointers to integers.

Mike Pall 14 년 전
부모
커밋
865ec114a7
1개의 변경된 파일1개의 추가작업 그리고 1개의 파일을 삭제
  1. 1 1
      src/lj_crecord.c

+ 1 - 1
src/lj_crecord.c

@@ -200,7 +200,7 @@ static TRef crec_ct_ct(jit_State *J, CType *d, CType *s, TRef dp, TRef sp,
 		    (sinfo & CTF_UNSIGNED) ? 0 : IRCONV_SEXT);
     else if (dsize < 8 && ssize == 8)  /* Truncate from 64 bit integer. */
       sp = emitconv(sp, dsize < 4 ? IRT_INT : dt, st, 0);
-    else if (ssize <= 4)
+    else if (st == IRT_INT)
       sp = lj_opt_narrow_toint(J, sp);
   xstore:
     if (dt == IRT_I64 || dt == IRT_U64) lj_needsplit(J);