]> granicus.if.org Git - php/commitdiff
Optimization of INC/DEC helpers
authorDmitry Stogov <dmitry@zend.com>
Wed, 3 Jul 2019 07:33:03 +0000 (10:33 +0300)
committerDmitry Stogov <dmitry@zend.com>
Wed, 3 Jul 2019 07:33:03 +0000 (10:33 +0300)
Zend/zend_compile.h
Zend/zend_execute.c
Zend/zend_vm_def.h
Zend/zend_vm_execute.h
Zend/zend_vm_handlers.h
Zend/zend_vm_opcodes.c
Zend/zend_vm_opcodes.h

index 959c62b81538a4618e4730cfa73108387d88e5ea..0568f839e4d233215095974dc9aef49cd97403e8 100644 (file)
@@ -999,6 +999,9 @@ static zend_always_inline int zend_check_arg_send_type(const zend_function *zf,
 #define ZEND_SYMBOL_FUNCTION (1<<1)
 #define ZEND_SYMBOL_CONST    (1<<2)
 
+/* All increment opcodes are even (decrement are odd) */
+#define ZEND_IS_INCREMENT(opcode) (((opcode) & 1) == 0)
+
 /* Pseudo-opcodes that are used only temporarily during compilation */
 #define ZEND_PARENTHESIZED_CONCAT 252 /* removed with PHP 8 */
 #define ZEND_GOTO  253
index e10832fd5d3fa30c1be23715ab643e2de4c828e0..5c61ad81585de9bc71a4b921c36b39891c3a0ecd 100644 (file)
@@ -1623,33 +1623,48 @@ static zend_property_info *zend_get_prop_not_accepting_double(zend_reference *re
        return NULL;
 }
 
-static ZEND_COLD void zend_throw_incdec_ref_error(zend_reference *ref, zend_bool inc)
+static ZEND_COLD zend_long zend_throw_incdec_ref_error(zend_reference *ref OPLINE_DC)
 {
        zend_property_info *error_prop = zend_get_prop_not_accepting_double(ref);
        /* Currently there should be no way for a typed reference to accept both int and double.
         * Generalize this and the related property code once this becomes possible. */
        ZEND_ASSERT(error_prop);
-       zend_type_error(
-               "Cannot %s a reference held by property %s::$%s of type %sint past its %simal value",
-               inc ? "increment" : "decrement",
-               ZSTR_VAL(error_prop->ce->name),
-               zend_get_unmangled_property_name(error_prop->name),
-               ZEND_TYPE_ALLOW_NULL(error_prop->type) ? "?" : "",
-               inc ? "max" : "min");
+       if (ZEND_IS_INCREMENT(opline->opcode)) {
+               zend_type_error(
+                       "Cannot increment a reference held by property %s::$%s of type %sint past its maximal value",
+                       ZSTR_VAL(error_prop->ce->name),
+                       zend_get_unmangled_property_name(error_prop->name),
+                       ZEND_TYPE_ALLOW_NULL(error_prop->type) ? "?" : "");
+               return ZEND_LONG_MAX;
+       } else {
+               zend_type_error(
+                       "Cannot decrement a reference held by property %s::$%s of type %sint past its minimal value",
+                       ZSTR_VAL(error_prop->ce->name),
+                       zend_get_unmangled_property_name(error_prop->name),
+                       ZEND_TYPE_ALLOW_NULL(error_prop->type) ? "?" : "");
+               return ZEND_LONG_MIN;
+       }
 }
 
-static ZEND_COLD void zend_throw_incdec_prop_error(zend_property_info *prop, zend_bool inc) {
+static ZEND_COLD zend_long zend_throw_incdec_prop_error(zend_property_info *prop OPLINE_DC) {
        const char *prop_type1, *prop_type2;
        zend_format_type(prop->type, &prop_type1, &prop_type2);
-       zend_type_error("Cannot %s property %s::$%s of type %s%s past its %simal value",
-               inc ? "increment" : "decrement",
-               ZSTR_VAL(prop->ce->name),
-               zend_get_unmangled_property_name(prop->name),
-               prop_type1, prop_type2,
-               inc ? "max" : "min");
+       if (ZEND_IS_INCREMENT(opline->opcode)) {
+               zend_type_error("Cannot increment property %s::$%s of type %s%s past its maximal value",
+                       ZSTR_VAL(prop->ce->name),
+                       zend_get_unmangled_property_name(prop->name),
+                       prop_type1, prop_type2);
+               return ZEND_LONG_MAX;
+       } else {
+               zend_type_error("Cannot decrement property %s::$%s of type %s%s past its minimal value",
+                       ZSTR_VAL(prop->ce->name),
+                       zend_get_unmangled_property_name(prop->name),
+                       prop_type1, prop_type2);
+               return ZEND_LONG_MIN;
+       }
 }
 
-static void zend_incdec_typed_ref(zend_reference *ref, zval *copy, int inc EXECUTE_DATA_DC)
+static void zend_incdec_typed_ref(zend_reference *ref, zval *copy OPLINE_DC EXECUTE_DATA_DC)
 {
        zval tmp;
        zval *var_ptr = &ref->val;
@@ -1660,15 +1675,15 @@ static void zend_incdec_typed_ref(zend_reference *ref, zval *copy, int inc EXECU
 
        ZVAL_COPY(copy, var_ptr);
 
-       if (inc) {
+       if (ZEND_IS_INCREMENT(opline->opcode)) {
                increment_function(var_ptr);
        } else {
                decrement_function(var_ptr);
        }
 
        if (UNEXPECTED(Z_TYPE_P(var_ptr) == IS_DOUBLE) && Z_TYPE_P(copy) == IS_LONG) {
-               zend_throw_incdec_ref_error(ref, inc);
-               ZVAL_COPY_VALUE(var_ptr, copy);
+               zend_long val = zend_throw_incdec_ref_error(ref OPLINE_CC);
+               ZVAL_LONG(var_ptr, val);
        } else if (UNEXPECTED(!zend_verify_ref_assignable_zval(ref, var_ptr, EX_USES_STRICT_TYPES()))) {
                zval_ptr_dtor(var_ptr);
                ZVAL_COPY_VALUE(var_ptr, copy);
@@ -1678,7 +1693,7 @@ static void zend_incdec_typed_ref(zend_reference *ref, zval *copy, int inc EXECU
        }
 }
 
-static void zend_incdec_typed_prop(zend_property_info *prop_info, zval *var_ptr, zval *copy, int inc EXECUTE_DATA_DC)
+static void zend_incdec_typed_prop(zend_property_info *prop_info, zval *var_ptr, zval *copy OPLINE_DC EXECUTE_DATA_DC)
 {
        zval tmp;
 
@@ -1688,15 +1703,15 @@ static void zend_incdec_typed_prop(zend_property_info *prop_info, zval *var_ptr,
 
        ZVAL_COPY(copy, var_ptr);
 
-       if (inc) {
+       if (ZEND_IS_INCREMENT(opline->opcode)) {
                increment_function(var_ptr);
        } else {
                decrement_function(var_ptr);
        }
 
        if (UNEXPECTED(Z_TYPE_P(var_ptr) == IS_DOUBLE) && Z_TYPE_P(copy) == IS_LONG) {
-               zend_throw_incdec_prop_error(prop_info, inc);
-               ZVAL_COPY_VALUE(var_ptr, copy);
+               zend_long val = zend_throw_incdec_prop_error(prop_info OPLINE_CC);
+               ZVAL_LONG(var_ptr, val);
        } else if (UNEXPECTED(!zend_verify_property_type(prop_info, var_ptr, EX_USES_STRICT_TYPES()))) {
                zval_ptr_dtor(var_ptr);
                ZVAL_COPY_VALUE(var_ptr, copy);
@@ -1706,36 +1721,32 @@ static void zend_incdec_typed_prop(zend_property_info *prop_info, zval *var_ptr,
        }
 }
 
-static void zend_pre_incdec_property_zval(zval *prop, zend_property_info *prop_info, int inc OPLINE_DC EXECUTE_DATA_DC)
+static void zend_pre_incdec_property_zval(zval *prop, zend_property_info *prop_info OPLINE_DC EXECUTE_DATA_DC)
 {
        if (EXPECTED(Z_TYPE_P(prop) == IS_LONG)) {
-               if (inc) {
+               if (ZEND_IS_INCREMENT(opline->opcode)) {
                        fast_long_increment_function(prop);
                } else {
                        fast_long_decrement_function(prop);
                }
                if (UNEXPECTED(Z_TYPE_P(prop) != IS_LONG) && UNEXPECTED(prop_info)) {
-                       zend_throw_incdec_prop_error(prop_info, inc);
-                       if (inc) {
-                               ZVAL_LONG(prop, ZEND_LONG_MAX);
-                       } else {
-                               ZVAL_LONG(prop, ZEND_LONG_MIN);
-                       }
+                       zend_long val = zend_throw_incdec_prop_error(prop_info OPLINE_CC);
+                       ZVAL_LONG(prop, val);
                }
        } else {
                do {
                        if (Z_ISREF_P(prop)) {
                                zend_reference *ref = Z_REF_P(prop);
                                if (UNEXPECTED(ZEND_REF_HAS_TYPE_SOURCES(ref))) {
-                                       zend_incdec_typed_ref(ref, NULL, inc EXECUTE_DATA_CC);
+                                       zend_incdec_typed_ref(ref, NULL OPLINE_CC EXECUTE_DATA_CC);
                                        break;
                                }
                                prop = Z_REFVAL_P(prop);
                        }
 
                        if (UNEXPECTED(prop_info)) {
-                               zend_incdec_typed_prop(prop_info, prop, NULL, inc EXECUTE_DATA_CC);
-                       } else if (inc) {
+                               zend_incdec_typed_prop(prop_info, prop, NULL OPLINE_CC EXECUTE_DATA_CC);
+                       } else if (ZEND_IS_INCREMENT(opline->opcode)) {
                                increment_function(prop);
                        } else {
                                decrement_function(prop);
@@ -1747,38 +1758,34 @@ static void zend_pre_incdec_property_zval(zval *prop, zend_property_info *prop_i
        }
 }
 
-static void zend_post_incdec_property_zval(zval *prop, zend_property_info *prop_info, int inc OPLINE_DC EXECUTE_DATA_DC)
+static void zend_post_incdec_property_zval(zval *prop, zend_property_info *prop_info OPLINE_DC EXECUTE_DATA_DC)
 {
        if (EXPECTED(Z_TYPE_P(prop) == IS_LONG)) {
                ZVAL_LONG(EX_VAR(opline->result.var), Z_LVAL_P(prop));
-               if (inc) {
+               if (ZEND_IS_INCREMENT(opline->opcode)) {
                        fast_long_increment_function(prop);
                } else {
                        fast_long_decrement_function(prop);
                }
                if (UNEXPECTED(Z_TYPE_P(prop) != IS_LONG) && UNEXPECTED(prop_info)) {
-                       zend_throw_incdec_prop_error(prop_info, inc);
-                       if (inc) {
-                               ZVAL_LONG(prop, ZEND_LONG_MAX);
-                       } else {
-                               ZVAL_LONG(prop, ZEND_LONG_MIN);
-                       }
+                       zend_long val = zend_throw_incdec_prop_error(prop_info OPLINE_CC);
+                       ZVAL_LONG(prop, val);
                }
        } else {
                if (Z_ISREF_P(prop)) {
                        zend_reference *ref = Z_REF_P(prop);
                        if (ZEND_REF_HAS_TYPE_SOURCES(ref)) {
-                               zend_incdec_typed_ref(ref, EX_VAR(opline->result.var), inc EXECUTE_DATA_CC);
+                               zend_incdec_typed_ref(ref, EX_VAR(opline->result.var) OPLINE_CC EXECUTE_DATA_CC);
                                return;
                        }
                        prop = Z_REFVAL_P(prop);
                }
 
                if (UNEXPECTED(prop_info)) {
-                       zend_incdec_typed_prop(prop_info, prop, EX_VAR(opline->result.var), inc EXECUTE_DATA_CC);
+                       zend_incdec_typed_prop(prop_info, prop, EX_VAR(opline->result.var) OPLINE_CC EXECUTE_DATA_CC);
                } else {
                        ZVAL_COPY(EX_VAR(opline->result.var), prop);
-                       if (inc) {
+                       if (ZEND_IS_INCREMENT(opline->opcode)) {
                                increment_function(prop);
                        } else {
                                decrement_function(prop);
@@ -1787,7 +1794,7 @@ static void zend_post_incdec_property_zval(zval *prop, zend_property_info *prop_
        }
 }
 
-static zend_never_inline void zend_post_incdec_overloaded_property(zval *object, zval *property, void **cache_slot, int inc OPLINE_DC EXECUTE_DATA_DC)
+static zend_never_inline void zend_post_incdec_overloaded_property(zval *object, zval *property, void **cache_slot OPLINE_DC EXECUTE_DATA_DC)
 {
        zval rv, obj;
        zval *z;
@@ -1813,7 +1820,7 @@ static zend_never_inline void zend_post_incdec_overloaded_property(zval *object,
 
        ZVAL_COPY_DEREF(&z_copy, z);
        ZVAL_COPY(EX_VAR(opline->result.var), &z_copy);
-       if (inc) {
+       if (ZEND_IS_INCREMENT(opline->opcode)) {
                increment_function(&z_copy);
        } else {
                decrement_function(&z_copy);
@@ -1824,7 +1831,7 @@ static zend_never_inline void zend_post_incdec_overloaded_property(zval *object,
        zval_ptr_dtor(z);
 }
 
-static zend_never_inline void zend_pre_incdec_overloaded_property(zval *object, zval *property, void **cache_slot, int inc OPLINE_DC EXECUTE_DATA_DC)
+static zend_never_inline void zend_pre_incdec_overloaded_property(zval *object, zval *property, void **cache_slot OPLINE_DC EXECUTE_DATA_DC)
 {
        zval rv;
        zval *z, obj;
@@ -1851,7 +1858,7 @@ static zend_never_inline void zend_pre_incdec_overloaded_property(zval *object,
                ZVAL_COPY_VALUE(z, value);
        }
        ZVAL_COPY_DEREF(&z_copy, z);
-       if (inc) {
+       if (ZEND_IS_INCREMENT(opline->opcode)) {
                increment_function(&z_copy);
        } else {
                decrement_function(&z_copy);
index 8e5fb0ea2a569c4592574a9160562b993d670d5b..9cad9c15da3875270259a2567ac316ac50d96e3e 100644 (file)
@@ -1218,7 +1218,7 @@ ZEND_VM_HANDLER(167, ZEND_ASSIGN_POW, CONST|TMP|VAR|UNUSED|THIS|CV, CONST|TMPVAR
        ZEND_VM_DISPATCH_TO_HELPER(zend_binary_assign_op_helper, binary_op, pow_function);
 }
 
-ZEND_VM_HELPER(zend_pre_incdec_property_helper, VAR|UNUSED|CV, CONST|TMPVAR|CV, int inc)
+ZEND_VM_HELPER(zend_pre_incdec_property_helper, VAR|UNUSED|CV, CONST|TMPVAR|CV)
 {
        USE_OPLINE
        zend_free_op free_op1, free_op2;
@@ -1263,10 +1263,10 @@ ZEND_VM_C_LABEL(pre_incdec_object):
                                } else {
                                        prop_info = zend_object_fetch_property_type_info(Z_OBJ_P(object), zptr);
                                }
-                               zend_pre_incdec_property_zval(zptr, prop_info, inc OPLINE_CC EXECUTE_DATA_CC);
+                               zend_pre_incdec_property_zval(zptr, prop_info OPLINE_CC EXECUTE_DATA_CC);
                        }
                } else {
-                       zend_pre_incdec_overloaded_property(object, property, cache_slot, inc OPLINE_CC EXECUTE_DATA_CC);
+                       zend_pre_incdec_overloaded_property(object, property, cache_slot OPLINE_CC EXECUTE_DATA_CC);
                }
        } while (0);
 
@@ -1277,15 +1277,15 @@ ZEND_VM_C_LABEL(pre_incdec_object):
 
 ZEND_VM_HANDLER(132, ZEND_PRE_INC_OBJ, VAR|UNUSED|THIS|CV, CONST|TMPVAR|CV, CACHE_SLOT)
 {
-       ZEND_VM_DISPATCH_TO_HELPER(zend_pre_incdec_property_helper, inc, 1);
+       ZEND_VM_DISPATCH_TO_HELPER(zend_pre_incdec_property_helper);
 }
 
 ZEND_VM_HANDLER(133, ZEND_PRE_DEC_OBJ, VAR|UNUSED|THIS|CV, CONST|TMPVAR|CV, CACHE_SLOT)
 {
-       ZEND_VM_DISPATCH_TO_HELPER(zend_pre_incdec_property_helper, inc, 0);
+       ZEND_VM_DISPATCH_TO_HELPER(zend_pre_incdec_property_helper);
 }
 
-ZEND_VM_HELPER(zend_post_incdec_property_helper, VAR|UNUSED|CV, CONST|TMPVAR|CV, int inc)
+ZEND_VM_HELPER(zend_post_incdec_property_helper, VAR|UNUSED|CV, CONST|TMPVAR|CV)
 {
        USE_OPLINE
        zend_free_op free_op1, free_op2;
@@ -1329,10 +1329,10 @@ ZEND_VM_C_LABEL(post_incdec_object):
                                        prop_info = zend_object_fetch_property_type_info(Z_OBJ_P(object), zptr);
                                }
 
-                               zend_post_incdec_property_zval(zptr, prop_info, inc OPLINE_CC EXECUTE_DATA_CC);
+                               zend_post_incdec_property_zval(zptr, prop_info OPLINE_CC EXECUTE_DATA_CC);
                        }
                } else {
-                       zend_post_incdec_overloaded_property(object, property, cache_slot, inc OPLINE_CC EXECUTE_DATA_CC);
+                       zend_post_incdec_overloaded_property(object, property, cache_slot OPLINE_CC EXECUTE_DATA_CC);
                }
        } while (0);
 
@@ -1343,16 +1343,16 @@ ZEND_VM_C_LABEL(post_incdec_object):
 
 ZEND_VM_HANDLER(134, ZEND_POST_INC_OBJ, VAR|UNUSED|THIS|CV, CONST|TMPVAR|CV, CACHE_SLOT)
 {
-       ZEND_VM_DISPATCH_TO_HELPER(zend_post_incdec_property_helper, inc, 1);
+       ZEND_VM_DISPATCH_TO_HELPER(zend_post_incdec_property_helper);
 }
 
 ZEND_VM_HANDLER(135, ZEND_POST_DEC_OBJ, VAR|UNUSED|THIS|CV, CONST|TMPVAR|CV, CACHE_SLOT)
 {
-       ZEND_VM_DISPATCH_TO_HELPER(zend_post_incdec_property_helper, inc, 0);
+       ZEND_VM_DISPATCH_TO_HELPER(zend_post_incdec_property_helper);
 }
 
 /* No specialization for op_types (CONST|TMPVAR|CV, UNUSED|CONST|VAR) */
-ZEND_VM_HELPER(zend_pre_incdec_static_property_helper, ANY, ANY, int inc)
+ZEND_VM_HELPER(zend_pre_incdec_static_property_helper, ANY, ANY)
 {
        USE_OPLINE
        zval *prop;
@@ -1365,25 +1365,25 @@ ZEND_VM_HELPER(zend_pre_incdec_static_property_helper, ANY, ANY, int inc)
                HANDLE_EXCEPTION();
        }
 
-       zend_pre_incdec_property_zval(prop, prop_info->type ? prop_info : NULL, inc OPLINE_CC EXECUTE_DATA_CC);
+       zend_pre_incdec_property_zval(prop, prop_info->type ? prop_info : NULL OPLINE_CC EXECUTE_DATA_CC);
 
        ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION();
 }
 
 /* No specialization for op_types (CONST|TMPVAR|CV, UNUSED|CONST|VAR) */
-ZEND_VM_HANDLER(203, ZEND_PRE_INC_STATIC_PROP, ANY, ANY, CACHE_SLOT)
+ZEND_VM_HANDLER(200, ZEND_PRE_INC_STATIC_PROP, ANY, ANY, CACHE_SLOT)
 {
-       ZEND_VM_DISPATCH_TO_HELPER(zend_pre_incdec_static_property_helper, inc, 1);
+       ZEND_VM_DISPATCH_TO_HELPER(zend_pre_incdec_static_property_helper);
 }
 
 /* No specialization for op_types (CONST|TMPVAR|CV, UNUSED|CONST|VAR) */
-ZEND_VM_HANDLER(204, ZEND_PRE_DEC_STATIC_PROP, ANY, ANY, CACHE_SLOT)
+ZEND_VM_HANDLER(201, ZEND_PRE_DEC_STATIC_PROP, ANY, ANY, CACHE_SLOT)
 {
-       ZEND_VM_DISPATCH_TO_HELPER(zend_pre_incdec_static_property_helper, inc, 0);
+       ZEND_VM_DISPATCH_TO_HELPER(zend_pre_incdec_static_property_helper);
 }
 
 /* No specialization for op_types (CONST|TMPVAR|CV, UNUSED|CONST|VAR) */
-ZEND_VM_HELPER(zend_post_incdec_static_property_helper, ANY, ANY, int inc)
+ZEND_VM_HELPER(zend_post_incdec_static_property_helper, ANY, ANY)
 {
        USE_OPLINE
        zval *prop;
@@ -1396,21 +1396,21 @@ ZEND_VM_HELPER(zend_post_incdec_static_property_helper, ANY, ANY, int inc)
                HANDLE_EXCEPTION();
        }
 
-       zend_post_incdec_property_zval(prop, prop_info->type ? prop_info : NULL, inc OPLINE_CC EXECUTE_DATA_CC);
+       zend_post_incdec_property_zval(prop, prop_info->type ? prop_info : NULL OPLINE_CC EXECUTE_DATA_CC);
 
        ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION();
 }
 
 /* No specialization for op_types (CONST|TMPVAR|CV, UNUSED|CONST|VAR) */
-ZEND_VM_HANDLER(205, ZEND_POST_INC_STATIC_PROP, ANY, ANY, CACHE_SLOT)
+ZEND_VM_HANDLER(202, ZEND_POST_INC_STATIC_PROP, ANY, ANY, CACHE_SLOT)
 {
-       ZEND_VM_DISPATCH_TO_HELPER(zend_post_incdec_static_property_helper, inc, 1);
+       ZEND_VM_DISPATCH_TO_HELPER(zend_post_incdec_static_property_helper);
 }
 
 /* No specialization for op_types (CONST|TMPVAR|CV, UNUSED|CONST|VAR) */
-ZEND_VM_HANDLER(206, ZEND_POST_DEC_STATIC_PROP, ANY, ANY, CACHE_SLOT)
+ZEND_VM_HANDLER(203, ZEND_POST_DEC_STATIC_PROP, ANY, ANY, CACHE_SLOT)
 {
-       ZEND_VM_DISPATCH_TO_HELPER(zend_post_incdec_static_property_helper, inc, 0);
+       ZEND_VM_DISPATCH_TO_HELPER(zend_post_incdec_static_property_helper);
 }
 
 ZEND_VM_HANDLER(34, ZEND_PRE_INC, VAR|CV, ANY, SPEC(RETVAL))
@@ -1447,7 +1447,7 @@ ZEND_VM_HANDLER(34, ZEND_PRE_INC, VAR|CV, ANY, SPEC(RETVAL))
                        zend_reference *ref = Z_REF_P(var_ptr);
                        var_ptr = Z_REFVAL_P(var_ptr);
                        if (UNEXPECTED(ZEND_REF_HAS_TYPE_SOURCES(ref))) {
-                               zend_incdec_typed_ref(ref, NULL, 1 EXECUTE_DATA_CC);
+                               zend_incdec_typed_ref(ref, NULL OPLINE_CC EXECUTE_DATA_CC);
                                break;
                        }
                }
@@ -1497,7 +1497,7 @@ ZEND_VM_HANDLER(35, ZEND_PRE_DEC, VAR|CV, ANY, SPEC(RETVAL))
                        var_ptr = Z_REFVAL_P(var_ptr);
 
                        if (UNEXPECTED(ZEND_REF_HAS_TYPE_SOURCES(ref))) {
-                               zend_incdec_typed_ref(ref, NULL, 0 EXECUTE_DATA_CC);
+                               zend_incdec_typed_ref(ref, NULL OPLINE_CC EXECUTE_DATA_CC);
                                break;
                        }
                }
@@ -1543,7 +1543,7 @@ ZEND_VM_HANDLER(36, ZEND_POST_INC, VAR|CV, ANY)
                        var_ptr = Z_REFVAL_P(var_ptr);
 
                        if (UNEXPECTED(ZEND_REF_HAS_TYPE_SOURCES(ref))) {
-                               zend_incdec_typed_ref(ref, EX_VAR(opline->result.var), 1 EXECUTE_DATA_CC);
+                               zend_incdec_typed_ref(ref, EX_VAR(opline->result.var) OPLINE_CC EXECUTE_DATA_CC);
                                break;
                        }
                }
@@ -1587,7 +1587,7 @@ ZEND_VM_HANDLER(37, ZEND_POST_DEC, VAR|CV, ANY)
                        var_ptr = Z_REFVAL_P(var_ptr);
 
                        if (UNEXPECTED(ZEND_REF_HAS_TYPE_SOURCES(ref))) {
-                               zend_incdec_typed_ref(ref, EX_VAR(opline->result.var), 0 EXECUTE_DATA_CC);
+                               zend_incdec_typed_ref(ref, EX_VAR(opline->result.var) OPLINE_CC EXECUTE_DATA_CC);
                                break;
                        }
                }
@@ -2428,7 +2428,7 @@ ZEND_VM_C_LABEL(exit_assign_obj):
 }
 
 /* No specialization for op_types (CONST|TMPVAR|CV, UNUSED|CONST|VAR) */
-ZEND_VM_HANDLER(201, ZEND_ASSIGN_STATIC_PROP, ANY, ANY, CACHE_SLOT, SPEC(OP_DATA=CONST|TMP|VAR|CV))
+ZEND_VM_HANDLER(205, ZEND_ASSIGN_STATIC_PROP, ANY, ANY, CACHE_SLOT, SPEC(OP_DATA=CONST|TMP|VAR|CV))
 {
        USE_OPLINE
        zend_free_op free_op_data;
@@ -2645,7 +2645,7 @@ ZEND_VM_HANDLER(39, ZEND_ASSIGN_REF, VAR|CV, VAR|CV, SRC)
        ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION();
 }
 
-ZEND_VM_HANDLER(200, ZEND_ASSIGN_OBJ_REF, VAR|UNUSED|THIS|CV, CONST|TMPVAR|CV, CACHE_SLOT|SRC, SPEC(OP_DATA=VAR|CV))
+ZEND_VM_HANDLER(204, ZEND_ASSIGN_OBJ_REF, VAR|UNUSED|THIS|CV, CONST|TMPVAR|CV, CACHE_SLOT|SRC, SPEC(OP_DATA=VAR|CV))
 {
        USE_OPLINE
        zend_free_op free_op1, free_op2, free_op_data;
@@ -2688,7 +2688,7 @@ ZEND_VM_HANDLER(200, ZEND_ASSIGN_OBJ_REF, VAR|UNUSED|THIS|CV, CONST|TMPVAR|CV, C
 }
 
 /* No specialization for op_types (CONST|TMPVAR|CV, UNUSED|CONST|VAR) */
-ZEND_VM_HANDLER(202, ZEND_ASSIGN_STATIC_PROP_REF, ANY, ANY, CACHE_SLOT|SRC)
+ZEND_VM_HANDLER(206, ZEND_ASSIGN_STATIC_PROP_REF, ANY, ANY, CACHE_SLOT|SRC)
 {
        USE_OPLINE
        zend_free_op free_op_data;
index 492222d2c0da22bc0158c82eddb35501a47d393f..c14b0e4e423ea376e7ac6355404ac3dc7aa7095a 100644 (file)
@@ -534,7 +534,7 @@ static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL zend_binary_assign_op_static_prop_h
        ZEND_VM_NEXT_OPCODE_EX(1, 2);
 }
 
-static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL zend_pre_incdec_static_property_helper_SPEC(int inc ZEND_OPCODE_HANDLER_ARGS_DC)
+static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL zend_pre_incdec_static_property_helper_SPEC(ZEND_OPCODE_HANDLER_ARGS)
 {
        USE_OPLINE
        zval *prop;
@@ -547,7 +547,7 @@ static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL zend_pre_incdec_static_property_hel
                HANDLE_EXCEPTION();
        }
 
-       zend_pre_incdec_property_zval(prop, prop_info->type ? prop_info : NULL, inc OPLINE_CC EXECUTE_DATA_CC);
+       zend_pre_incdec_property_zval(prop, prop_info->type ? prop_info : NULL OPLINE_CC EXECUTE_DATA_CC);
 
        ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION();
 }
@@ -555,17 +555,17 @@ static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL zend_pre_incdec_static_property_hel
 /* No specialization for op_types (CONST|TMPVAR|CV, UNUSED|CONST|VAR) */
 static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_PRE_INC_STATIC_PROP_SPEC_HANDLER(ZEND_OPCODE_HANDLER_ARGS)
 {
-       ZEND_VM_TAIL_CALL(zend_pre_incdec_static_property_helper_SPEC(1 ZEND_OPCODE_HANDLER_ARGS_PASSTHRU_CC));
+       ZEND_VM_TAIL_CALL(zend_pre_incdec_static_property_helper_SPEC(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU));
 }
 
 /* No specialization for op_types (CONST|TMPVAR|CV, UNUSED|CONST|VAR) */
 static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_PRE_DEC_STATIC_PROP_SPEC_HANDLER(ZEND_OPCODE_HANDLER_ARGS)
 {
-       ZEND_VM_TAIL_CALL(zend_pre_incdec_static_property_helper_SPEC(0 ZEND_OPCODE_HANDLER_ARGS_PASSTHRU_CC));
+       ZEND_VM_TAIL_CALL(zend_pre_incdec_static_property_helper_SPEC(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU));
 }
 
 /* No specialization for op_types (CONST|TMPVAR|CV, UNUSED|CONST|VAR) */
-static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL zend_post_incdec_static_property_helper_SPEC(int inc ZEND_OPCODE_HANDLER_ARGS_DC)
+static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL zend_post_incdec_static_property_helper_SPEC(ZEND_OPCODE_HANDLER_ARGS)
 {
        USE_OPLINE
        zval *prop;
@@ -578,7 +578,7 @@ static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL zend_post_incdec_static_property_he
                HANDLE_EXCEPTION();
        }
 
-       zend_post_incdec_property_zval(prop, prop_info->type ? prop_info : NULL, inc OPLINE_CC EXECUTE_DATA_CC);
+       zend_post_incdec_property_zval(prop, prop_info->type ? prop_info : NULL OPLINE_CC EXECUTE_DATA_CC);
 
        ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION();
 }
@@ -586,13 +586,13 @@ static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL zend_post_incdec_static_property_he
 /* No specialization for op_types (CONST|TMPVAR|CV, UNUSED|CONST|VAR) */
 static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_POST_INC_STATIC_PROP_SPEC_HANDLER(ZEND_OPCODE_HANDLER_ARGS)
 {
-       ZEND_VM_TAIL_CALL(zend_post_incdec_static_property_helper_SPEC(1 ZEND_OPCODE_HANDLER_ARGS_PASSTHRU_CC));
+       ZEND_VM_TAIL_CALL(zend_post_incdec_static_property_helper_SPEC(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU));
 }
 
 /* No specialization for op_types (CONST|TMPVAR|CV, UNUSED|CONST|VAR) */
 static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_POST_DEC_STATIC_PROP_SPEC_HANDLER(ZEND_OPCODE_HANDLER_ARGS)
 {
-       ZEND_VM_TAIL_CALL(zend_post_incdec_static_property_helper_SPEC(0 ZEND_OPCODE_HANDLER_ARGS_PASSTHRU_CC));
+       ZEND_VM_TAIL_CALL(zend_post_incdec_static_property_helper_SPEC(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU));
 }
 
 static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL zend_fetch_static_prop_helper_SPEC(int type ZEND_OPCODE_HANDLER_ARGS_DC)
@@ -20114,7 +20114,7 @@ static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_PRE_INC_SPEC_VAR_RETVAL_UNUSED
                        zend_reference *ref = Z_REF_P(var_ptr);
                        var_ptr = Z_REFVAL_P(var_ptr);
                        if (UNEXPECTED(ZEND_REF_HAS_TYPE_SOURCES(ref))) {
-                               zend_incdec_typed_ref(ref, NULL, 1 EXECUTE_DATA_CC);
+                               zend_incdec_typed_ref(ref, NULL OPLINE_CC EXECUTE_DATA_CC);
                                break;
                        }
                }
@@ -20163,7 +20163,7 @@ static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_PRE_INC_SPEC_VAR_RETVAL_USED_H
                        zend_reference *ref = Z_REF_P(var_ptr);
                        var_ptr = Z_REFVAL_P(var_ptr);
                        if (UNEXPECTED(ZEND_REF_HAS_TYPE_SOURCES(ref))) {
-                               zend_incdec_typed_ref(ref, NULL, 1 EXECUTE_DATA_CC);
+                               zend_incdec_typed_ref(ref, NULL OPLINE_CC EXECUTE_DATA_CC);
                                break;
                        }
                }
@@ -20213,7 +20213,7 @@ static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_PRE_DEC_SPEC_VAR_RETVAL_UNUSED
                        var_ptr = Z_REFVAL_P(var_ptr);
 
                        if (UNEXPECTED(ZEND_REF_HAS_TYPE_SOURCES(ref))) {
-                               zend_incdec_typed_ref(ref, NULL, 0 EXECUTE_DATA_CC);
+                               zend_incdec_typed_ref(ref, NULL OPLINE_CC EXECUTE_DATA_CC);
                                break;
                        }
                }
@@ -20263,7 +20263,7 @@ static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_PRE_DEC_SPEC_VAR_RETVAL_USED_H
                        var_ptr = Z_REFVAL_P(var_ptr);
 
                        if (UNEXPECTED(ZEND_REF_HAS_TYPE_SOURCES(ref))) {
-                               zend_incdec_typed_ref(ref, NULL, 0 EXECUTE_DATA_CC);
+                               zend_incdec_typed_ref(ref, NULL OPLINE_CC EXECUTE_DATA_CC);
                                break;
                        }
                }
@@ -20309,7 +20309,7 @@ static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_POST_INC_SPEC_VAR_HANDLER(ZEND
                        var_ptr = Z_REFVAL_P(var_ptr);
 
                        if (UNEXPECTED(ZEND_REF_HAS_TYPE_SOURCES(ref))) {
-                               zend_incdec_typed_ref(ref, EX_VAR(opline->result.var), 1 EXECUTE_DATA_CC);
+                               zend_incdec_typed_ref(ref, EX_VAR(opline->result.var) OPLINE_CC EXECUTE_DATA_CC);
                                break;
                        }
                }
@@ -20353,7 +20353,7 @@ static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_POST_DEC_SPEC_VAR_HANDLER(ZEND
                        var_ptr = Z_REFVAL_P(var_ptr);
 
                        if (UNEXPECTED(ZEND_REF_HAS_TYPE_SOURCES(ref))) {
-                               zend_incdec_typed_ref(ref, EX_VAR(opline->result.var), 0 EXECUTE_DATA_CC);
+                               zend_incdec_typed_ref(ref, EX_VAR(opline->result.var) OPLINE_CC EXECUTE_DATA_CC);
                                break;
                        }
                }
@@ -22147,7 +22147,7 @@ static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_ASSIGN_POW_SPEC_VAR_CONST_OBJ_
        ZEND_VM_TAIL_CALL(zend_binary_assign_op_obj_helper_SPEC_VAR_CONST(pow_function ZEND_OPCODE_HANDLER_ARGS_PASSTHRU_CC));
 }
 
-static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL zend_pre_incdec_property_helper_SPEC_VAR_CONST(int inc ZEND_OPCODE_HANDLER_ARGS_DC)
+static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL zend_pre_incdec_property_helper_SPEC_VAR_CONST(ZEND_OPCODE_HANDLER_ARGS)
 {
        USE_OPLINE
        zend_free_op free_op1;
@@ -22192,10 +22192,10 @@ pre_incdec_object:
                                } else {
                                        prop_info = zend_object_fetch_property_type_info(Z_OBJ_P(object), zptr);
                                }
-                               zend_pre_incdec_property_zval(zptr, prop_info, inc OPLINE_CC EXECUTE_DATA_CC);
+                               zend_pre_incdec_property_zval(zptr, prop_info OPLINE_CC EXECUTE_DATA_CC);
                        }
                } else {
-                       zend_pre_incdec_overloaded_property(object, property, cache_slot, inc OPLINE_CC EXECUTE_DATA_CC);
+                       zend_pre_incdec_overloaded_property(object, property, cache_slot OPLINE_CC EXECUTE_DATA_CC);
                }
        } while (0);
 
@@ -22205,15 +22205,15 @@ pre_incdec_object:
 
 static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_PRE_INC_OBJ_SPEC_VAR_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS)
 {
-       ZEND_VM_TAIL_CALL(zend_pre_incdec_property_helper_SPEC_VAR_CONST(1 ZEND_OPCODE_HANDLER_ARGS_PASSTHRU_CC));
+       ZEND_VM_TAIL_CALL(zend_pre_incdec_property_helper_SPEC_VAR_CONST(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU));
 }
 
 static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_PRE_DEC_OBJ_SPEC_VAR_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS)
 {
-       ZEND_VM_TAIL_CALL(zend_pre_incdec_property_helper_SPEC_VAR_CONST(0 ZEND_OPCODE_HANDLER_ARGS_PASSTHRU_CC));
+       ZEND_VM_TAIL_CALL(zend_pre_incdec_property_helper_SPEC_VAR_CONST(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU));
 }
 
