aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMike Pall <mike>2013-04-28 11:31:41 +0200
committerMike Pall <mike>2013-04-28 11:31:41 +0200
commit87993a601d2ebce6597180040d2e97d74d6cdcc4 (patch)
tree3d6a63206fe3927a5cca5583757c59c70d7522ed
parent4ac25a9132b4a07402f0f4161397a4ebc88ca590 (diff)
downloadluajit-87993a601d2ebce6597180040d2e97d74d6cdcc4.tar.gz
luajit-87993a601d2ebce6597180040d2e97d74d6cdcc4.tar.bz2
luajit-87993a601d2ebce6597180040d2e97d74d6cdcc4.zip
Inhibit CSE for table.concat().
-rw-r--r--src/lj_opt_fold.c2
1 files changed, 2 insertions, 0 deletions
diff --git a/src/lj_opt_fold.c b/src/lj_opt_fold.c
index 94d5702f..d8b6e884 100644
--- a/src/lj_opt_fold.c
+++ b/src/lj_opt_fold.c
@@ -602,6 +602,8 @@ LJFOLDF(bufstr_kfold_cse)
602 ira->o == IR_CALLL || ira->o == IR_CARG); 602 ira->o == IR_CALLL || ira->o == IR_CARG);
603 if (ira->o == IR_BUFHDR && !(ira->op2 & IRBUFHDR_APPEND)) 603 if (ira->o == IR_BUFHDR && !(ira->op2 & IRBUFHDR_APPEND))
604 return ref; /* CSE succeeded. */ 604 return ref; /* CSE succeeded. */
605 if (ira->o == IR_CALLL && ira->op2 == IRCALL_lj_buf_puttab)
606 break;
605 ira = IR(ira->op1); 607 ira = IR(ira->op1);
606 irb = IR(irb->op1); 608 irb = IR(irb->op1);
607 } 609 }