diff options
author | Mike Pall <mike> | 2013-04-22 22:37:22 +0200 |
---|---|---|
committer | Mike Pall <mike> | 2013-04-22 22:37:22 +0200 |
commit | 1ae3e5204b8cbd8b643a5a3ab747211be8fe6fba (patch) | |
tree | 224097ada9863e30de84f27db0b2c4f535b6cca9 | |
parent | a2c78810ca0162c06b3ae02b52d6b4c04a8d5be3 (diff) | |
download | luajit-1ae3e5204b8cbd8b643a5a3ab747211be8fe6fba.tar.gz luajit-1ae3e5204b8cbd8b643a5a3ab747211be8fe6fba.tar.bz2 luajit-1ae3e5204b8cbd8b643a5a3ab747211be8fe6fba.zip |
Fix PHI barrier in BUFPUT FOLD rule.
-rw-r--r-- | src/lj_opt_fold.c | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/src/lj_opt_fold.c b/src/lj_opt_fold.c index f35593f3..fc91a75e 100644 --- a/src/lj_opt_fold.c +++ b/src/lj_opt_fold.c | |||
@@ -547,8 +547,8 @@ LJFOLDF(bufput_kgc) | |||
547 | if (len2 == 0) { /* Empty string? */ | 547 | if (len2 == 0) { /* Empty string? */ |
548 | return LEFTFOLD; | 548 | return LEFTFOLD; |
549 | } else { | 549 | } else { |
550 | PHIBARRIER(fleft); | 550 | if (fleft->o == IR_BUFPUT && IR(fleft->op2)->o == IR_KGC && |
551 | if (fleft->o == IR_BUFPUT && IR(fleft->op2)->o == IR_KGC) { | 551 | !irt_isphi(fleft->t)) { |
552 | /* Join two constant string puts in a row. */ | 552 | /* Join two constant string puts in a row. */ |
553 | GCstr *s1 = ir_kstr(IR(fleft->op2)); | 553 | GCstr *s1 = ir_kstr(IR(fleft->op2)); |
554 | MSize len1 = s1->len; | 554 | MSize len1 = s1->len; |