-static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL zend_post_incdec_property_helper_SPEC_VAR_CONST(int inc ZEND_OPCODE_HANDLER_ARGS_DC)
+static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL zend_post_incdec_property_helper_SPEC_VAR_CONST(ZEND_OPCODE_HANDLER_ARGS)
 {
        USE_OPLINE
        zend_free_op free_op1;
@@ -22257,10 +22257,10 @@ post_incdec_object:
                                        prop_info = zend_object_fetch_property_type_info(Z_OBJ_P(object), zptr);
                                }
 
-                               zend_post_incdec_property_zval(zptr, prop_info, inc OPLINE_CC EXECUTE_DATA_CC);
+                               zend_post_incdec_property_zval(zptr, prop_info OPLINE_CC EXECUTE_DATA_CC);
                        }
                } else {
-                       zend_post_incdec_overloaded_property(object, property, cache_slot, inc OPLINE_CC EXECUTE_DATA_CC);
+                       zend_post_incdec_overloaded_property(object, property, cache_slot OPLINE_CC EXECUTE_DATA_CC);
                }
        } while (0);
 
@@ -22270,12 +22270,12 @@ post_incdec_object:
 
 static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_POST_INC_OBJ_SPEC_VAR_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS)
 {
-       ZEND_VM_TAIL_CALL(zend_post_incdec_property_helper_SPEC_VAR_CONST(1 ZEND_OPCODE_HANDLER_ARGS_PASSTHRU_CC));
+       ZEND_VM_TAIL_CALL(zend_post_incdec_property_helper_SPEC_VAR_CONST(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU));
 }
 
 static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_POST_DEC_OBJ_SPEC_VAR_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS)
 {
-       ZEND_VM_TAIL_CALL(zend_post_incdec_property_helper_SPEC_VAR_CONST(0 ZEND_OPCODE_HANDLER_ARGS_PASSTHRU_CC));
+       ZEND_VM_TAIL_CALL(zend_post_incdec_property_helper_SPEC_VAR_CONST(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU));
 }
 
 /* No specialization for op_types (CONST|TMPVAR|CV, UNUSED|CONST|VAR) */
