diff options
Diffstat (limited to 'src')
| -rw-r--r-- | src/lj_crecord.c | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/src/lj_crecord.c b/src/lj_crecord.c index b98bdbc6..55d76ca0 100644 --- a/src/lj_crecord.c +++ b/src/lj_crecord.c | |||
| @@ -454,6 +454,10 @@ static TRef crec_ct_ct(jit_State *J, CType *d, CType *s, TRef dp, TRef sp, | |||
| 454 | sinfo = CTINFO(CT_NUM, CTF_UNSIGNED); | 454 | sinfo = CTINFO(CT_NUM, CTF_UNSIGNED); |
| 455 | ssize = CTSIZE_PTR; | 455 | ssize = CTSIZE_PTR; |
| 456 | st = IRT_UINTP; | 456 | st = IRT_UINTP; |
| 457 | if (((dsize ^ ssize) & 8) == 0) { /* Must insert no-op type conversion. */ | ||
| 458 | sp = emitconv(sp, dsize < 4 ? IRT_INT : dt, IRT_PTR, 0); | ||
| 459 | goto xstore; | ||
| 460 | } | ||
| 457 | goto conv_I_I; | 461 | goto conv_I_I; |
| 458 | 462 | ||
| 459 | /* Destination is a floating-point number. */ | 463 | /* Destination is a floating-point number. */ |
