mirror of
https://github.com/php/php-src.git
synced 2026-04-03 14:12:38 +02:00
Merge branch 'PHP-8.0' into PHP-8.1
* PHP-8.0: Move MAY_BE_REF check into COPY_SSA_OBJ_TYPE
This commit is contained in:
@@ -1793,7 +1793,7 @@ static uint32_t get_ssa_alias_types(zend_ssa_alias_kind alias) {
|
||||
|
||||
#define COPY_SSA_OBJ_TYPE(from_var, to_var) do { \
|
||||
if ((from_var) >= 0 && (ssa_var_info[(from_var)].type & MAY_BE_OBJECT) \
|
||||
&& ssa_var_info[(from_var)].ce) { \
|
||||
&& ssa_var_info[(from_var)].ce && !(ssa_var_info[(to_var)].type & MAY_BE_REF)) { \
|
||||
UPDATE_SSA_OBJ_TYPE(ssa_var_info[(from_var)].ce, \
|
||||
ssa_var_info[(from_var)].is_instanceof, (to_var)); \
|
||||
} else { \
|
||||
@@ -2783,11 +2783,7 @@ static zend_always_inline int _zend_update_type_info(
|
||||
tmp |= MAY_BE_DOUBLE;
|
||||
}
|
||||
UPDATE_SSA_TYPE(tmp, ssa_op->op1_def);
|
||||
if (tmp & MAY_BE_REF) {
|
||||
UPDATE_SSA_OBJ_TYPE(NULL, 0, ssa_op->op1_def);
|
||||
} else {
|
||||
COPY_SSA_OBJ_TYPE(ssa_op->op2_use, ssa_op->op1_def);
|
||||
}
|
||||
COPY_SSA_OBJ_TYPE(ssa_op->op2_use, ssa_op->op1_def);
|
||||
}
|
||||
if (ssa_op->result_def >= 0) {
|
||||
if (tmp & MAY_BE_REF) {
|
||||
|
||||
Reference in New Issue
Block a user