@@ -24626,7 +24626,7 @@ static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_ASSIGN_POW_SPEC_VAR_TMPVAR_OBJ
        ZEND_VM_TAIL_CALL(zend_binary_assign_op_obj_helper_SPEC_VAR_TMPVAR(pow_function ZEND_OPCODE_HANDLER_ARGS_PASSTHRU_CC));
 }
 
-static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL zend_pre_incdec_property_helper_SPEC_VAR_TMPVAR(int inc ZEND_OPCODE_HANDLER_ARGS_DC)
+static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL zend_pre_incdec_property_helper_SPEC_VAR_TMPVAR(ZEND_OPCODE_HANDLER_ARGS)
 {
        USE_OPLINE
        zend_free_op free_op1, free_op2;
@@ -24671,10 +24671,10 @@ pre_incdec_object:
                                } else {
                                        prop_info = zend_object_fetch_property_type_info(Z_OBJ_P(object), zptr);
                                }
-                               zend_pre_incdec_property_zval(zptr, prop_info, inc OPLINE_CC EXECUTE_DATA_CC);
+                               zend_pre_incdec_property_zval(zptr, prop_info OPLINE_CC EXECUTE_DATA_CC);
                        }
                } else {
-                       zend_pre_incdec_overloaded_property(object, property, cache_slot, inc OPLINE_CC EXECUTE_DATA_CC);
+                       zend_pre_incdec_overloaded_property(object, property, cache_slot OPLINE_CC EXECUTE_DATA_CC);
                }
        } while (0);
 
