diff options
Diffstat (limited to 'src')
| -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 cc177d39..c8265b4f 100644 --- a/src/lj_opt_mem.c +++ b/src/lj_opt_mem.c | |||
| @@ -180,7 +180,8 @@ static TRef fwd_ahload(jit_State *J, IRRef xref) | |||
| 180 | } | 180 | } |
| 181 | ref = store->prev; | 181 | ref = store->prev; |
| 182 | } | 182 | } |
| 183 | lua_assert(ir->o != IR_TNEW || irt_isnil(fins->t)); | 183 | if (ir->o == IR_TNEW && !irt_isnil(fins->t)) |
| 184 | return 0; /* Type instability in loop-carried dependency. */ | ||
| 184 | if (irt_ispri(fins->t)) { | 185 | if (irt_ispri(fins->t)) { |
| 185 | return TREF_PRI(irt_type(fins->t)); | 186 | return TREF_PRI(irt_type(fins->t)); |
| 186 | } else if (irt_isnum(fins->t) || (LJ_DUALNUM && irt_isint(fins->t)) || | 187 | } else if (irt_isnum(fins->t) || (LJ_DUALNUM && irt_isint(fins->t)) || |
