aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorMike Pall <mike>2026-07-25 20:55:26 +0200
committerMike Pall <mike>2026-07-25 20:55:26 +0200
commita471ab78c7b670b4f92dae111fc3c96fb824c768 (patch)
treedf0f69b65f701d2e32a1564597dfba6e57a2dd74 /src
parent346ab587cb235b4ef0b5777b4cd29009808d0cc0 (diff)
parente4d805163f0942693ae15fee3e3a8bdd9a08554b (diff)
downloadluajit-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.c2
-rw-r--r--src/lj_opt_fold.c4
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}