@@ -24685,15 +24685,15 @@ pre_incdec_object:
 
 static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_PRE_INC_OBJ_SPEC_VAR_TMPVAR_HANDLER(ZEND_OPCODE_HANDLER_ARGS)
 {
-       ZEND_VM_TAIL_CALL(zend_pre_incdec_property_helper_SPEC_VAR_TMPVAR(1 ZEND_OPCODE_HANDLER_ARGS_PASSTHRU_CC));
+       ZEND_VM_TAIL_CALL(zend_pre_incdec_property_helper_SPEC_VAR_TMPVAR(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU));
 }
 
 static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_PRE_DEC_OBJ_SPEC_VAR_TMPVAR_HANDLER(ZEND_OPCODE_HANDLER_ARGS)
 {
-       ZEND_VM_TAIL_CALL(zend_pre_incdec_property_helper_SPEC_VAR_TMPVAR(0 ZEND_OPCODE_HANDLER_ARGS_PASSTHRU_CC));
+       ZEND_VM_TAIL_CALL(zend_pre_incdec_property_helper_SPEC_VAR_TMPVAR(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU));
 }
 
-static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL zend_post_incdec_property_helper_SPEC_VAR_TMPVAR(int inc ZEND_OPCODE_HANDLER_ARGS_DC)
+static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL zend_post_incdec_property_helper_SPEC_VAR_TMPVAR(ZEND_OPCODE_HANDLER_ARGS)
 {
        USE_OPLINE
        zend_free_op free_op1, free_op2;
@@ -24737,10 +24737,10 @@ post_incdec_object:
                                        prop_info = zend_object_fetch_property_type_info(Z_OBJ_P(object), zptr);
                                }
 
-                               zend_post_incdec_property_zval(zptr, prop_info, inc OPLINE_CC EXECUTE_DATA_CC);
+                               zend_post_incdec_property_zval(zptr, prop_info OPLINE_CC EXECUTE_DATA_CC);
                        }
                } else {
-                       zend_post_incdec_overloaded_property(object, property, cache_slot, inc OPLINE_CC EXECUTE_DATA_CC);
+                       zend_post_incdec_overloaded_property(object, property, cache_slot OPLINE_CC EXECUTE_DATA_CC);
                }
        } while (0);
 
@@ -24751,12 +24751,12 @@ post_incdec_object:
 
 static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_POST_INC_OBJ_SPEC_VAR_TMPVAR_HANDLER(ZEND_OPCODE_HANDLER_ARGS)
 {
-       ZEND_VM_TAIL_CALL(zend_post_incdec_property_helper_SPEC_VAR_TMPVAR(1 ZEND_OPCODE_HANDLER_ARGS_PASSTHRU_CC));
+       ZEND_VM_TAIL_CALL(zend_post_incdec_property_helper_SPEC_VAR_TMPVAR(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU));
 }
 
 static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_POST_DEC_OBJ_SPEC_VAR_TMPVAR_HANDLER(ZEND_OPCODE_HANDLER_ARGS)
 {
-       ZEND_VM_TAIL_CALL(zend_post_incdec_property_helper_SPEC_VAR_TMPVAR(0 ZEND_OPCODE_HANDLER_ARGS_PASSTHRU_CC));
+       ZEND_VM_TAIL_CALL(zend_post_incdec_property_helper_SPEC_VAR_TMPVAR(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU));
 }
 
 /* No specialization for op_types (CONST|TMPVAR|CV, UNUSED|CONST|VAR) */
@@ -28635,7 +28635,7 @@ static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_ASSIGN_POW_SPEC_VAR_CV_OBJ_HAN
        ZEND_VM_TAIL_CALL(zend_binary_assign_op_obj_helper_SPEC_VAR_CV(pow_function ZEND_OPCODE_HANDLER_ARGS_PASSTHRU_CC));
 }
 
-static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL zend_pre_incdec_property_helper_SPEC_VAR_CV(int inc ZEND_OPCODE_HANDLER_ARGS_DC)
+static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL zend_pre_incdec_property_helper_SPEC_VAR_CV(ZEND_OPCODE_HANDLER_ARGS)
 {
        USE_OPLINE
        zend_free_op free_op1;
@@ -28680,10 +28680,10 @@ pre_incdec_object:
                                } else {
                                        prop_info = zend_object_fetch_property_type_info(Z_OBJ_P(object), zptr);
                                }
-                               zend_pre_incdec_property_zval(zptr, prop_info, inc OPLINE_CC EXECUTE_DATA_CC);
+                               zend_pre_incdec_property_zval(zptr, prop_info OPLINE_CC EXECUTE_DATA_CC);
                        }
                } else {
-                       zend_pre_incdec_overloaded_property(object, property, cache_slot, inc OPLINE_CC EXECUTE_DATA_CC);
+                       zend_pre_incdec_overloaded_property(object, property, cache_slot OPLINE_CC EXECUTE_DATA_CC);
                }
        } while (0);
 
@@ -28693,15 +28693,15 @@ pre_incdec_object:
 
 static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_PRE_INC_OBJ_SPEC_VAR_CV_HANDLER(ZEND_OPCODE_HANDLER_ARGS)
 {
-       ZEND_VM_TAIL_CALL(zend_pre_incdec_property_helper_SPEC_VAR_CV(1 ZEND_OPCODE_HANDLER_ARGS_PASSTHRU_CC));
+       ZEND_VM_TAIL_CALL(zend_pre_incdec_property_helper_SPEC_VAR_CV(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU));
 }
 
 static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_PRE_DEC_OBJ_SPEC_VAR_CV_HANDLER(ZEND_OPCODE_HANDLER_ARGS)
 {
-       ZEND_VM_TAIL_CALL(zend_pre_incdec_property_helper_SPEC_VAR_CV(0 ZEND_OPCODE_HANDLER_ARGS_PASSTHRU_CC));
+       ZEND_VM_TAIL_CALL(zend_pre_incdec_property_helper_SPEC_VAR_CV(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU));
 }
 
-static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL zend_post_incdec_property_helper_SPEC_VAR_CV(int inc ZEND_OPCODE_HANDLER_ARGS_DC)
+static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL zend_post_incdec_property_helper_SPEC_VAR_CV(ZEND_OPCODE_HANDLER_ARGS)
 {
        USE_OPLINE
        zend_free_op free_op1;
@@ -28745,10 +28745,10 @@ post_incdec_object:
                                        prop_info = zend_object_fetch_property_type_info(Z_OBJ_P(object), zptr);
                                }
 
-                               zend_post_incdec_property_zval(zptr, prop_info, inc OPLINE_CC EXECUTE_DATA_CC);
+                               zend_post_incdec_property_zval(zptr, prop_info OPLINE_CC EXECUTE_DATA_CC);
                        }
                } else {
-                       zend_post_incdec_overloaded_property(object, property, cache_slot, inc OPLINE_CC EXECUTE_DATA_CC);
+                       zend_post_incdec_overloaded_property(object, property, cache_slot OPLINE_CC EXECUTE_DATA_CC);
                }
        } while (0);
 
