瀏覽代碼

Inhibit DSE for implicit loads via calls.

Mike Pall 12 年之前
父節點
當前提交
f17b038828
共有 1 個文件被更改,包括 1 次插入1 次删除
  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;