if (op1_info & (MAY_BE_ANY-(MAY_BE_NULL|MAY_BE_FALSE|MAY_BE_ARRAY))) {
| SAVE_VALID_OPLINE opline, r0
- if (Z_REG(op1_addr) != ZREG_FCARG1a) {
+ if (Z_REG(op1_addr) != ZREG_FCARG1a || Z_OFFSET(op1_addr) != 0) {
| LOAD_ZVAL_ADDR FCARG1a, op1_addr
}
if (opline->op2_type == IS_UNUSED) {
}
| SAVE_VALID_OPLINE opline, r0
- if (Z_REG(op1_addr) != ZREG_FCARG1a) {
+ if (Z_REG(op1_addr) != ZREG_FCARG1a || Z_OFFSET(op1_addr) != 0) {
| LOAD_ZVAL_ADDR FCARG1a, op1_addr
}
if (opline->op2_type == IS_UNUSED) {
|.cold_code
|2:
}
- if (Z_REG(op1_addr) != ZREG_FCARG1a) {
+ if (Z_REG(op1_addr) != ZREG_FCARG1a || Z_OFFSET(op1_addr) != 0) {
| LOAD_ZVAL_ADDR FCARG1a, op1_addr
}
| SAVE_VALID_OPLINE opline, r0
}
}
| SAVE_VALID_OPLINE opline, r0
- if (Z_REG(op1_addr) != ZREG_FCARG1a) {
+ if (Z_REG(op1_addr) != ZREG_FCARG1a || Z_OFFSET(op1_addr) != 0) {
| LOAD_ZVAL_ADDR FCARG1a, op1_addr
}
| LOAD_ZVAL_ADDR FCARG2a, op2_addr
}
}
| SAVE_VALID_OPLINE opline, r0
- if (Z_REG(op1_addr) != ZREG_FCARG1a) {
+ if (Z_REG(op1_addr) != ZREG_FCARG1a || Z_OFFSET(op1_addr) != 0) {
| LOAD_ZVAL_ADDR FCARG1a, op1_addr
}
if (opline->op2_type == IS_CONST && Z_EXTRA_P(RT_CONSTANT(opline, opline->op2)) == ZEND_EXTRA_VALUE) {
if (op1_info & (MAY_BE_STRING|MAY_BE_OBJECT)) {
| SAVE_VALID_OPLINE opline, r0
- if (Z_REG(op1_addr) != ZREG_FCARG1a) {
+ if (Z_REG(op1_addr) != ZREG_FCARG1a || Z_OFFSET(op1_addr) != 0) {
| LOAD_ZVAL_ADDR FCARG1a, op1_addr
}
if (opline->op2_type == IS_CONST && Z_EXTRA_P(RT_CONSTANT(opline, opline->op2)) == ZEND_EXTRA_VALUE) {