@@ -28758,12 +28758,12 @@ post_incdec_object:
 
 static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_POST_INC_OBJ_SPEC_VAR_CV_HANDLER(ZEND_OPCODE_HANDLER_ARGS)
 {
-       ZEND_VM_TAIL_CALL(zend_post_incdec_property_helper_SPEC_VAR_CV(1 ZEND_OPCODE_HANDLER_ARGS_PASSTHRU_CC));
+       ZEND_VM_TAIL_CALL(zend_post_incdec_property_helper_SPEC_VAR_CV(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU));
 }
 
 static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_POST_DEC_OBJ_SPEC_VAR_CV_HANDLER(ZEND_OPCODE_HANDLER_ARGS)
 {
-       ZEND_VM_TAIL_CALL(zend_post_incdec_property_helper_SPEC_VAR_CV(0 ZEND_OPCODE_HANDLER_ARGS_PASSTHRU_CC));
+       ZEND_VM_TAIL_CALL(zend_post_incdec_property_helper_SPEC_VAR_CV(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU));
 }
 
 /* No specialization for op_types (CONST|TMPVAR|CV, UNUSED|CONST|VAR) */
@@ -31037,7 +31037,7 @@ static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_ASSIGN_POW_SPEC_UNUSED_CONST_O
        ZEND_VM_TAIL_CALL(zend_binary_assign_op_obj_helper_SPEC_UNUSED_CONST(pow_function ZEND_OPCODE_HANDLER_ARGS_PASSTHRU_CC));
 }
 
-static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL zend_pre_incdec_property_helper_SPEC_UNUSED_CONST(int inc ZEND_OPCODE_HANDLER_ARGS_DC)
+static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL zend_pre_incdec_property_helper_SPEC_UNUSED_CONST(ZEND_OPCODE_HANDLER_ARGS)
 {
        USE_OPLINE
 
@@ -31082,10 +31082,10 @@ pre_incdec_object:
                                } else {
                                        prop_info = zend_object_fetch_property_type_info(Z_OBJ_P(object), zptr);
                                }
-                               zend_pre_incdec_property_zval(zptr, prop_info, inc OPLINE_CC EXECUTE_DATA_CC);
+                               zend_pre_incdec_property_zval(zptr, prop_info OPLINE_CC EXECUTE_DATA_CC);
                        }
                } else {
-                       zend_pre_incdec_overloaded_property(object, property, cache_slot, inc OPLINE_CC EXECUTE_DATA_CC);
+                       zend_pre_incdec_overloaded_property(object, property, cache_slot OPLINE_CC EXECUTE_DATA_CC);
                }
        } while (0);
 
@@ -31095,15 +31095,15 @@ pre_incdec_object:
 
 static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_PRE_INC_OBJ_SPEC_UNUSED_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS)
 {
-       ZEND_VM_TAIL_CALL(zend_pre_incdec_property_helper_SPEC_UNUSED_CONST(1 ZEND_OPCODE_HANDLER_ARGS_PASSTHRU_CC));
+       ZEND_VM_TAIL_CALL(zend_pre_incdec_property_helper_SPEC_UNUSED_CONST(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU));
 }
 
 static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_PRE_DEC_OBJ_SPEC_UNUSED_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS)
 {
-       ZEND_VM_TAIL_CALL(zend_pre_incdec_property_helper_SPEC_UNUSED_CONST(0 ZEND_OPCODE_HANDLER_ARGS_PASSTHRU_CC));
+       ZEND_VM_TAIL_CALL(zend_pre_incdec_property_helper_SPEC_UNUSED_CONST(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU));
 }
 
-static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL zend_post_incdec_property_helper_SPEC_UNUSED_CONST(int inc ZEND_OPCODE_HANDLER_ARGS_DC)
+static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL zend_post_incdec_property_helper_SPEC_UNUSED_CONST(ZEND_OPCODE_HANDLER_ARGS)
 {
        USE_OPLINE
 
@@ -31147,10 +31147,10 @@ post_incdec_object:
                                        prop_info = zend_object_fetch_property_type_info(Z_OBJ_P(object), zptr);
                                }
 
-                               zend_post_incdec_property_zval(zptr, prop_info, inc OPLINE_CC EXECUTE_DATA_CC);
+                               zend_post_incdec_property_zval(zptr, prop_info OPLINE_CC EXECUTE_DATA_CC);
                        }
                } else {
-                       zend_post_incdec_overloaded_property(object, property, cache_slot, inc OPLINE_CC EXECUTE_DATA_CC);
+                       zend_post_incdec_overloaded_property(object, property, cache_slot OPLINE_CC EXECUTE_DATA_CC);
                }
        } while (0);
 
@@ -31160,12 +31160,12 @@ post_incdec_object:
 
 static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_POST_INC_OBJ_SPEC_UNUSED_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS)
 {
-       ZEND_VM_TAIL_CALL(zend_post_incdec_property_helper_SPEC_UNUSED_CONST(1 ZEND_OPCODE_HANDLER_ARGS_PASSTHRU_CC));
+       ZEND_VM_TAIL_CALL(zend_post_incdec_property_helper_SPEC_UNUSED_CONST(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU));
 }
 
 static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_POST_DEC_OBJ_SPEC_UNUSED_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS)
 {
-       ZEND_VM_TAIL_CALL(zend_post_incdec_property_helper_SPEC_UNUSED_CONST(0 ZEND_OPCODE_HANDLER_ARGS_PASSTHRU_CC));
+       ZEND_VM_TAIL_CALL(zend_post_incdec_property_helper_SPEC_UNUSED_CONST(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU));
 }
 
 /* No specialization for op_types (CONST|TMPVAR|CV, UNUSED|CONST|VAR) */
@@ -32922,7 +32922,7 @@ static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_ASSIGN_POW_SPEC_UNUSED_TMPVAR_
        ZEND_VM_TAIL_CALL(zend_binary_assign_op_obj_helper_SPEC_UNUSED_TMPVAR(pow_function ZEND_OPCODE_HANDLER_ARGS_PASSTHRU_CC));
 }
 
-static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL zend_pre_incdec_property_helper_SPEC_UNUSED_TMPVAR(int inc ZEND_OPCODE_HANDLER_ARGS_DC)
+static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL zend_pre_incdec_property_helper_SPEC_UNUSED_TMPVAR(ZEND_OPCODE_HANDLER_ARGS)
 {
        USE_OPLINE
        zend_free_op free_op2;
@@ -32967,10 +32967,10 @@ pre_incdec_object:
                                } else {
                                        prop_info = zend_object_fetch_property_type_info(Z_OBJ_P(object), zptr);
                                }
-                               zend_pre_incdec_property_zval(zptr, prop_info, inc OPLINE_CC EXECUTE_DATA_CC);
+                               zend_pre_incdec_property_zval(zptr, prop_info OPLINE_CC EXECUTE_DATA_CC);
                        }
                } else {
-                       zend_pre_incdec_overloaded_property(object, property, cache_slot, inc OPLINE_CC EXECUTE_DATA_CC);
+                       zend_pre_incdec_overloaded_property(object, property, cache_slot OPLINE_CC EXECUTE_DATA_CC);
                }
        } while (0);
 
@@ -32981,15 +32981,15 @@ pre_incdec_object:
 
 static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_PRE_INC_OBJ_SPEC_UNUSED_TMPVAR_HANDLER(ZEND_OPCODE_HANDLER_ARGS)
 {
-       ZEND_VM_TAIL_CALL(zend_pre_incdec_property_helper_SPEC_UNUSED_TMPVAR(1 ZEND_OPCODE_HANDLER_ARGS_PASSTHRU_CC));
+       ZEND_VM_TAIL_CALL(zend_pre_incdec_property_helper_SPEC_UNUSED_TMPVAR(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU));
 }
 
 static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_PRE_DEC_OBJ_SPEC_UNUSED_TMPVAR_HANDLER(ZEND_OPCODE_HANDLER_ARGS)
 {
-       ZEND_VM_TAIL_CALL(zend_pre_incdec_property_helper_SPEC_UNUSED_TMPVAR(0 ZEND_OPCODE_HANDLER_ARGS_PASSTHRU_CC));
+       ZEND_VM_TAIL_CALL(zend_pre_incdec_property_helper_SPEC_UNUSED_TMPVAR(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU));
 }
 
-static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL zend_post_incdec_property_helper_SPEC_UNUSED_TMPVAR(int inc ZEND_OPCODE_HANDLER_ARGS_DC)
+static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL zend_post_incdec_property_helper_SPEC_UNUSED_TMPVAR(ZEND_OPCODE_HANDLER_ARGS)
 {
        USE_OPLINE
        zend_free_op free_op2;
@@ -33033,10 +33033,10 @@ post_incdec_object:
                                        prop_info = zend_object_fetch_property_type_info(Z_OBJ_P(object), zptr);
                                }
 
-                               zend_post_incdec_property_zval(zptr, prop_info, inc OPLINE_CC EXECUTE_DATA_CC);
+                               zend_post_incdec_property_zval(zptr, prop_info OPLINE_CC EXECUTE_DATA_CC);
                        }
                } else {
-                       zend_post_incdec_overloaded_property(object, property, cache_slot, inc OPLINE_CC EXECUTE_DATA_CC);
+                       zend_post_incdec_overloaded_property(object, property, cache_slot OPLINE_CC EXECUTE_DATA_CC);
                }
        } while (0);
 
@@ -33047,12 +33047,12 @@ post_incdec_object:
 
 static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_POST_INC_OBJ_SPEC_UNUSED_TMPVAR_HANDLER(ZEND_OPCODE_HANDLER_ARGS)
 {
-       ZEND_VM_TAIL_CALL(zend_post_incdec_property_helper_SPEC_UNUSED_TMPVAR(1 ZEND_OPCODE_HANDLER_ARGS_PASSTHRU_CC));
+       ZEND_VM_TAIL_CALL(zend_post_incdec_property_helper_SPEC_UNUSED_TMPVAR(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU));
 }
 
 static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_POST_DEC_OBJ_SPEC_UNUSED_TMPVAR_HANDLER(ZEND_OPCODE_HANDLER_ARGS)
 {
-       ZEND_VM_TAIL_CALL(zend_post_incdec_property_helper_SPEC_UNUSED_TMPVAR(0 ZEND_OPCODE_HANDLER_ARGS_PASSTHRU_CC));
+       ZEND_VM_TAIL_CALL(zend_post_incdec_property_helper_SPEC_UNUSED_TMPVAR(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU));
 }
 
 /* No specialization for op_types (CONST|TMPVAR|CV, UNUSED|CONST|VAR) */
@@ -35481,7 +35481,7 @@ static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_ASSIGN_POW_SPEC_UNUSED_CV_OBJ_
        ZEND_VM_TAIL_CALL(zend_binary_assign_op_obj_helper_SPEC_UNUSED_CV(pow_function ZEND_OPCODE_HANDLER_ARGS_PASSTHRU_CC));
 }
 
-static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL zend_pre_incdec_property_helper_SPEC_UNUSED_CV(int inc ZEND_OPCODE_HANDLER_ARGS_DC)
+static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL zend_pre_incdec_property_helper_SPEC_UNUSED_CV(ZEND_OPCODE_HANDLER_ARGS)
 {
        USE_OPLINE
 
@@ -35526,10 +35526,10 @@ pre_incdec_object:
                                } else {
                                        prop_info = zend_object_fetch_property_type_info(Z_OBJ_P(object), zptr);
                                }
-                               zend_pre_incdec_property_zval(zptr, prop_info, inc OPLINE_CC EXECUTE_DATA_CC);
+                               zend_pre_incdec_property_zval(zptr, prop_info OPLINE_CC EXECUTE_DATA_CC);
                        }
                } else {
-                       zend_pre_incdec_overloaded_property(object, property, cache_slot, inc OPLINE_CC EXECUTE_DATA_CC);
+                       zend_pre_incdec_overloaded_property(object, property, cache_slot OPLINE_CC EXECUTE_DATA_CC);
                }
        } while (0);
 
