summaryrefslogtreecommitdiff
path: root/ext/opcache/jit/zend_jit_x86.dasc
diff options
context:
space:
mode:
Diffstat (limited to 'ext/opcache/jit/zend_jit_x86.dasc')
-rw-r--r--ext/opcache/jit/zend_jit_x86.dasc6
1 files changed, 6 insertions, 0 deletions
diff --git a/ext/opcache/jit/zend_jit_x86.dasc b/ext/opcache/jit/zend_jit_x86.dasc
index 41a0d2fe07..04243cf34a 100644
--- a/ext/opcache/jit/zend_jit_x86.dasc
+++ b/ext/opcache/jit/zend_jit_x86.dasc
@@ -5221,6 +5221,9 @@ static int zend_jit_concat_helper(dasm_State **Dst,
| add r4, 12
|.endif
}
+ /* concatination with empty string may increase refcount */
+ op1_info |= MAY_BE_RCN;
+ op2_info |= MAY_BE_RCN;
| FREE_OP op1_type, op1, op1_info, 0, opline
| FREE_OP op2_type, op2, op2_info, 0, opline
|5:
@@ -5247,6 +5250,9 @@ static int zend_jit_concat_helper(dasm_State **Dst,
|.if not(X64)
| add r4, 12
|.endif
+ /* concatination with empty string may increase refcount */
+ op1_info |= MAY_BE_RCN;
+ op2_info |= MAY_BE_RCN;
| FREE_OP op1_type, op1, op1_info, 0, opline
| FREE_OP op2_type, op2, op2_info, 0, opline
if (may_throw) {