[php-src] master: Merge branch 'PHP-8.4' into PHP-8.5
| From: | Weilin Du | Date: | Sat, 24 Oct 2026 17:54:01 +0000 |
| Subject: | [php-src] master: Merge branch 'PHP-8.4' into PHP-8.5 | ||
| Groups: | php.cvs | ||
| Request: | Send a blank email to php-cvs+get-142691@lists.php.net to get a copy of this message | ||
Author: Weilin Du (LamentXU123)
Date: 2026-10-25T01:50:36+08:00
Commit: https://github.com/php/php-src/commit/102a693de2c596f805eb0c86a34e5b9d96bcd803
Raw diff: https://github.com/php/php-src/commit/102a693de2c596f805eb0c86a34e5b9d96bcd803.diff
Merge branch 'PHP-8.4' into PHP-8.5
* PHP-8.4:
JIT: Fix operand type check in zend_redo_pass_two_ex() (#24658)
Changed paths:
M Zend/Optimizer/zend_optimizer.c
Diff:
diff --git a/Zend/Optimizer/zend_optimizer.c b/Zend/Optimizer/zend_optimizer.c
index b5de66331460..5fd851ab153b 100644
--- a/Zend/Optimizer/zend_optimizer.c
+++ b/Zend/Optimizer/zend_optimizer.c
@@ -1339,7 +1339,7 @@ static void zend_redo_pass_two_ex(zend_op_array *op_array, zend_ssa *ssa)
while (opline < end) {
zend_ssa_op *ssa_op = &ssa->ops[opline - op_array->opcodes];
uint32_t op1_info = opline->op1_type == IS_UNUSED ? 0 : (OP1_INFO() &
(MAY_BE_UNDEF|MAY_BE_ANY|MAY_BE_REF|MAY_BE_ARRAY_OF_ANY|MAY_BE_ARRAY_KEY_ANY));
- uint32_t op2_info = opline->op1_type == IS_UNUSED ? 0 : (OP2_INFO() &
(MAY_BE_UNDEF|MAY_BE_ANY|MAY_BE_REF|MAY_BE_ARRAY_OF_ANY|MAY_BE_ARRAY_KEY_ANY));
+ uint32_t op2_info = opline->op2_type == IS_UNUSED ? 0 : (OP2_INFO() &
(MAY_BE_UNDEF|MAY_BE_ANY|MAY_BE_REF|MAY_BE_ARRAY_OF_ANY|MAY_BE_ARRAY_KEY_ANY));
uint32_t res_info =
(opline->opcode == ZEND_PRE_INC ||
opline->opcode == ZEND_PRE_DEC ||