@@ -35539,15 +35539,15 @@ pre_incdec_object:
 
 static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_PRE_INC_OBJ_SPEC_UNUSED_CV_HANDLER(ZEND_OPCODE_HANDLER_ARGS)
 {
-       ZEND_VM_TAIL_CALL(zend_pre_incdec_property_helper_SPEC_UNUSED_CV(1 ZEND_OPCODE_HANDLER_ARGS_PASSTHRU_CC));
+       ZEND_VM_TAIL_CALL(zend_pre_incdec_property_helper_SPEC_UNUSED_CV(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU));
 }
 
 static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_PRE_DEC_OBJ_SPEC_UNUSED_CV_HANDLER(ZEND_OPCODE_HANDLER_ARGS)
 {
-       ZEND_VM_TAIL_CALL(zend_pre_incdec_property_helper_SPEC_UNUSED_CV(0 ZEND_OPCODE_HANDLER_ARGS_PASSTHRU_CC));
+       ZEND_VM_TAIL_CALL(zend_pre_incdec_property_helper_SPEC_UNUSED_CV(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU));
 }
 
-static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL zend_post_incdec_property_helper_SPEC_UNUSED_CV(int inc ZEND_OPCODE_HANDLER_ARGS_DC)
+static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL zend_post_incdec_property_helper_SPEC_UNUSED_CV(ZEND_OPCODE_HANDLER_ARGS)
 {
        USE_OPLINE
 
@@ -35591,10 +35591,10 @@ post_incdec_object:
                                        prop_info = zend_object_fetch_property_type_info(Z_OBJ_P(object), zptr);
                                }
 
-                               zend_post_incdec_property_zval(zptr, prop_info, inc OPLINE_CC EXECUTE_DATA_CC);
+                               zend_post_incdec_property_zval(zptr, prop_info OPLINE_CC EXECUTE_DATA_CC);
                        }
                } else {
-                       zend_post_incdec_overloaded_property(object, property, cache_slot, inc OPLINE_CC EXECUTE_DATA_CC);
+                       zend_post_incdec_overloaded_property(object, property, cache_slot OPLINE_CC EXECUTE_DATA_CC);
                }
        } while (0);
 
@@ -35604,12 +35604,12 @@ post_incdec_object:
 
 static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_POST_INC_OBJ_SPEC_UNUSED_CV_HANDLER(ZEND_OPCODE_HANDLER_ARGS)
 {
-       ZEND_VM_TAIL_CALL(zend_post_incdec_property_helper_SPEC_UNUSED_CV(1 ZEND_OPCODE_HANDLER_ARGS_PASSTHRU_CC));
+       ZEND_VM_TAIL_CALL(zend_post_incdec_property_helper_SPEC_UNUSED_CV(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU));
 }
 
 static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_POST_DEC_OBJ_SPEC_UNUSED_CV_HANDLER(ZEND_OPCODE_HANDLER_ARGS)
 {
-       ZEND_VM_TAIL_CALL(zend_post_incdec_property_helper_SPEC_UNUSED_CV(0 ZEND_OPCODE_HANDLER_ARGS_PASSTHRU_CC));
+       ZEND_VM_TAIL_CALL(zend_post_incdec_property_helper_SPEC_UNUSED_CV(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU));
 }
 
 /* No specialization for op_types (CONST|TMPVAR|CV, UNUSED|CONST|VAR) */
@@ -37211,7 +37211,7 @@ static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_PRE_INC_SPEC_CV_RETVAL_UNUSED_
                        zend_reference *ref = Z_REF_P(var_ptr);
                        var_ptr = Z_REFVAL_P(var_ptr);
                        if (UNEXPECTED(ZEND_REF_HAS_TYPE_SOURCES(ref))) {
-                               zend_incdec_typed_ref(ref, NULL, 1 EXECUTE_DATA_CC);
+                               zend_incdec_typed_ref(ref, NULL OPLINE_CC EXECUTE_DATA_CC);
                                break;
                        }
                }
@@ -37259,7 +37259,7 @@ static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_PRE_INC_SPEC_CV_RETVAL_USED_HA
                        zend_reference *ref = Z_REF_P(var_ptr);
                        var_ptr = Z_REFVAL_P(var_ptr);
                        if (UNEXPECTED(ZEND_REF_HAS_TYPE_SOURCES(ref))) {
-                               zend_incdec_typed_ref(ref, NULL, 1 EXECUTE_DATA_CC);
+                               zend_incdec_typed_ref(ref, NULL OPLINE_CC EXECUTE_DATA_CC);
                                break;
                        }
                }
@@ -37308,7 +37308,7 @@ static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_PRE_DEC_SPEC_CV_RETVAL_UNUSED_
                        var_ptr = Z_REFVAL_P(var_ptr);
 
                        if (UNEXPECTED(ZEND_REF_HAS_TYPE_SOURCES(ref))) {
-                               zend_incdec_typed_ref(ref, NULL, 0 EXECUTE_DATA_CC);
+                               zend_incdec_typed_ref(ref, NULL OPLINE_CC EXECUTE_DATA_CC);
                                break;
                        }
                }
@@ -37357,7 +37357,7 @@ static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_PRE_DEC_SPEC_CV_RETVAL_USED_HA
                        var_ptr = Z_REFVAL_P(var_ptr);
 
                        if (UNEXPECTED(ZEND_REF_HAS_TYPE_SOURCES(ref))) {
-                               zend_incdec_typed_ref(ref, NULL, 0 EXECUTE_DATA_CC);
+                               zend_incdec_typed_ref(ref, NULL OPLINE_CC EXECUTE_DATA_CC);
                                break;
                        }
                }
@@ -37402,7 +37402,7 @@ static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_POST_INC_SPEC_CV_HANDLER(ZEND_
                        var_ptr = Z_REFVAL_P(var_ptr);
 
                        if (UNEXPECTED(ZEND_REF_HAS_TYPE_SOURCES(ref))) {
-                               zend_incdec_typed_ref(ref, EX_VAR(opline->result.var), 1 EXECUTE_DATA_CC);
+                               zend_incdec_typed_ref(ref, EX_VAR(opline->result.var) OPLINE_CC EXECUTE_DATA_CC);
                                break;
                        }
                }
@@ -37445,7 +37445,7 @@ static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_POST_DEC_SPEC_CV_HANDLER(ZEND_
                        var_ptr = Z_REFVAL_P(var_ptr);
 
                        if (UNEXPECTED(ZEND_REF_HAS_TYPE_SOURCES(ref))) {
-                               zend_incdec_typed_ref(ref, EX_VAR(opline->result.var), 0 EXECUTE_DATA_CC);
+                               zend_incdec_typed_ref(ref, EX_VAR(opline->result.var) OPLINE_CC EXECUTE_DATA_CC);
                                break;
                        }
                }
@@ -39967,7 +39967,7 @@ static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_ASSIGN_POW_SPEC_CV_CONST_OBJ_H
        ZEND_VM_TAIL_CALL(zend_binary_assign_op_obj_helper_SPEC_CV_CONST(pow_function ZEND_OPCODE_HANDLER_ARGS_PASSTHRU_CC));
 }
 
-static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL zend_pre_incdec_property_helper_SPEC_CV_CONST(int inc ZEND_OPCODE_HANDLER_ARGS_DC)
+static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL zend_pre_incdec_property_helper_SPEC_CV_CONST(ZEND_OPCODE_HANDLER_ARGS)
 {
        USE_OPLINE
 
@@ -40012,10 +40012,10 @@ pre_incdec_object:
                                } else {
                                        prop_info = zend_object_fetch_property_type_info(Z_OBJ_P(object), zptr);
                                }
-                               zend_pre_incdec_property_zval(zptr, prop_info, inc OPLINE_CC EXECUTE_DATA_CC);
+                               zend_pre_incdec_property_zval(zptr, prop_info OPLINE_CC EXECUTE_DATA_CC);
                        }
                } else {
-                       zend_pre_incdec_overloaded_property(object, property, cache_slot, inc OPLINE_CC EXECUTE_DATA_CC);
+                       zend_pre_incdec_overloaded_property(object, property, cache_slot OPLINE_CC EXECUTE_DATA_CC);
                }
        } while (0);
 
@@ -40025,15 +40025,15 @@ pre_incdec_object:
 
 static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_PRE_INC_OBJ_SPEC_CV_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS)
 {
-       ZEND_VM_TAIL_CALL(zend_pre_incdec_property_helper_SPEC_CV_CONST(1 ZEND_OPCODE_HANDLER_ARGS_PASSTHRU_CC));
+       ZEND_VM_TAIL_CALL(zend_pre_incdec_property_helper_SPEC_CV_CONST(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU));
 }
 
 static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_PRE_DEC_OBJ_SPEC_CV_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS)
 {
-       ZEND_VM_TAIL_CALL(zend_pre_incdec_property_helper_SPEC_CV_CONST(0 ZEND_OPCODE_HANDLER_ARGS_PASSTHRU_CC));
+       ZEND_VM_TAIL_CALL(zend_pre_incdec_property_helper_SPEC_CV_CONST(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU));
 }
 
-static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL zend_post_incdec_property_helper_SPEC_CV_CONST(int inc ZEND_OPCODE_HANDLER_ARGS_DC)
+static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL zend_post_incdec_property_helper_SPEC_CV_CONST(ZEND_OPCODE_HANDLER_ARGS)
 {
        USE_OPLINE
 
@@ -40077,10 +40077,10 @@ post_incdec_object:
                                        prop_info = zend_object_fetch_property_type_info(Z_OBJ_P(object), zptr);
                                }
 
-                               zend_post_incdec_property_zval(zptr, prop_info, inc OPLINE_CC EXECUTE_DATA_CC);
+                               zend_post_incdec_property_zval(zptr, prop_info OPLINE_CC EXECUTE_DATA_CC);
                        }
                } else {
-                       zend_post_incdec_overloaded_property(object, property, cache_slot, inc OPLINE_CC EXECUTE_DATA_CC);
+                       zend_post_incdec_overloaded_property(object, property, cache_slot OPLINE_CC EXECUTE_DATA_CC);
                }
        } while (0);
 
@@ -40090,12 +40090,12 @@ post_incdec_object:
 
 static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_POST_INC_OBJ_SPEC_CV_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS)
 {
-       ZEND_VM_TAIL_CALL(zend_post_incdec_property_helper_SPEC_CV_CONST(1 ZEND_OPCODE_HANDLER_ARGS_PASSTHRU_CC));
+       ZEND_VM_TAIL_CALL(zend_post_incdec_property_helper_SPEC_CV_CONST(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU));
 }
 
 static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_POST_DEC_OBJ_SPEC_CV_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS)
 {
-       ZEND_VM_TAIL_CALL(zend_post_incdec_property_helper_SPEC_CV_CONST(0 ZEND_OPCODE_HANDLER_ARGS_PASSTHRU_CC));
+       ZEND_VM_TAIL_CALL(zend_post_incdec_property_helper_SPEC_CV_CONST(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU));
 }
 
 /* No specialization for op_types (CONST|TMPVAR|CV, UNUSED|CONST|VAR) */
@@ -43861,7 +43861,7 @@ static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_ASSIGN_POW_SPEC_CV_TMPVAR_OBJ_
        ZEND_VM_TAIL_CALL(zend_binary_assign_op_obj_helper_SPEC_CV_TMPVAR(pow_function ZEND_OPCODE_HANDLER_ARGS_PASSTHRU_CC));
 }
 
-static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL zend_pre_incdec_property_helper_SPEC_CV_TMPVAR(int inc ZEND_OPCODE_HANDLER_ARGS_DC)
+static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL zend_pre_incdec_property_helper_SPEC_CV_TMPVAR(ZEND_OPCODE_HANDLER_ARGS)
 {
        USE_OPLINE
        zend_free_op free_op2;
@@ -43906,10 +43906,10 @@ pre_incdec_object:
                                } else {
                                        prop_info = zend_object_fetch_property_type_info(Z_OBJ_P(object), zptr);
                                }
-                               zend_pre_incdec_property_zval(zptr, prop_info, inc OPLINE_CC EXECUTE_DATA_CC);
+                               zend_pre_incdec_property_zval(zptr, prop_info OPLINE_CC EXECUTE_DATA_CC);
                        }
                } else {
-                       zend_pre_incdec_overloaded_property(object, property, cache_slot, inc OPLINE_CC EXECUTE_DATA_CC);
+                       zend_pre_incdec_overloaded_property(object, property, cache_slot OPLINE_CC EXECUTE_DATA_CC);
                }
        } while (0);
 
