aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorMike Pall <mike>2023-07-09 21:15:01 +0200
committerMike Pall <mike>2023-07-09 21:15:01 +0200
commit8fbd576fb9414a5fa70dfa6069733d3416a78269 (patch)
treea0bb22f109b7bdb155a98cbe02fa0dbe40efcbdf /src
parentbd55d3023fe0cb806d35eea10af1540ce805805f (diff)
downloadluajit-8fbd576fb9414a5fa70dfa6069733d3416a78269.tar.gz
luajit-8fbd576fb9414a5fa70dfa6069733d3416a78269.tar.bz2
luajit-8fbd576fb9414a5fa70dfa6069733d3416a78269.zip
ARM64: Fix assembly of HREFK.
Reported by caohongqing. #1026 Fix contributed by Peter Cawley.
Diffstat (limited to 'src')
-rw-r--r--src/lj_asm_arm64.h2
1 files changed, 1 insertions, 1 deletions
diff --git a/src/lj_asm_arm64.h b/src/lj_asm_arm64.h
index 805ea54b..95138fe9 100644
--- a/src/lj_asm_arm64.h
+++ b/src/lj_asm_arm64.h
@@ -909,7 +909,7 @@ static void asm_hrefk(ASMState *as, IRIns *ir)
909 IRIns *irkey = IR(kslot->op1); 909 IRIns *irkey = IR(kslot->op1);
910 int32_t ofs = (int32_t)(kslot->op2 * sizeof(Node)); 910 int32_t ofs = (int32_t)(kslot->op2 * sizeof(Node));
911 int32_t kofs = ofs + (int32_t)offsetof(Node, key); 911 int32_t kofs = ofs + (int32_t)offsetof(Node, key);
912 int bigofs = !emit_checkofs(A64I_LDRx, ofs); 912 int bigofs = !emit_checkofs(A64I_LDRx, kofs);
913 Reg dest = (ra_used(ir) || bigofs) ? ra_dest(as, ir, RSET_GPR) : RID_NONE; 913 Reg dest = (ra_used(ir) || bigofs) ? ra_dest(as, ir, RSET_GPR) : RID_NONE;
914 Reg node = ra_alloc1(as, ir->op1, RSET_GPR); 914 Reg node = ra_alloc1(as, ir->op1, RSET_GPR);
915 Reg key, idx = node; 915 Reg key, idx = node;