From 4dca589af02ee20edfd797ca041ab8d2daf4caed Mon Sep 17 00:00:00 2001 From: Mike Pall Date: Tue, 15 Feb 2011 01:02:08 +0100 Subject: [PATCH] Add workaround for lj_meta_tset() newkey inconsistency. --- src/lj_record.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/src/lj_record.c b/src/lj_record.c index 26e87ab3..6517a1b7 100644 --- a/src/lj_record.c +++ b/src/lj_record.c @@ -1021,7 +1021,8 @@ TRef lj_record_idx(jit_State *J, RecordIndex *ix) xref = rec_idx_key(J, ix); xrefop = IR(tref_ref(xref))->o; loadop = xrefop == IR_AREF ? IR_ALOAD : IR_HLOAD; - oldv = ix->oldv; + /* NYI: workaround until lj_meta_tset() inconsistency is solved. */ + oldv = xrefop == IR_KKPTR ? (cTValue *)ir_kptr(IR(tref_ref(xref))) : ix->oldv; if (ix->val == 0) { /* Indexed load */ IRType t = itype2irt(oldv);