From: Mike Pall Date: Sun, 16 Jan 2022 20:00:24 +0000 (+0100) Subject: Prevent replay of buffer operation for PHI operands. X-Git-Tag: v2.1.ROLLING~98 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=1dddc55ca39f22f35b315e448fe1b79a57ad0cd4;p=thirdparty%2FLuaJIT.git Prevent replay of buffer operation for PHI operands. Contributed by XmiliaH. --- diff --git a/src/lj_opt_fold.c b/src/lj_opt_fold.c index e3fe8bbf..0c5a4a6a 100644 --- a/src/lj_opt_fold.c +++ b/src/lj_opt_fold.c @@ -605,7 +605,7 @@ LJFOLDF(bufput_bufstr) return ref; } /* Replay puts to global temporary buffer. */ - if (IR(hdr)->op2 == IRBUFHDR_RESET) { + if (IR(hdr)->op2 == IRBUFHDR_RESET && !irt_isphi(fright->t)) { IRIns *ir = IR(fright->op1); /* For now only handle single string.reverse .lower .upper .rep. */ if (ir->o == IR_CALLL &&