diff options
-rw-r--r-- | src/lj_opt_mem.c | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/src/lj_opt_mem.c b/src/lj_opt_mem.c index 9f714056..f7833654 100644 --- a/src/lj_opt_mem.c +++ b/src/lj_opt_mem.c | |||
@@ -179,7 +179,8 @@ static TRef fwd_ahload(jit_State *J, IRRef xref) | |||
179 | } | 179 | } |
180 | ref = store->prev; | 180 | ref = store->prev; |
181 | } | 181 | } |
182 | lua_assert(ir->o != IR_TNEW || irt_isnil(fins->t)); | 182 | if (ir->o == IR_TNEW && !irt_isnil(fins->t)) |
183 | return 0; /* Type instability in loop-carried dependency. */ | ||
183 | if (irt_ispri(fins->t)) { | 184 | if (irt_ispri(fins->t)) { |
184 | return TREF_PRI(irt_type(fins->t)); | 185 | return TREF_PRI(irt_type(fins->t)); |
185 | } else if (irt_isnum(fins->t) || (LJ_DUALNUM && irt_isint(fins->t)) || | 186 | } else if (irt_isnum(fins->t) || (LJ_DUALNUM && irt_isint(fins->t)) || |