diff options
| author | Mike Pall <mike> | 2026-07-25 20:55:26 +0200 |
|---|---|---|
| committer | Mike Pall <mike> | 2026-07-25 20:55:26 +0200 |
| commit | a471ab78c7b670b4f92dae111fc3c96fb824c768 (patch) | |
| tree | df0f69b65f701d2e32a1564597dfba6e57a2dd74 /src | |
| parent | 346ab587cb235b4ef0b5777b4cd29009808d0cc0 (diff) | |
| parent | e4d805163f0942693ae15fee3e3a8bdd9a08554b (diff) | |
| download | luajit-a471ab78c7b670b4f92dae111fc3c96fb824c768.tar.gz luajit-a471ab78c7b670b4f92dae111fc3c96fb824c768.tar.bz2 luajit-a471ab78c7b670b4f92dae111fc3c96fb824c768.zip | |
Merge branch 'master' into v2.1
Diffstat (limited to 'src')
| -rw-r--r-- | src/lj_crecord.c | 2 | ||||
| -rw-r--r-- | src/lj_opt_fold.c | 4 |
2 files changed, 1 insertions, 5 deletions
diff --git a/src/lj_crecord.c b/src/lj_crecord.c index a8ea419a8..7899720e7 100644 --- a/src/lj_crecord.c +++ b/src/lj_crecord.c | |||
| @@ -1395,7 +1395,7 @@ static TRef crec_arith_int64(jit_State *J, TRef *sp, CType **s, MMS mm) | |||
| 1395 | sp[i] = emitconv(sp[i], dt, st, IRCONV_ANY); | 1395 | sp[i] = emitconv(sp[i], dt, st, IRCONV_ANY); |
| 1396 | else if (!(st == IRT_I64 || st == IRT_U64)) | 1396 | else if (!(st == IRT_I64 || st == IRT_U64)) |
| 1397 | sp[i] = emitconv(sp[i], dt, IRT_INT, | 1397 | sp[i] = emitconv(sp[i], dt, IRT_INT, |
| 1398 | (s[i]->info & CTF_UNSIGNED) ? 0 : IRCONV_SEXT); | 1398 | ((st - IRT_I8) & 1) ? 0 : IRCONV_SEXT); |
| 1399 | } | 1399 | } |
| 1400 | if (mm < MM_add) { | 1400 | if (mm < MM_add) { |
| 1401 | comp: | 1401 | comp: |
diff --git a/src/lj_opt_fold.c b/src/lj_opt_fold.c index cc2b9098c..092e2176e 100644 --- a/src/lj_opt_fold.c +++ b/src/lj_opt_fold.c | |||
| @@ -1144,14 +1144,10 @@ LJFOLDF(simplify_conv_i64_num) | |||
| 1144 | fins->op2 = ((IRT_I64<<5)|IRT_INT|IRCONV_SEXT); | 1144 | fins->op2 = ((IRT_I64<<5)|IRT_INT|IRCONV_SEXT); |
| 1145 | return RETRYFOLD; | 1145 | return RETRYFOLD; |
| 1146 | } else if ((fleft->op2 & IRCONV_SRCMASK) == IRT_U32) { | 1146 | } else if ((fleft->op2 & IRCONV_SRCMASK) == IRT_U32) { |
| 1147 | #if LJ_TARGET_X64 | ||
| 1148 | return fleft->op1; | ||
| 1149 | #else | ||
| 1150 | /* Reduce to a zero-extension. */ | 1147 | /* Reduce to a zero-extension. */ |
| 1151 | fins->op1 = fleft->op1; | 1148 | fins->op1 = fleft->op1; |
| 1152 | fins->op2 = (IRT_I64<<5)|IRT_U32; | 1149 | fins->op2 = (IRT_I64<<5)|IRT_U32; |
| 1153 | return RETRYFOLD; | 1150 | return RETRYFOLD; |
| 1154 | #endif | ||
| 1155 | } | 1151 | } |
| 1156 | return NEXTFOLD; | 1152 | return NEXTFOLD; |
| 1157 | } | 1153 | } |