@@ -43920,15 +43920,15 @@ pre_incdec_object:
 
 static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_PRE_INC_OBJ_SPEC_CV_TMPVAR_HANDLER(ZEND_OPCODE_HANDLER_ARGS)
 {
-       ZEND_VM_TAIL_CALL(zend_pre_incdec_property_helper_SPEC_CV_TMPVAR(1 ZEND_OPCODE_HANDLER_ARGS_PASSTHRU_CC));
+       ZEND_VM_TAIL_CALL(zend_pre_incdec_property_helper_SPEC_CV_TMPVAR(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU));
 }
 
 static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_PRE_DEC_OBJ_SPEC_CV_TMPVAR_HANDLER(ZEND_OPCODE_HANDLER_ARGS)
 {
-       ZEND_VM_TAIL_CALL(zend_pre_incdec_property_helper_SPEC_CV_TMPVAR(0 ZEND_OPCODE_HANDLER_ARGS_PASSTHRU_CC));
+       ZEND_VM_TAIL_CALL(zend_pre_incdec_property_helper_SPEC_CV_TMPVAR(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU));
 }
 
-static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL zend_post_incdec_property_helper_SPEC_CV_TMPVAR(int inc ZEND_OPCODE_HANDLER_ARGS_DC)
+static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL zend_post_incdec_property_helper_SPEC_CV_TMPVAR(ZEND_OPCODE_HANDLER_ARGS)
 {
        USE_OPLINE
        zend_free_op free_op2;
@@ -43972,10 +43972,10 @@ post_incdec_object:
                                        prop_info = zend_object_fetch_property_type_info(Z_OBJ_P(object), zptr);
                                }
 
-                               zend_post_incdec_property_zval(zptr, prop_info, inc OPLINE_CC EXECUTE_DATA_CC);
+                               zend_post_incdec_property_zval(zptr, prop_info OPLINE_CC EXECUTE_DATA_CC);
                        }
                } else {
-                       zend_post_incdec_overloaded_property(object, property, cache_slot, inc OPLINE_CC EXECUTE_DATA_CC);
+                       zend_post_incdec_overloaded_property(object, property, cache_slot OPLINE_CC EXECUTE_DATA_CC);
                }
        } while (0);
 
@@ -43986,12 +43986,12 @@ post_incdec_object:
 
 static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_POST_INC_OBJ_SPEC_CV_TMPVAR_HANDLER(ZEND_OPCODE_HANDLER_ARGS)
 {
-       ZEND_VM_TAIL_CALL(zend_post_incdec_property_helper_SPEC_CV_TMPVAR(1 ZEND_OPCODE_HANDLER_ARGS_PASSTHRU_CC));
+       ZEND_VM_TAIL_CALL(zend_post_incdec_property_helper_SPEC_CV_TMPVAR(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU));
 }
 
 static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_POST_DEC_OBJ_SPEC_CV_TMPVAR_HANDLER(ZEND_OPCODE_HANDLER_ARGS)
 {
-       ZEND_VM_TAIL_CALL(zend_post_incdec_property_helper_SPEC_CV_TMPVAR(0 ZEND_OPCODE_HANDLER_ARGS_PASSTHRU_CC));
+       ZEND_VM_TAIL_CALL(zend_post_incdec_property_helper_SPEC_CV_TMPVAR(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU));
 }
 
 /* No specialization for op_types (CONST|TMPVAR|CV, UNUSED|CONST|VAR) */
@@ -49388,7 +49388,7 @@ static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_ASSIGN_POW_SPEC_CV_CV_OBJ_HAND
        ZEND_VM_TAIL_CALL(zend_binary_assign_op_obj_helper_SPEC_CV_CV(pow_function ZEND_OPCODE_HANDLER_ARGS_PASSTHRU_CC));
 }
 
-static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL zend_pre_incdec_property_helper_SPEC_CV_CV(int inc ZEND_OPCODE_HANDLER_ARGS_DC)
+static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL zend_pre_incdec_property_helper_SPEC_CV_CV(ZEND_OPCODE_HANDLER_ARGS)
 {
        USE_OPLINE
 
@@ -49433,10 +49433,10 @@ pre_incdec_object:
                                } else {
                                        prop_info = zend_object_fetch_property_type_info(Z_OBJ_P(object), zptr);
                                }
-                               zend_pre_incdec_property_zval(zptr, prop_info, inc OPLINE_CC EXECUTE_DATA_CC);
+                               zend_pre_incdec_property_zval(zptr, prop_info OPLINE_CC EXECUTE_DATA_CC);
                        }
                } else {
-                       zend_pre_incdec_overloaded_property(object, property, cache_slot, inc OPLINE_CC EXECUTE_DATA_CC);
+                       zend_pre_incdec_overloaded_property(object, property, cache_slot OPLINE_CC EXECUTE_DATA_CC);
                }
        } while (0);
 
@@ -49446,15 +49446,15 @@ pre_incdec_object:
 
 static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_PRE_INC_OBJ_SPEC_CV_CV_HANDLER(ZEND_OPCODE_HANDLER_ARGS)
 {
-       ZEND_VM_TAIL_CALL(zend_pre_incdec_property_helper_SPEC_CV_CV(1 ZEND_OPCODE_HANDLER_ARGS_PASSTHRU_CC));
+       ZEND_VM_TAIL_CALL(zend_pre_incdec_property_helper_SPEC_CV_CV(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU));
 }
 
 static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_PRE_DEC_OBJ_SPEC_CV_CV_HANDLER(ZEND_OPCODE_HANDLER_ARGS)
 {
-       ZEND_VM_TAIL_CALL(zend_pre_incdec_property_helper_SPEC_CV_CV(0 ZEND_OPCODE_HANDLER_ARGS_PASSTHRU_CC));
+       ZEND_VM_TAIL_CALL(zend_pre_incdec_property_helper_SPEC_CV_CV(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU));
 }
 
-static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL zend_post_incdec_property_helper_SPEC_CV_CV(int inc ZEND_OPCODE_HANDLER_ARGS_DC)
+static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL zend_post_incdec_property_helper_SPEC_CV_CV(ZEND_OPCODE_HANDLER_ARGS)
 {
        USE_OPLINE
 
@@ -49498,10 +49498,10 @@ post_incdec_object:
                                        prop_info = zend_object_fetch_property_type_info(Z_OBJ_P(object), zptr);
                                }
 
-                               zend_post_incdec_property_zval(zptr, prop_info, inc OPLINE_CC EXECUTE_DATA_CC);
+                               zend_post_incdec_property_zval(zptr, prop_info OPLINE_CC EXECUTE_DATA_CC);
                        }
                } else {
-                       zend_post_incdec_overloaded_property(object, property, cache_slot, inc OPLINE_CC EXECUTE_DATA_CC);
+                       zend_post_incdec_overloaded_property(object, property, cache_slot OPLINE_CC EXECUTE_DATA_CC);
                }
        } while (0);
 
@@ -49511,12 +49511,12 @@ post_incdec_object:
 
 static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_POST_INC_OBJ_SPEC_CV_CV_HANDLER(ZEND_OPCODE_HANDLER_ARGS)
 {
-       ZEND_VM_TAIL_CALL(zend_post_incdec_property_helper_SPEC_CV_CV(1 ZEND_OPCODE_HANDLER_ARGS_PASSTHRU_CC));
+       ZEND_VM_TAIL_CALL(zend_post_incdec_property_helper_SPEC_CV_CV(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU));
 }
 
 static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_POST_DEC_OBJ_SPEC_CV_CV_HANDLER(ZEND_OPCODE_HANDLER_ARGS)
 {
-       ZEND_VM_TAIL_CALL(zend_post_incdec_property_helper_SPEC_CV_CV(0 ZEND_OPCODE_HANDLER_ARGS_PASSTHRU_CC));
+       ZEND_VM_TAIL_CALL(zend_post_incdec_property_helper_SPEC_CV_CV(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU));
 }
 
 /* No specialization for op_types (CONST|TMPVAR|CV, UNUSED|CONST|VAR) */
@@ -55110,6 +55110,10 @@ ZEND_API void execute_ex(zend_execute_data *ex)
                        (void*)&&ZEND_ARRAY_KEY_EXISTS_SPEC_CV_TMPVAR_LABEL,
                        (void*)&&ZEND_NULL_LABEL,
                        (void*)&&ZEND_ARRAY_KEY_EXISTS_SPEC_CV_CV_LABEL,
+                       (void*)&&ZEND_PRE_INC_STATIC_PROP_SPEC_LABEL,
+                       (void*)&&ZEND_PRE_DEC_STATIC_PROP_SPEC_LABEL,
+                       (void*)&&ZEND_POST_INC_STATIC_PROP_SPEC_LABEL,
+                       (void*)&&ZEND_POST_DEC_STATIC_PROP_SPEC_LABEL,
                        (void*)&&ZEND_NULL_LABEL,
                        (void*)&&ZEND_NULL_LABEL,
                        (void*)&&ZEND_NULL_LABEL,
@@ -55241,10 +55245,6 @@ ZEND_API void execute_ex(zend_execute_data *ex)
                        (void*)&&ZEND_NULL_LABEL,
                        (void*)&&ZEND_ASSIGN_STATIC_PROP_SPEC_OP_DATA_CV_LABEL,
                        (void*)&&ZEND_ASSIGN_STATIC_PROP_REF_SPEC_LABEL,
-                       (void*)&&ZEND_PRE_INC_STATIC_PROP_SPEC_LABEL,
-                       (void*)&&ZEND_PRE_DEC_STATIC_PROP_SPEC_LABEL,
-                       (void*)&&ZEND_POST_INC_STATIC_PROP_SPEC_LABEL,
-                       (void*)&&ZEND_POST_DEC_STATIC_PROP_SPEC_LABEL,
                        (void*)&&ZEND_COPY_TMP_SPEC_TMPVAR_UNUSED_LABEL,
                        (void*)&&ZEND_ADD_ARRAY_UNPACK_SPEC_LABEL,
                        (void*)&&ZEND_JMP_FORWARD_SPEC_LABEL,
@@ -64819,6 +64819,10 @@ void zend_vm_init(void)
                ZEND_ARRAY_KEY_EXISTS_SPEC_CV_TMPVAR_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_ARRAY_KEY_EXISTS_SPEC_CV_CV_HANDLER,
+               ZEND_PRE_INC_STATIC_PROP_SPEC_HANDLER,
+               ZEND_PRE_DEC_STATIC_PROP_SPEC_HANDLER,
+               ZEND_POST_INC_STATIC_PROP_SPEC_HANDLER,
+               ZEND_POST_DEC_STATIC_PROP_SPEC_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
@@ -64950,10 +64954,6 @@ void zend_vm_init(void)
                ZEND_NULL_HANDLER,
                ZEND_ASSIGN_STATIC_PROP_SPEC_OP_DATA_CV_HANDLER,
                ZEND_ASSIGN_STATIC_PROP_REF_SPEC_HANDLER,
-               ZEND_PRE_INC_STATIC_PROP_SPEC_HANDLER,
-               ZEND_PRE_DEC_STATIC_PROP_SPEC_HANDLER,
-               ZEND_POST_INC_STATIC_PROP_SPEC_HANDLER,
-               ZEND_POST_DEC_STATIC_PROP_SPEC_HANDLER,
                ZEND_COPY_TMP_SPEC_TMPVAR_UNUSED_HANDLER,
                ZEND_ADD_ARRAY_UNPACK_SPEC_HANDLER,
                ZEND_JMP_FORWARD_SPEC_HANDLER,
@@ -66052,12 +66052,12 @@ void zend_vm_init(void)
                3118 | SPEC_RULE_ISSET,
                3120 | SPEC_RULE_OP2,
                3125 | SPEC_RULE_OP1 | SPEC_RULE_OP2,
