mirror of
https://github.com/php/php-src.git
synced 2026-04-28 18:53:33 +02:00
Merge branch 'PHP-8.0'
* PHP-8.0: Fixed incorrect invariant guard motion
This commit is contained in:
@@ -2197,7 +2197,8 @@ propagate_arg:
|
||||
ssa_var_info[phi->sources[0]].type = MAY_BE_GUARD | (t & t0);
|
||||
}
|
||||
if ((t1 & (MAY_BE_ANY|MAY_BE_UNDEF|MAY_BE_REF)) != (t & (MAY_BE_ANY|MAY_BE_UNDEF|MAY_BE_REF))) {
|
||||
if (is_checked_guard(tssa, ssa_opcodes, phi->sources[1], phi->ssa_var)) {
|
||||
if (((t & t1) & (MAY_BE_ANY|MAY_BE_UNDEF|MAY_BE_REF)) != 0
|
||||
&& is_checked_guard(tssa, ssa_opcodes, phi->sources[1], phi->ssa_var)) {
|
||||
ssa_var_info[phi->sources[1]].type = MAY_BE_GUARD | (t & t1);
|
||||
ssa_var_info[phi->ssa_var].type = t & ~MAY_BE_GUARD;
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user