if (opline->opcode == ZEND_ASSIGN || opline->opcode == ZEND_UNSET_CV) {
return ssa_op->op1_use == var && ssa_op->op2_use != var;
}
- if (opline->opcode == ZEND_FE_FETCH_R) {
+ // TODO: Reenable this after changing the SSA structure.
+ /*if (opline->opcode == ZEND_FE_FETCH_R) {
return ssa_op->op2_use == var && ssa_op->op1_use != var;
- }
+ }*/
+ if (ssa_op->result_use == var
+ && opline->opcode != ZEND_ADD_ARRAY_ELEMENT
+ && opline->opcode != ZEND_ADD_ARRAY_UNPACK) {
++ }
+ if (ssa_op->result_use == var && opline->opcode != ZEND_ADD_ARRAY_ELEMENT) {
return ssa_op->op1_use != var && ssa_op->op2_use != var;
}
return 0;