diff options
author | Mike Pall <mike> | 2013-04-09 11:50:33 +0200 |
---|---|---|
committer | Mike Pall <mike> | 2013-04-09 11:50:33 +0200 |
commit | f17b0388280057aaac2466b9c68ad0ed250eced8 (patch) | |
tree | 3cfd8801f7c24898865196c110acfc6da18968c0 | |
parent | b5bbacdc17815bbf1c6353322a7eb85cd3994399 (diff) | |
download | luajit-f17b0388280057aaac2466b9c68ad0ed250eced8.tar.gz luajit-f17b0388280057aaac2466b9c68ad0ed250eced8.tar.bz2 luajit-f17b0388280057aaac2466b9c68ad0ed250eced8.zip |
Inhibit DSE for implicit loads via calls.
-rw-r--r-- | src/lj_opt_mem.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/src/lj_opt_mem.c b/src/lj_opt_mem.c index bf77666b..98974ce3 100644 --- a/src/lj_opt_mem.c +++ b/src/lj_opt_mem.c | |||
@@ -347,7 +347,7 @@ TRef LJ_FASTCALL lj_opt_dse_ahstore(jit_State *J) | |||
347 | IRIns *ir; | 347 | IRIns *ir; |
348 | /* Check for any intervening guards (includes conflicting loads). */ | 348 | /* Check for any intervening guards (includes conflicting loads). */ |
349 | for (ir = IR(J->cur.nins-1); ir > store; ir--) | 349 | for (ir = IR(J->cur.nins-1); ir > store; ir--) |
350 | if (irt_isguard(ir->t)) | 350 | if (irt_isguard(ir->t) || ir->o == IR_CALLL) |
351 | goto doemit; /* No elimination possible. */ | 351 | goto doemit; /* No elimination possible. */ |
352 | /* Remove redundant store from chain and replace with NOP. */ | 352 | /* Remove redundant store from chain and replace with NOP. */ |
353 | *refp = store->prev; | 353 | *refp = store->prev; |