-               3150 | SPEC_RULE_OP1 | SPEC_RULE_OP2 | SPEC_RULE_OP_DATA,
-               3275 | SPEC_RULE_OP_DATA,
-               3280,
-               3281,
-               3282,
-               3283,
+               3150,
+               3151,
+               3152,
+               3153,
+               3154 | SPEC_RULE_OP1 | SPEC_RULE_OP2 | SPEC_RULE_OP_DATA,
+               3279 | SPEC_RULE_OP_DATA,
                3284,
                3285,
                3286,
index 12f03bf49ef61321bc70d445eb88813a9ac70dfc..b4d852274ef0cd7fd7e082eef18e8101fb0825d0 100644 (file)
        _(3146, ZEND_ARRAY_KEY_EXISTS_SPEC_CV_TMPVAR) \
        _(3147, ZEND_ARRAY_KEY_EXISTS_SPEC_CV_TMPVAR) \
        _(3149, ZEND_ARRAY_KEY_EXISTS_SPEC_CV_CV) \
-       _(3202, ZEND_ASSIGN_OBJ_REF_SPEC_VAR_CONST_OP_DATA_VAR) \
-       _(3204, ZEND_ASSIGN_OBJ_REF_SPEC_VAR_CONST_OP_DATA_CV) \
-       _(3207, ZEND_ASSIGN_OBJ_REF_SPEC_VAR_TMPVAR_OP_DATA_VAR) \
-       _(3209, ZEND_ASSIGN_OBJ_REF_SPEC_VAR_TMPVAR_OP_DATA_CV) \
-       _(3212, ZEND_ASSIGN_OBJ_REF_SPEC_VAR_TMPVAR_OP_DATA_VAR) \
-       _(3214, ZEND_ASSIGN_OBJ_REF_SPEC_VAR_TMPVAR_OP_DATA_CV) \
-       _(3222, ZEND_ASSIGN_OBJ_REF_SPEC_VAR_CV_OP_DATA_VAR) \
-       _(3224, ZEND_ASSIGN_OBJ_REF_SPEC_VAR_CV_OP_DATA_CV) \
-       _(3227, ZEND_ASSIGN_OBJ_REF_SPEC_UNUSED_CONST_OP_DATA_VAR) \
-       _(3229, ZEND_ASSIGN_OBJ_REF_SPEC_UNUSED_CONST_OP_DATA_CV) \
-       _(3232, ZEND_ASSIGN_OBJ_REF_SPEC_UNUSED_TMPVAR_OP_DATA_VAR) \
-       _(3234, ZEND_ASSIGN_OBJ_REF_SPEC_UNUSED_TMPVAR_OP_DATA_CV) \
-       _(3237, ZEND_ASSIGN_OBJ_REF_SPEC_UNUSED_TMPVAR_OP_DATA_VAR) \
-       _(3239, ZEND_ASSIGN_OBJ_REF_SPEC_UNUSED_TMPVAR_OP_DATA_CV) \
-       _(3247, ZEND_ASSIGN_OBJ_REF_SPEC_UNUSED_CV_OP_DATA_VAR) \
-       _(3249, ZEND_ASSIGN_OBJ_REF_SPEC_UNUSED_CV_OP_DATA_CV) \
-       _(3252, ZEND_ASSIGN_OBJ_REF_SPEC_CV_CONST_OP_DATA_VAR) \
-       _(3254, ZEND_ASSIGN_OBJ_REF_SPEC_CV_CONST_OP_DATA_CV) \
-       _(3257, ZEND_ASSIGN_OBJ_REF_SPEC_CV_TMPVAR_OP_DATA_VAR) \
-       _(3259, ZEND_ASSIGN_OBJ_REF_SPEC_CV_TMPVAR_OP_DATA_CV) \
-       _(3262, ZEND_ASSIGN_OBJ_REF_SPEC_CV_TMPVAR_OP_DATA_VAR) \
-       _(3264, ZEND_ASSIGN_OBJ_REF_SPEC_CV_TMPVAR_OP_DATA_CV) \
-       _(3272, ZEND_ASSIGN_OBJ_REF_SPEC_CV_CV_OP_DATA_VAR) \
-       _(3274, ZEND_ASSIGN_OBJ_REF_SPEC_CV_CV_OP_DATA_CV) \
-       _(3275, ZEND_ASSIGN_STATIC_PROP_SPEC_OP_DATA_CONST) \
-       _(3276, ZEND_ASSIGN_STATIC_PROP_SPEC_OP_DATA_TMP) \
-       _(3277, ZEND_ASSIGN_STATIC_PROP_SPEC_OP_DATA_VAR) \
-       _(3279, ZEND_ASSIGN_STATIC_PROP_SPEC_OP_DATA_CV) \
-       _(3280, ZEND_ASSIGN_STATIC_PROP_REF_SPEC) \
-       _(3281, ZEND_PRE_INC_STATIC_PROP_SPEC) \
-       _(3282, ZEND_PRE_DEC_STATIC_PROP_SPEC) \
-       _(3283, ZEND_POST_INC_STATIC_PROP_SPEC) \
-       _(3284, ZEND_POST_DEC_STATIC_PROP_SPEC) \
+       _(3150, ZEND_PRE_INC_STATIC_PROP_SPEC) \
+       _(3151, ZEND_PRE_DEC_STATIC_PROP_SPEC) \
+       _(3152, ZEND_POST_INC_STATIC_PROP_SPEC) \
+       _(3153, ZEND_POST_DEC_STATIC_PROP_SPEC) \
+       _(3206, ZEND_ASSIGN_OBJ_REF_SPEC_VAR_CONST_OP_DATA_VAR) \
+       _(3208, ZEND_ASSIGN_OBJ_REF_SPEC_VAR_CONST_OP_DATA_CV) \
+       _(3211, ZEND_ASSIGN_OBJ_REF_SPEC_VAR_TMPVAR_OP_DATA_VAR) \
+       _(3213, ZEND_ASSIGN_OBJ_REF_SPEC_VAR_TMPVAR_OP_DATA_CV) \
+       _(3216, ZEND_ASSIGN_OBJ_REF_SPEC_VAR_TMPVAR_OP_DATA_VAR) \
+       _(3218, ZEND_ASSIGN_OBJ_REF_SPEC_VAR_TMPVAR_OP_DATA_CV) \
+       _(3226, ZEND_ASSIGN_OBJ_REF_SPEC_VAR_CV_OP_DATA_VAR) \
+       _(3228, ZEND_ASSIGN_OBJ_REF_SPEC_VAR_CV_OP_DATA_CV) \
+       _(3231, ZEND_ASSIGN_OBJ_REF_SPEC_UNUSED_CONST_OP_DATA_VAR) \
+       _(3233, ZEND_ASSIGN_OBJ_REF_SPEC_UNUSED_CONST_OP_DATA_CV) \
+       _(3236, ZEND_ASSIGN_OBJ_REF_SPEC_UNUSED_TMPVAR_OP_DATA_VAR) \
+       _(3238, ZEND_ASSIGN_OBJ_REF_SPEC_UNUSED_TMPVAR_OP_DATA_CV) \
+       _(3241, ZEND_ASSIGN_OBJ_REF_SPEC_UNUSED_TMPVAR_OP_DATA_VAR) \
+       _(3243, ZEND_ASSIGN_OBJ_REF_SPEC_UNUSED_TMPVAR_OP_DATA_CV) \
+       _(3251, ZEND_ASSIGN_OBJ_REF_SPEC_UNUSED_CV_OP_DATA_VAR) \
+       _(3253, ZEND_ASSIGN_OBJ_REF_SPEC_UNUSED_CV_OP_DATA_CV) \
+       _(3256, ZEND_ASSIGN_OBJ_REF_SPEC_CV_CONST_OP_DATA_VAR) \
+       _(3258, ZEND_ASSIGN_OBJ_REF_SPEC_CV_CONST_OP_DATA_CV) \
+       _(3261, ZEND_ASSIGN_OBJ_REF_SPEC_CV_TMPVAR_OP_DATA_VAR) \
+       _(3263, ZEND_ASSIGN_OBJ_REF_SPEC_CV_TMPVAR_OP_DATA_CV) \
+       _(3266, ZEND_ASSIGN_OBJ_REF_SPEC_CV_TMPVAR_OP_DATA_VAR) \
+       _(3268, ZEND_ASSIGN_OBJ_REF_SPEC_CV_TMPVAR_OP_DATA_CV) \
+       _(3276, ZEND_ASSIGN_OBJ_REF_SPEC_CV_CV_OP_DATA_VAR) \
+       _(3278, ZEND_ASSIGN_OBJ_REF_SPEC_CV_CV_OP_DATA_CV) \
+       _(3279, ZEND_ASSIGN_STATIC_PROP_SPEC_OP_DATA_CONST) \
+       _(3280, ZEND_ASSIGN_STATIC_PROP_SPEC_OP_DATA_TMP) \
+       _(3281, ZEND_ASSIGN_STATIC_PROP_SPEC_OP_DATA_VAR) \
+       _(3283, ZEND_ASSIGN_STATIC_PROP_SPEC_OP_DATA_CV) \
+       _(3284, ZEND_ASSIGN_STATIC_PROP_REF_SPEC) \
        _(3285, ZEND_COPY_TMP_SPEC_TMPVAR_UNUSED) \
        _(3286, ZEND_ADD_ARRAY_UNPACK_SPEC) \
        _(3287, ZEND_JMP_FORWARD_SPEC) \
index 38654cf2ce4b601b79ff229b53e73f95222c1c6e..b1c754f6d3de5d162b715d146d7e4a1ecee4540f 100644 (file)
@@ -223,13 +223,13 @@ static const char *zend_vm_opcodes_names[209] = {
        "ZEND_ISSET_ISEMPTY_CV",
        "ZEND_FETCH_LIST_W",
        "ZEND_ARRAY_KEY_EXISTS",
-       "ZEND_ASSIGN_OBJ_REF",
-       "ZEND_ASSIGN_STATIC_PROP",
-       "ZEND_ASSIGN_STATIC_PROP_REF",
        "ZEND_PRE_INC_STATIC_PROP",
        "ZEND_PRE_DEC_STATIC_PROP",
        "ZEND_POST_INC_STATIC_PROP",
        "ZEND_POST_DEC_STATIC_PROP",
+       "ZEND_ASSIGN_OBJ_REF",
+       "ZEND_ASSIGN_STATIC_PROP",
+       "ZEND_ASSIGN_STATIC_PROP_REF",
        "ZEND_COPY_TMP",
        "ZEND_ADD_ARRAY_UNPACK",
 };
@@ -435,13 +435,13 @@ static uint32_t zend_vm_opcodes_flags[209] = {
        0x00020101,
        0x00000701,
        0x00000707,
-       0x0b040751,
        0x00040000,
-       0x0b040000,
        0x00040000,
        0x00040000,
        0x00040000,
+       0x0b040751,
        0x00040000,
+       0x0b040000,
        0x00000105,
        0x00000000,
 };
index 67fb30fbc976ff6e56c55438fd37ecb5d9c55d4c..d902ac705b49fce4aa8a10ec64a525e68b61ab47 100644 (file)
@@ -270,13 +270,13 @@ END_EXTERN_C()
 #define ZEND_ISSET_ISEMPTY_CV           197
 #define ZEND_FETCH_LIST_W               198
 #define ZEND_ARRAY_KEY_EXISTS           199
-#define ZEND_ASSIGN_OBJ_REF             200
-#define ZEND_ASSIGN_STATIC_PROP         201
-#define ZEND_ASSIGN_STATIC_PROP_REF     202
-#define ZEND_PRE_INC_STATIC_PROP        203
-#define ZEND_PRE_DEC_STATIC_PROP        204
-#define ZEND_POST_INC_STATIC_PROP       205
-#define ZEND_POST_DEC_STATIC_PROP       206
+#define ZEND_PRE_INC_STATIC_PROP        200
+#define ZEND_PRE_DEC_STATIC_PROP        201
+#define ZEND_POST_INC_STATIC_PROP       202
+#define ZEND_POST_DEC_STATIC_PROP       203
+#define ZEND_ASSIGN_OBJ_REF             204
+#define ZEND_ASSIGN_STATIC_PROP         205
+#define ZEND_ASSIGN_STATIC_PROP_REF     206
 #define ZEND_COPY_TMP                   207
 #define ZEND_ADD_ARRAY_UNPACK           208