aboutsummaryrefslogtreecommitdiff
path: root/src/lj_record.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/lj_record.c')
-rw-r--r--src/lj_record.c6
1 files changed, 6 insertions, 0 deletions
diff --git a/src/lj_record.c b/src/lj_record.c
index f0481050..3c67e1a0 100644
--- a/src/lj_record.c
+++ b/src/lj_record.c
@@ -976,7 +976,13 @@ int lj_record_mm_lookup(jit_State *J, RecordIndex *ix, MMS mm)
976 } 976 }
977 /* The cdata metatable is treated as immutable. */ 977 /* The cdata metatable is treated as immutable. */
978 if (LJ_HASFFI && tref_iscdata(ix->tab)) goto immutable_mt; 978 if (LJ_HASFFI && tref_iscdata(ix->tab)) goto immutable_mt;
979#if LJ_GC64
980 /* TODO: fix ARM32 asm_fload(), so we can use this for all archs. */
981 ix->mt = mix.tab = lj_ir_ggfload(J, IRT_TAB,
982 GG_OFS(g.gcroot[GCROOT_BASEMT+itypemap(&ix->tabv)]));
983#else
979 ix->mt = mix.tab = lj_ir_ktab(J, mt); 984 ix->mt = mix.tab = lj_ir_ktab(J, mt);
985#endif
980 goto nocheck; 986 goto nocheck;
981 } 987 }
982 ix->mt = mt ? mix.tab : TREF_NIL; 988 ix->mt = mt ? mix.tab : TREF_NIL;