Browse Source

Inhibit DSE for implicit loads via calls.

Mike Pall 12 years ago
parent
commit
f17b038828
1 changed files with 1 additions and 1 deletions
  1. 1 1
      src/lj_opt_mem.c

+ 1 - 1
src/lj_opt_mem.c

@@ -347,7 +347,7 @@ TRef LJ_FASTCALL lj_opt_dse_ahstore(jit_State *J)
 	IRIns *ir;
 	/* Check for any intervening guards (includes conflicting loads). */
 	for (ir = IR(J->cur.nins-1); ir > store; ir--)
-	  if (irt_isguard(ir->t))
+	  if (irt_isguard(ir->t) || ir->o == IR_CALLL)
 	    goto doemit;  /* No elimination possible. */
 	/* Remove redundant store from chain and replace with NOP. */
 	*refp = store->prev;