]> granicus.if.org Git - php/commitdiff
Squashed commit of the following:
authorDmitry Stogov <dmitry@zend.com>
Thu, 17 Mar 2016 19:00:27 +0000 (22:00 +0300)
committerDmitry Stogov <dmitry@zend.com>
Thu, 17 Mar 2016 19:00:27 +0000 (22:00 +0300)
commit 98471821a89d7106de508fc544504ba674025abe
Author: Dmitry Stogov <dmitry@zend.com>
Date:   Thu Mar 17 21:56:04 2016 +0300

    Fixed wrong constant usage

commit 8183b811e74c2989bcd8ab9d870fc3adbe973980
Author: Dmitry Stogov <dmitry@zend.com>
Date:   Thu Mar 17 21:10:23 2016 +0300

    Added ability to serialize and serialize opcode handlers for file-cache

commit 3516b261de7694bb1f34c5ae1adfb2f29dfab7bf
Author: Dmitry Stogov <dmitry@zend.com>
Date:   Thu Mar 17 10:11:59 2016 +0300

    Added missed file

commit f4475a23608623ccbf11b00c1c74df1db55dffa2
Author: Dmitry Stogov <dmitry@zend.com>
Date:   Thu Mar 17 10:00:45 2016 +0300

    Transparently introduce type-specialized opcode handlers.
    This affects only PHP VM, and doesn't change anything else.

Zend/zend_execute.c
Zend/zend_type_info.h [new file with mode: 0644]
Zend/zend_vm.h
Zend/zend_vm_def.h
Zend/zend_vm_execute.h
Zend/zend_vm_execute.skl
Zend/zend_vm_gen.php
ext/opcache/Optimizer/zend_inference.h
ext/opcache/Optimizer/zend_optimizer.c
ext/opcache/zend_file_cache.c

index 2db03c4043ca4c1133e089efc8356bfc04b7b888..2b18ef95b3e5abcacb72a9e6399776d1cf01d2a5 100644 (file)
@@ -40,6 +40,7 @@
 #include "zend_vm.h"
 #include "zend_dtrace.h"
 #include "zend_inheritance.h"
+#include "zend_type_info.h"
 
 /* Virtual current working directory support */
 #include "zend_virtual_cwd.h"
@@ -2610,6 +2611,20 @@ void zend_cleanup_unfinished_execution(zend_execute_data *execute_data, uint32_t
        cleanup_live_vars(execute_data, op_num, catch_op_num);
 }
 
+static void zend_swap_operands(zend_op *op) /* {{{ */
+{
+       znode_op     tmp;
+       zend_uchar   tmp_type;
+
+       tmp          = op->op1;
+       tmp_type     = op->op1_type;
+       op->op1      = op->op2;
+       op->op1_type = op->op2_type;
+       op->op2      = tmp;
+       op->op2_type = tmp_type;
+}
+/* }}} */
+
 #ifdef HAVE_GCC_GLOBAL_REGS
 # if defined(__GNUC__) && ZEND_GCC_VERSION >= 4008 && defined(i386)
 #  define ZEND_VM_FP_GLOBAL_REG "%esi"
diff --git a/Zend/zend_type_info.h b/Zend/zend_type_info.h
new file mode 100644 (file)
index 0000000..bd3c371
--- /dev/null
@@ -0,0 +1,68 @@
+/*
+   +----------------------------------------------------------------------+
+   | Zend Engine                                                          |
+   +----------------------------------------------------------------------+
+   | Copyright (c) 1998-2016 Zend Technologies Ltd. (http://www.zend.com) |
+   +----------------------------------------------------------------------+
+   | This source file is subject to version 2.00 of the Zend license,     |
+   | that is bundled with this package in the file LICENSE, and is        |
+   | available through the world-wide-web at the following url:           |
+   | http://www.zend.com/license/2_00.txt.                                |
+   | If you did not receive a copy of the Zend license and are unable to  |
+   | obtain it through the world-wide-web, please send a note to          |
+   | license@zend.com so we can mail you a copy immediately.              |
+   +----------------------------------------------------------------------+
+   | Authors: Dmitry Stogov <dmitry@zend.com>                             |
+   +----------------------------------------------------------------------+
+*/
+
+/* $Id$ */
+
+#ifndef ZEND_TYPE_INFO_H
+#define ZEND_TYPE_INFO_H
+
+#include "zend_types.h"
+
+#define MAY_BE_UNDEF                (1 << IS_UNDEF)
+#define MAY_BE_NULL                        (1 << IS_NULL)
+#define MAY_BE_FALSE               (1 << IS_FALSE)
+#define MAY_BE_TRUE                        (1 << IS_TRUE)
+#define MAY_BE_LONG                        (1 << IS_LONG)
+#define MAY_BE_DOUBLE              (1 << IS_DOUBLE)
+#define MAY_BE_STRING              (1 << IS_STRING)
+#define MAY_BE_ARRAY               (1 << IS_ARRAY)
+#define MAY_BE_OBJECT              (1 << IS_OBJECT)
+#define MAY_BE_RESOURCE                    (1 << IS_RESOURCE)
+#define MAY_BE_ANY                  (MAY_BE_NULL|MAY_BE_FALSE|MAY_BE_TRUE|MAY_BE_LONG|MAY_BE_DOUBLE|MAY_BE_STRING|MAY_BE_ARRAY|MAY_BE_OBJECT|MAY_BE_RESOURCE)
+#define MAY_BE_REF                  (1 << IS_REFERENCE) /* may be reference */
+
+#define MAY_BE_ARRAY_SHIFT          (IS_REFERENCE)
+
+#define MAY_BE_ARRAY_OF_NULL           (MAY_BE_NULL     << MAY_BE_ARRAY_SHIFT)
+#define MAY_BE_ARRAY_OF_FALSE          (MAY_BE_FALSE    << MAY_BE_ARRAY_SHIFT)
+#define MAY_BE_ARRAY_OF_TRUE           (MAY_BE_TRUE     << MAY_BE_ARRAY_SHIFT)
+#define MAY_BE_ARRAY_OF_LONG           (MAY_BE_LONG     << MAY_BE_ARRAY_SHIFT)
+#define MAY_BE_ARRAY_OF_DOUBLE         (MAY_BE_DOUBLE   << MAY_BE_ARRAY_SHIFT)
+#define MAY_BE_ARRAY_OF_STRING         (MAY_BE_STRING   << MAY_BE_ARRAY_SHIFT)
+#define MAY_BE_ARRAY_OF_ARRAY          (MAY_BE_ARRAY    << MAY_BE_ARRAY_SHIFT)
+#define MAY_BE_ARRAY_OF_OBJECT         (MAY_BE_OBJECT   << MAY_BE_ARRAY_SHIFT)
+#define MAY_BE_ARRAY_OF_RESOURCE       (MAY_BE_RESOURCE << MAY_BE_ARRAY_SHIFT)
+#define MAY_BE_ARRAY_OF_ANY                    (MAY_BE_ANY      << MAY_BE_ARRAY_SHIFT)
+#define MAY_BE_ARRAY_OF_REF                    (MAY_BE_REF      << MAY_BE_ARRAY_SHIFT)
+
+#define MAY_BE_ARRAY_KEY_LONG       (1<<21)
+#define MAY_BE_ARRAY_KEY_STRING     (1<<22)
+#define MAY_BE_ARRAY_KEY_ANY        (MAY_BE_ARRAY_KEY_LONG | MAY_BE_ARRAY_KEY_STRING)
+
+#define MAY_BE_ERROR                (1<<23)
+#define MAY_BE_CLASS                (1<<24)
+
+#endif /* ZEND_TYPE_INFO_H */
+
+/*
+ * Local variables:
+ * tab-width: 4
+ * c-basic-offset: 4
+ * indent-tabs-mode: t
+ * End:
+ */
index cae56c1c0b425509f930d01494b86bd6c24a7ae7..39cbd8ee9c520256ef097d603e1da89978cf8704 100644 (file)
@@ -25,6 +25,9 @@ BEGIN_EXTERN_C()
 
 ZEND_API void zend_vm_use_old_executor(void);
 ZEND_API void zend_vm_set_opcode_handler(zend_op* opcode);
+ZEND_API void zend_vm_set_opcode_handler_ex(zend_op* opcode, uint32_t op1_info, uint32_t op2_info, uint32_t res_info);
+ZEND_API void zend_serialize_opcode_handler(zend_op *op);
+ZEND_API void zend_deserialize_opcode_handler(zend_op *op);
 ZEND_API int zend_vm_call_opcode_handler(zend_execute_data *ex);
 
 END_EXTERN_C()
index 5a68397ce55c4bbdba19f6b922c02f383028f910..22f1a6a3a17f8a37ee879a5222b071b3c9e6ebcc 100644 (file)
@@ -8250,4 +8250,397 @@ ZEND_VM_HANDLER(183, ZEND_BIND_STATIC, CV, CONST, REF)
        ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION();
 }
 
+ZEND_VM_TYPE_SPEC_HANDLER(ZEND_ADD, (res_info == MAY_BE_LONG && op1_info == MAY_BE_LONG && op2_info == MAY_BE_LONG), ZEND_ADD_LONG_NO_OVERFLOW, CONST|TMPVARCV, CONST|TMPVARCV, SPEC(NO_CONST_CONST,COMMUTATIVE))
+{
+       USE_OPLINE
+       zval *op1, *op2, *result;
+
+       op1 = GET_OP1_ZVAL_PTR_UNDEF(BP_VAR_R);
+       op2 = GET_OP2_ZVAL_PTR_UNDEF(BP_VAR_R);
+       result = EX_VAR(opline->result.var);
+       ZVAL_LONG(result, Z_LVAL_P(op1) + Z_LVAL_P(op2));
+       ZEND_VM_NEXT_OPCODE();
+}
+
+ZEND_VM_TYPE_SPEC_HANDLER(ZEND_ADD, (op1_info == MAY_BE_LONG && op2_info == MAY_BE_LONG), ZEND_ADD_LONG, CONST|TMPVARCV, CONST|TMPVARCV, SPEC(NO_CONST_CONST,COMMUTATIVE))
+{
+       USE_OPLINE
+       zval *op1, *op2, *result;
+
+       op1 = GET_OP1_ZVAL_PTR_UNDEF(BP_VAR_R);
+       op2 = GET_OP2_ZVAL_PTR_UNDEF(BP_VAR_R);
+       result = EX_VAR(opline->result.var);
+       fast_long_add_function(result, op1, op2);
+       ZEND_VM_NEXT_OPCODE();
+}
+
+ZEND_VM_TYPE_SPEC_HANDLER(ZEND_ADD, (op1_info == MAY_BE_DOUBLE && op2_info == MAY_BE_DOUBLE), ZEND_ADD_DOUBLE, CONST|TMPVARCV, CONST|TMPVARCV, SPEC(NO_CONST_CONST,COMMUTATIVE))
+{
+       USE_OPLINE
+       zval *op1, *op2, *result;
+
+       op1 = GET_OP1_ZVAL_PTR_UNDEF(BP_VAR_R);
+       op2 = GET_OP2_ZVAL_PTR_UNDEF(BP_VAR_R);
+       result = EX_VAR(opline->result.var);
+       ZVAL_DOUBLE(result, Z_DVAL_P(op1) + Z_DVAL_P(op2));
+       ZEND_VM_NEXT_OPCODE();
+}
+
+ZEND_VM_TYPE_SPEC_HANDLER(ZEND_SUB, (res_info == MAY_BE_LONG && op1_info == MAY_BE_LONG && op2_info == MAY_BE_LONG), ZEND_SUB_LONG_NO_OVERFLOW, CONST|TMPVARCV, CONST|TMPVARCV, SPEC(NO_CONST_CONST))
+{
+       USE_OPLINE
+       zval *op1, *op2, *result;
+
+       op1 = GET_OP1_ZVAL_PTR_UNDEF(BP_VAR_R);
+       op2 = GET_OP2_ZVAL_PTR_UNDEF(BP_VAR_R);
+       result = EX_VAR(opline->result.var);
+       ZVAL_LONG(result, Z_LVAL_P(op1) - Z_LVAL_P(op2));
+       ZEND_VM_NEXT_OPCODE();
+}
+
+ZEND_VM_TYPE_SPEC_HANDLER(ZEND_SUB, (op1_info == MAY_BE_LONG && op2_info == MAY_BE_LONG), ZEND_SUB_LONG, CONST|TMPVARCV, CONST|TMPVARCV, SPEC(NO_CONST_CONST))
+{
+       USE_OPLINE
+       zval *op1, *op2, *result;
+
+       op1 = GET_OP1_ZVAL_PTR_UNDEF(BP_VAR_R);
+       op2 = GET_OP2_ZVAL_PTR_UNDEF(BP_VAR_R);
+       result = EX_VAR(opline->result.var);
+       fast_long_sub_function(result, op1, op2);
+       ZEND_VM_NEXT_OPCODE();
+}
+
+ZEND_VM_TYPE_SPEC_HANDLER(ZEND_SUB, (op1_info == MAY_BE_DOUBLE && op2_info == MAY_BE_DOUBLE), ZEND_SUB_DOUBLE, CONST|TMPVARCV, CONST|TMPVARCV, SPEC(NO_CONST_CONST))
+{
+       USE_OPLINE
+       zval *op1, *op2, *result;
+
+       op1 = GET_OP1_ZVAL_PTR_UNDEF(BP_VAR_R);
+       op2 = GET_OP2_ZVAL_PTR_UNDEF(BP_VAR_R);
+       result = EX_VAR(opline->result.var);
+       ZVAL_DOUBLE(result, Z_DVAL_P(op1) - Z_DVAL_P(op2));
+       ZEND_VM_NEXT_OPCODE();
+}
+
+ZEND_VM_TYPE_SPEC_HANDLER(ZEND_MUL, (res_info == MAY_BE_LONG && op1_info == MAY_BE_LONG && op2_info == MAY_BE_LONG), ZEND_MUL_LONG_NO_OVERFLOW, CONST|TMPVARCV, CONST|TMPVARCV, SPEC(NO_CONST_CONST,COMMUTATIVE))
+{
+       USE_OPLINE
+       zval *op1, *op2, *result;
+
+       op1 = GET_OP1_ZVAL_PTR_UNDEF(BP_VAR_R);
+       op2 = GET_OP2_ZVAL_PTR_UNDEF(BP_VAR_R);
+       result = EX_VAR(opline->result.var);
+       ZVAL_LONG(result, Z_LVAL_P(op1) * Z_LVAL_P(op2));
+       ZEND_VM_NEXT_OPCODE();
+}
+
+ZEND_VM_TYPE_SPEC_HANDLER(ZEND_MUL, (op1_info == MAY_BE_LONG && op2_info == MAY_BE_LONG), ZEND_MUL_LONG, CONST|TMPVARCV, CONST|TMPVARCV, SPEC(NO_CONST_CONST,COMMUTATIVE))
+{
+       USE_OPLINE
+       zval *op1, *op2, *result;
+       zend_long overflow;
+
+       op1 = GET_OP1_ZVAL_PTR_UNDEF(BP_VAR_R);
+       op2 = GET_OP2_ZVAL_PTR_UNDEF(BP_VAR_R);
+       result = EX_VAR(opline->result.var);
+       ZEND_SIGNED_MULTIPLY_LONG(Z_LVAL_P(op1), Z_LVAL_P(op2), Z_LVAL_P(result), Z_DVAL_P(result), overflow);
+       Z_TYPE_INFO_P(result) = overflow ? IS_DOUBLE : IS_LONG;
+       ZEND_VM_NEXT_OPCODE();
+}
+
+ZEND_VM_TYPE_SPEC_HANDLER(ZEND_MUL, (op1_info == MAY_BE_DOUBLE && op2_info == MAY_BE_DOUBLE), ZEND_MUL_DOUBLE, CONST|TMPVARCV, CONST|TMPVARCV, SPEC(NO_CONST_CONST,COMMUTATIVE))
+{
+       USE_OPLINE
+       zval *op1, *op2, *result;
+
+       op1 = GET_OP1_ZVAL_PTR_UNDEF(BP_VAR_R);
+       op2 = GET_OP2_ZVAL_PTR_UNDEF(BP_VAR_R);
+       result = EX_VAR(opline->result.var);
+       ZVAL_DOUBLE(result, Z_DVAL_P(op1) * Z_DVAL_P(op2));
+       ZEND_VM_NEXT_OPCODE();
+}
+
+ZEND_VM_TYPE_SPEC_HANDLER(ZEND_IS_EQUAL, (op1_info == MAY_BE_LONG && op2_info == MAY_BE_LONG), ZEND_IS_EQUAL_LONG, CONST|TMPVARCV, CONST|TMPVARCV, SPEC(SMART_BRANCH,NO_CONST_CONST,COMMUTATIVE))
+{
+       USE_OPLINE
+       zval *op1, *op2;
+       int result;
+
+       op1 = GET_OP1_ZVAL_PTR_UNDEF(BP_VAR_R);
+       op2 = GET_OP2_ZVAL_PTR_UNDEF(BP_VAR_R);
+       result = (Z_LVAL_P(op1) == Z_LVAL_P(op2));
+       ZEND_VM_SMART_BRANCH(result, 0);
+       ZVAL_BOOL(EX_VAR(opline->result.var), result);
+       ZEND_VM_NEXT_OPCODE();
+}
+
+ZEND_VM_TYPE_SPEC_HANDLER(ZEND_IS_EQUAL, (op1_info == MAY_BE_DOUBLE && op2_info == MAY_BE_DOUBLE), ZEND_IS_EQUAL_DOUBLE, CONST|TMPVARCV, CONST|TMPVARCV, SPEC(SMART_BRANCH,NO_CONST_CONST,COMMUTATIVE))
+{
+       USE_OPLINE
+       zval *op1, *op2;
+       int result;
+
+       op1 = GET_OP1_ZVAL_PTR_UNDEF(BP_VAR_R);
+       op2 = GET_OP2_ZVAL_PTR_UNDEF(BP_VAR_R);
+       result = (Z_DVAL_P(op1) == Z_DVAL_P(op2));
+       ZEND_VM_SMART_BRANCH(result, 0);
+       ZVAL_BOOL(EX_VAR(opline->result.var), result);
+       ZEND_VM_NEXT_OPCODE();
+}
+
+ZEND_VM_TYPE_SPEC_HANDLER(ZEND_IS_NOT_EQUAL, (op1_info == MAY_BE_LONG && op2_info == MAY_BE_LONG), ZEND_IS_NOT_EQUAL_LONG, CONST|TMPVARCV, CONST|TMPVARCV, SPEC(SMART_BRANCH,NO_CONST_CONST,COMMUTATIVE))
+{
+       USE_OPLINE
+       zval *op1, *op2;
+       int result;
+
+       op1 = GET_OP1_ZVAL_PTR_UNDEF(BP_VAR_R);
+       op2 = GET_OP2_ZVAL_PTR_UNDEF(BP_VAR_R);
+       result = (Z_LVAL_P(op1) != Z_LVAL_P(op2));
+       ZEND_VM_SMART_BRANCH(result, 0);
+       ZVAL_BOOL(EX_VAR(opline->result.var), result);
+       ZEND_VM_NEXT_OPCODE();
+}
+
+ZEND_VM_TYPE_SPEC_HANDLER(ZEND_IS_NOT_EQUAL, (op1_info == MAY_BE_DOUBLE && op2_info == MAY_BE_DOUBLE), ZEND_IS_NOT_EQUAL_DOUBLE, CONST|TMPVARCV, CONST|TMPVARCV, SPEC(SMART_BRANCH,NO_CONST_CONST,COMMUTATIVE))
+{
+       USE_OPLINE
+       zval *op1, *op2;
+       int result;
+
+       op1 = GET_OP1_ZVAL_PTR_UNDEF(BP_VAR_R);
+       op2 = GET_OP2_ZVAL_PTR_UNDEF(BP_VAR_R);
+       result = (Z_DVAL_P(op1) != Z_DVAL_P(op2));
+       ZEND_VM_SMART_BRANCH(result, 0);
+       ZVAL_BOOL(EX_VAR(opline->result.var), result);
+       ZEND_VM_NEXT_OPCODE();
+}
+
+ZEND_VM_TYPE_SPEC_HANDLER(ZEND_IS_SMALLER, (op1_info == MAY_BE_LONG && op2_info == MAY_BE_LONG), ZEND_IS_SMALLER_LONG, CONST|TMPVARCV, CONST|TMPVARCV, SPEC(SMART_BRANCH,NO_CONST_CONST))
+{
+       USE_OPLINE
+       zval *op1, *op2;
+       int result;
+
+       op1 = GET_OP1_ZVAL_PTR_UNDEF(BP_VAR_R);
+       op2 = GET_OP2_ZVAL_PTR_UNDEF(BP_VAR_R);
+       result = (Z_LVAL_P(op1) < Z_LVAL_P(op2));
+       ZEND_VM_SMART_BRANCH(result, 0);
+       ZVAL_BOOL(EX_VAR(opline->result.var), result);
+       ZEND_VM_NEXT_OPCODE();
+}
+
+ZEND_VM_TYPE_SPEC_HANDLER(ZEND_IS_SMALLER, (op1_info == MAY_BE_DOUBLE && op2_info == MAY_BE_DOUBLE), ZEND_IS_SMALLER_DOUBLE, CONST|TMPVARCV, CONST|TMPVARCV, SPEC(SMART_BRANCH,NO_CONST_CONST))
+{
+       USE_OPLINE
+       zval *op1, *op2;
+       int result;
+
+       op1 = GET_OP1_ZVAL_PTR_UNDEF(BP_VAR_R);
+       op2 = GET_OP2_ZVAL_PTR_UNDEF(BP_VAR_R);
+       result = (Z_DVAL_P(op1) < Z_DVAL_P(op2));
+       ZEND_VM_SMART_BRANCH(result, 0);
+       ZVAL_BOOL(EX_VAR(opline->result.var), result);
+       ZEND_VM_NEXT_OPCODE();
+}
+
+ZEND_VM_TYPE_SPEC_HANDLER(ZEND_IS_SMALLER_OR_EQUAL, (op1_info == MAY_BE_LONG && op2_info == MAY_BE_LONG), ZEND_IS_SMALLER_OR_EQUAL_LONG, CONST|TMPVARCV, CONST|TMPVARCV, SPEC(SMART_BRANCH,NO_CONST_CONST))
+{
+       USE_OPLINE
+       zval *op1, *op2;
+       int result;
+
+       op1 = GET_OP1_ZVAL_PTR_UNDEF(BP_VAR_R);
+       op2 = GET_OP2_ZVAL_PTR_UNDEF(BP_VAR_R);
+       result = (Z_LVAL_P(op1) <= Z_LVAL_P(op2));
+       ZEND_VM_SMART_BRANCH(result, 0);
+       ZVAL_BOOL(EX_VAR(opline->result.var), result);
+       ZEND_VM_NEXT_OPCODE();
+}
+
+ZEND_VM_TYPE_SPEC_HANDLER(ZEND_IS_SMALLER_OR_EQUAL, (op1_info == MAY_BE_DOUBLE && op2_info == MAY_BE_DOUBLE), ZEND_IS_SMALLER_OR_EQUAL_DOUBLE, CONST|TMPVARCV, CONST|TMPVARCV, SPEC(SMART_BRANCH,NO_CONST_CONST))
+{
+       USE_OPLINE
+       zval *op1, *op2;
+       int result;
+
+       op1 = GET_OP1_ZVAL_PTR_UNDEF(BP_VAR_R);
+       op2 = GET_OP2_ZVAL_PTR_UNDEF(BP_VAR_R);
+       result = (Z_DVAL_P(op1) <= Z_DVAL_P(op2));
+       ZEND_VM_SMART_BRANCH(result, 0);
+       ZVAL_BOOL(EX_VAR(opline->result.var), result);
+       ZEND_VM_NEXT_OPCODE();
+}
+
+ZEND_VM_TYPE_SPEC_HANDLER(ZEND_PRE_INC, (res_info == MAY_BE_LONG && op1_info == MAY_BE_LONG), ZEND_PRE_INC_LONG_NO_OVERFLOW, TMPVARCV, ANY, SPEC(RETVAL))
+{
+       USE_OPLINE
+       zval *var_ptr;
+
+       var_ptr = GET_OP1_ZVAL_PTR_PTR_UNDEF(BP_VAR_RW);
+       Z_LVAL_P(var_ptr)++;
+       if (UNEXPECTED(RETURN_VALUE_USED(opline))) {
+               ZVAL_LONG(EX_VAR(opline->result.var), Z_LVAL_P(var_ptr));
+       }
+       ZEND_VM_NEXT_OPCODE();
+}
+
+ZEND_VM_TYPE_SPEC_HANDLER(ZEND_PRE_INC, (op1_info == MAY_BE_LONG), ZEND_PRE_INC_LONG, TMPVARCV, ANY, SPEC(RETVAL))
+{
+       USE_OPLINE
+       zval *var_ptr;
+
+       var_ptr = GET_OP1_ZVAL_PTR_PTR_UNDEF(BP_VAR_RW);
+       fast_long_increment_function(var_ptr);
+       if (UNEXPECTED(RETURN_VALUE_USED(opline))) {
+               ZVAL_COPY_VALUE(EX_VAR(opline->result.var), var_ptr);
+       }
+       ZEND_VM_NEXT_OPCODE();
+}
+
+ZEND_VM_TYPE_SPEC_HANDLER(ZEND_PRE_INC, (op1_info == (MAY_BE_LONG|MAY_BE_DOUBLE)), ZEND_PRE_INC_LONG_OR_DOUBLE, TMPVARCV, ANY, SPEC(RETVAL))
+{
+       USE_OPLINE
+       zval *var_ptr;
+
+       var_ptr = GET_OP1_ZVAL_PTR_PTR_UNDEF(BP_VAR_RW);
+       if (EXPECTED(Z_TYPE_P(var_ptr) == IS_LONG)) {
+               fast_long_increment_function(var_ptr);
+       } else {
+               Z_DVAL_P(var_ptr)++;
+       }
+       if (UNEXPECTED(RETURN_VALUE_USED(opline))) {
+               ZVAL_COPY_VALUE(EX_VAR(opline->result.var), var_ptr);
+       }
+       ZEND_VM_NEXT_OPCODE();
+}
+
+ZEND_VM_TYPE_SPEC_HANDLER(ZEND_PRE_DEC, (res_info == MAY_BE_LONG && op1_info == MAY_BE_LONG), ZEND_PRE_DEC_LONG_NO_OVERFLOW, TMPVARCV, ANY, SPEC(RETVAL))
+{
+       USE_OPLINE
+       zval *var_ptr;
+
+       var_ptr = GET_OP1_ZVAL_PTR_PTR_UNDEF(BP_VAR_RW);
+       Z_LVAL_P(var_ptr)--;
+       if (UNEXPECTED(RETURN_VALUE_USED(opline))) {
+               ZVAL_LONG(EX_VAR(opline->result.var), Z_LVAL_P(var_ptr));
+       }
+       ZEND_VM_NEXT_OPCODE();
+}
+
+ZEND_VM_TYPE_SPEC_HANDLER(ZEND_PRE_DEC, (op1_info == MAY_BE_LONG), ZEND_PRE_DEC_LONG, TMPVARCV, ANY, SPEC(RETVAL))
+{
+       USE_OPLINE
+       zval *var_ptr;
+
+       var_ptr = GET_OP1_ZVAL_PTR_PTR_UNDEF(BP_VAR_RW);
+       fast_long_decrement_function(var_ptr);
+       if (UNEXPECTED(RETURN_VALUE_USED(opline))) {
+               ZVAL_COPY_VALUE(EX_VAR(opline->result.var), var_ptr);
+       }
+       ZEND_VM_NEXT_OPCODE();
+}
+
+ZEND_VM_TYPE_SPEC_HANDLER(ZEND_PRE_DEC, (op1_info == (MAY_BE_LONG|MAY_BE_DOUBLE)), ZEND_PRE_DEC_LONG_OR_DOUBLE, TMPVARCV, ANY, SPEC(RETVAL))
+{
+       USE_OPLINE
+       zval *var_ptr;
+
+       var_ptr = GET_OP1_ZVAL_PTR_PTR_UNDEF(BP_VAR_RW);
+       if (EXPECTED(Z_TYPE_P(var_ptr) == IS_LONG)) {
+               fast_long_decrement_function(var_ptr);
+       } else {
+               Z_DVAL_P(var_ptr)--;
+       }
+       if (UNEXPECTED(RETURN_VALUE_USED(opline))) {
+               ZVAL_COPY_VALUE(EX_VAR(opline->result.var), var_ptr);
+       }
+       ZEND_VM_NEXT_OPCODE();
+}
+
+ZEND_VM_TYPE_SPEC_HANDLER(ZEND_POST_INC, (res_info == MAY_BE_LONG && op1_info == MAY_BE_LONG), ZEND_POST_INC_LONG_NO_OVERFLOW, TMPVARCV, ANY)
+{
+       USE_OPLINE
+       zval *var_ptr;
+
+       var_ptr = GET_OP1_ZVAL_PTR_PTR_UNDEF(BP_VAR_RW);
+       ZVAL_LONG(EX_VAR(opline->result.var), Z_LVAL_P(var_ptr));
+       Z_LVAL_P(var_ptr)++;
+       ZEND_VM_NEXT_OPCODE();
+}
+
+ZEND_VM_TYPE_SPEC_HANDLER(ZEND_POST_INC, (op1_info == MAY_BE_LONG), ZEND_POST_INC_LONG, TMPVARCV, ANY)
+{
+       USE_OPLINE
+       zval *var_ptr;
+
+       var_ptr = GET_OP1_ZVAL_PTR_PTR_UNDEF(BP_VAR_RW);
+       ZVAL_LONG(EX_VAR(opline->result.var), Z_LVAL_P(var_ptr));
+       fast_long_increment_function(var_ptr);
+       ZEND_VM_NEXT_OPCODE();
+}
+
+ZEND_VM_TYPE_SPEC_HANDLER(ZEND_POST_INC, (op1_info == (MAY_BE_LONG|MAY_BE_DOUBLE)), ZEND_POST_INC_LONG_OR_DOUBLE, TMPVARCV, ANY)
+{
+       USE_OPLINE
+       zval *var_ptr;
+
+       var_ptr = GET_OP1_ZVAL_PTR_PTR_UNDEF(BP_VAR_RW);
+       ZVAL_COPY_VALUE(EX_VAR(opline->result.var), var_ptr);
+       if (EXPECTED(Z_TYPE_P(var_ptr) == IS_LONG)) {
+               fast_long_increment_function(var_ptr);
+       } else {
+               Z_DVAL_P(var_ptr)++;
+       }
+       ZEND_VM_NEXT_OPCODE();
+}
+
+ZEND_VM_TYPE_SPEC_HANDLER(ZEND_POST_DEC, (res_info == MAY_BE_LONG && op1_info == MAY_BE_LONG), ZEND_POST_DEC_LONG_NO_OVERFLOW, TMPVARCV, ANY)
+{
+       USE_OPLINE
+       zval *var_ptr;
+
+       var_ptr = GET_OP1_ZVAL_PTR_PTR_UNDEF(BP_VAR_RW);
+       ZVAL_LONG(EX_VAR(opline->result.var), Z_LVAL_P(var_ptr));
+       Z_LVAL_P(var_ptr)--;
+       ZEND_VM_NEXT_OPCODE();
+}
+
+ZEND_VM_TYPE_SPEC_HANDLER(ZEND_POST_DEC, (op1_info == MAY_BE_LONG), ZEND_POST_DEC_LONG, TMPVARCV, ANY)
+{
+       USE_OPLINE
+       zval *var_ptr;
+
+       var_ptr = GET_OP1_ZVAL_PTR_PTR_UNDEF(BP_VAR_RW);
+       ZVAL_LONG(EX_VAR(opline->result.var), Z_LVAL_P(var_ptr));
+       fast_long_decrement_function(var_ptr);
+       ZEND_VM_NEXT_OPCODE();
+}
+
+ZEND_VM_TYPE_SPEC_HANDLER(ZEND_POST_DEC, (op1_info == (MAY_BE_LONG|MAY_BE_DOUBLE)), ZEND_POST_DEC_LONG_OR_DOUBLE, TMPVARCV, ANY)
+{
+       USE_OPLINE
+       zval *var_ptr;
+
+       var_ptr = GET_OP1_ZVAL_PTR_PTR_UNDEF(BP_VAR_RW);
+       ZVAL_COPY_VALUE(EX_VAR(opline->result.var), var_ptr);
+       if (EXPECTED(Z_TYPE_P(var_ptr) == IS_LONG)) {
+               fast_long_decrement_function(var_ptr);
+       } else {
+               Z_DVAL_P(var_ptr)--;
+       }
+       ZEND_VM_NEXT_OPCODE();
+}
+
+ZEND_VM_TYPE_SPEC_HANDLER(ZEND_QM_ASSIGN, (!(op1_info & ((MAY_BE_ANY|MAY_BE_UNDEF)-(MAY_BE_NULL|MAY_BE_FALSE|MAY_BE_TRUE|MAY_BE_LONG|MAY_BE_DOUBLE)))), ZEND_QM_ASSIGN_NOREF, CONST|TMPVARCV, ANY)
+{
+       USE_OPLINE
+       zend_free_op free_op1;
+       zval *value;
+
+       value = GET_OP1_ZVAL_PTR_UNDEF(BP_VAR_R);
+       ZVAL_COPY_VALUE(EX_VAR(opline->result.var), value);
+       ZEND_VM_NEXT_OPCODE();
+}
+
 ZEND_VM_DEFINE_OP(137, ZEND_OP_DATA);
index fa306954b0da8fb8c66a79eec2062436a38e0a55..b0b8035ba251f676fe91601b2a542fd649e84258 100644 (file)
@@ -316,6 +316,7 @@ static zend_uchar zend_user_opcodes[256] = {0,
 
 static const uint32_t *zend_spec_handlers;
 static const void **zend_opcode_handlers;
+static int zend_handlers_count;
 static const void *zend_vm_get_opcode_handler(zend_uchar opcode, const zend_op* op);
 
 
@@ -4697,6 +4698,17 @@ static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_DEFINED_SPEC_CONST_HANDLER(ZEN
        ZEND_VM_NEXT_OPCODE();
 }
 
+static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_QM_ASSIGN_NOREF_SPEC_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS)
+{
+       USE_OPLINE
+
+       zval *value;
+
+       value = EX_CONSTANT(opline->op1);
+       ZVAL_COPY_VALUE(EX_VAR(opline->result.var), value);
+       ZEND_VM_NEXT_OPCODE();
+}
+
 static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_ADD_SPEC_CONST_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS)
 {
        USE_OPLINE
@@ -12067,6 +12079,452 @@ isset_no_object:
        ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION();
 }
 
+static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_ADD_LONG_NO_OVERFLOW_SPEC_CONST_TMPVARCV_HANDLER(ZEND_OPCODE_HANDLER_ARGS)
+{
+       USE_OPLINE
+       zval *op1, *op2, *result;
+
+       op1 = EX_CONSTANT(opline->op1);
+       op2 = EX_VAR(opline->op2.var);
+       result = EX_VAR(opline->result.var);
+       ZVAL_LONG(result, Z_LVAL_P(op1) + Z_LVAL_P(op2));
+       ZEND_VM_NEXT_OPCODE();
+}
+
+static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_ADD_LONG_SPEC_CONST_TMPVARCV_HANDLER(ZEND_OPCODE_HANDLER_ARGS)
+{
+       USE_OPLINE
+       zval *op1, *op2, *result;
+
+       op1 = EX_CONSTANT(opline->op1);
+       op2 = EX_VAR(opline->op2.var);
+       result = EX_VAR(opline->result.var);
+       fast_long_add_function(result, op1, op2);
+       ZEND_VM_NEXT_OPCODE();
+}
+
+static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_ADD_DOUBLE_SPEC_CONST_TMPVARCV_HANDLER(ZEND_OPCODE_HANDLER_ARGS)
+{
+       USE_OPLINE
+       zval *op1, *op2, *result;
+
+       op1 = EX_CONSTANT(opline->op1);
+       op2 = EX_VAR(opline->op2.var);
+       result = EX_VAR(opline->result.var);
+       ZVAL_DOUBLE(result, Z_DVAL_P(op1) + Z_DVAL_P(op2));
+       ZEND_VM_NEXT_OPCODE();
+}
+
+static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_SUB_LONG_NO_OVERFLOW_SPEC_CONST_TMPVARCV_HANDLER(ZEND_OPCODE_HANDLER_ARGS)
+{
+       USE_OPLINE
+       zval *op1, *op2, *result;
+
+       op1 = EX_CONSTANT(opline->op1);
+       op2 = EX_VAR(opline->op2.var);
+       result = EX_VAR(opline->result.var);
+       ZVAL_LONG(result, Z_LVAL_P(op1) - Z_LVAL_P(op2));
+       ZEND_VM_NEXT_OPCODE();
+}
+
+static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_SUB_LONG_SPEC_CONST_TMPVARCV_HANDLER(ZEND_OPCODE_HANDLER_ARGS)
+{
+       USE_OPLINE
+       zval *op1, *op2, *result;
+
+       op1 = EX_CONSTANT(opline->op1);
+       op2 = EX_VAR(opline->op2.var);
+       result = EX_VAR(opline->result.var);
+       fast_long_sub_function(result, op1, op2);
+       ZEND_VM_NEXT_OPCODE();
+}
+
+static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_SUB_DOUBLE_SPEC_CONST_TMPVARCV_HANDLER(ZEND_OPCODE_HANDLER_ARGS)
+{
+       USE_OPLINE
+       zval *op1, *op2, *result;
+
+       op1 = EX_CONSTANT(opline->op1);
+       op2 = EX_VAR(opline->op2.var);
+       result = EX_VAR(opline->result.var);
+       ZVAL_DOUBLE(result, Z_DVAL_P(op1) - Z_DVAL_P(op2));
+       ZEND_VM_NEXT_OPCODE();
+}
+
+static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_MUL_LONG_NO_OVERFLOW_SPEC_CONST_TMPVARCV_HANDLER(ZEND_OPCODE_HANDLER_ARGS)
+{
+       USE_OPLINE
+       zval *op1, *op2, *result;
+
+       op1 = EX_CONSTANT(opline->op1);
+       op2 = EX_VAR(opline->op2.var);
+       result = EX_VAR(opline->result.var);
+       ZVAL_LONG(result, Z_LVAL_P(op1) * Z_LVAL_P(op2));
+       ZEND_VM_NEXT_OPCODE();
+}
+
+static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_MUL_LONG_SPEC_CONST_TMPVARCV_HANDLER(ZEND_OPCODE_HANDLER_ARGS)
+{
+       USE_OPLINE
+       zval *op1, *op2, *result;
+       zend_long overflow;
+
+       op1 = EX_CONSTANT(opline->op1);
+       op2 = EX_VAR(opline->op2.var);
+       result = EX_VAR(opline->result.var);
+       ZEND_SIGNED_MULTIPLY_LONG(Z_LVAL_P(op1), Z_LVAL_P(op2), Z_LVAL_P(result), Z_DVAL_P(result), overflow);
+       Z_TYPE_INFO_P(result) = overflow ? IS_DOUBLE : IS_LONG;
+       ZEND_VM_NEXT_OPCODE();
+}
+
+static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_MUL_DOUBLE_SPEC_CONST_TMPVARCV_HANDLER(ZEND_OPCODE_HANDLER_ARGS)
+{
+       USE_OPLINE
+       zval *op1, *op2, *result;
+
+       op1 = EX_CONSTANT(opline->op1);
+       op2 = EX_VAR(opline->op2.var);
+       result = EX_VAR(opline->result.var);
+       ZVAL_DOUBLE(result, Z_DVAL_P(op1) * Z_DVAL_P(op2));
+       ZEND_VM_NEXT_OPCODE();
+}
+
+static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_IS_EQUAL_LONG_SPEC_CONST_TMPVARCV_HANDLER(ZEND_OPCODE_HANDLER_ARGS)
+{
+       USE_OPLINE
+       zval *op1, *op2;
+       int result;
+
+       op1 = EX_CONSTANT(opline->op1);
+       op2 = EX_VAR(opline->op2.var);
+       result = (Z_LVAL_P(op1) == Z_LVAL_P(op2));
+
+       ZVAL_BOOL(EX_VAR(opline->result.var), result);
+       ZEND_VM_NEXT_OPCODE();
+}
+
+static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_IS_EQUAL_LONG_SPEC_CONST_TMPVARCV_JMPZ_HANDLER(ZEND_OPCODE_HANDLER_ARGS)
+{
+       USE_OPLINE
+       zval *op1, *op2;
+       int result;
+
+       op1 = EX_CONSTANT(opline->op1);
+       op2 = EX_VAR(opline->op2.var);
+       result = (Z_LVAL_P(op1) == Z_LVAL_P(op2));
+       ZEND_VM_SMART_BRANCH_JMPZ(result, 0);
+       ZVAL_BOOL(EX_VAR(opline->result.var), result);
+       ZEND_VM_NEXT_OPCODE();
+}
+
+static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_IS_EQUAL_LONG_SPEC_CONST_TMPVARCV_JMPNZ_HANDLER(ZEND_OPCODE_HANDLER_ARGS)
+{
+       USE_OPLINE
+       zval *op1, *op2;
+       int result;
+
+       op1 = EX_CONSTANT(opline->op1);
+       op2 = EX_VAR(opline->op2.var);
+       result = (Z_LVAL_P(op1) == Z_LVAL_P(op2));
+       ZEND_VM_SMART_BRANCH_JMPNZ(result, 0);
+       ZVAL_BOOL(EX_VAR(opline->result.var), result);
+       ZEND_VM_NEXT_OPCODE();
+}
+
+static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_IS_EQUAL_DOUBLE_SPEC_CONST_TMPVARCV_HANDLER(ZEND_OPCODE_HANDLER_ARGS)
+{
+       USE_OPLINE
+       zval *op1, *op2;
+       int result;
+
+       op1 = EX_CONSTANT(opline->op1);
+       op2 = EX_VAR(opline->op2.var);
+       result = (Z_DVAL_P(op1) == Z_DVAL_P(op2));
+
+       ZVAL_BOOL(EX_VAR(opline->result.var), result);
+       ZEND_VM_NEXT_OPCODE();
+}
+
+static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_IS_EQUAL_DOUBLE_SPEC_CONST_TMPVARCV_JMPZ_HANDLER(ZEND_OPCODE_HANDLER_ARGS)
+{
+       USE_OPLINE
+       zval *op1, *op2;
+       int result;
+
+       op1 = EX_CONSTANT(opline->op1);
+       op2 = EX_VAR(opline->op2.var);
+       result = (Z_DVAL_P(op1) == Z_DVAL_P(op2));
+       ZEND_VM_SMART_BRANCH_JMPZ(result, 0);
+       ZVAL_BOOL(EX_VAR(opline->result.var), result);
+       ZEND_VM_NEXT_OPCODE();
+}
+
+static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_IS_EQUAL_DOUBLE_SPEC_CONST_TMPVARCV_JMPNZ_HANDLER(ZEND_OPCODE_HANDLER_ARGS)
+{
+       USE_OPLINE
+       zval *op1, *op2;
+       int result;
+
+       op1 = EX_CONSTANT(opline->op1);
+       op2 = EX_VAR(opline->op2.var);
+       result = (Z_DVAL_P(op1) == Z_DVAL_P(op2));
+       ZEND_VM_SMART_BRANCH_JMPNZ(result, 0);
+       ZVAL_BOOL(EX_VAR(opline->result.var), result);
+       ZEND_VM_NEXT_OPCODE();
+}
+
+static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_IS_NOT_EQUAL_LONG_SPEC_CONST_TMPVARCV_HANDLER(ZEND_OPCODE_HANDLER_ARGS)
+{
+       USE_OPLINE
+       zval *op1, *op2;
+       int result;
+
+       op1 = EX_CONSTANT(opline->op1);
+       op2 = EX_VAR(opline->op2.var);
+       result = (Z_LVAL_P(op1) != Z_LVAL_P(op2));
+
+       ZVAL_BOOL(EX_VAR(opline->result.var), result);
+       ZEND_VM_NEXT_OPCODE();
+}
+
+static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_IS_NOT_EQUAL_LONG_SPEC_CONST_TMPVARCV_JMPZ_HANDLER(ZEND_OPCODE_HANDLER_ARGS)
+{
+       USE_OPLINE
+       zval *op1, *op2;
+       int result;
+
+       op1 = EX_CONSTANT(opline->op1);
+       op2 = EX_VAR(opline->op2.var);
+       result = (Z_LVAL_P(op1) != Z_LVAL_P(op2));
+       ZEND_VM_SMART_BRANCH_JMPZ(result, 0);
+       ZVAL_BOOL(EX_VAR(opline->result.var), result);
+       ZEND_VM_NEXT_OPCODE();
+}
+
+static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_IS_NOT_EQUAL_LONG_SPEC_CONST_TMPVARCV_JMPNZ_HANDLER(ZEND_OPCODE_HANDLER_ARGS)
+{
+       USE_OPLINE
+       zval *op1, *op2;
+       int result;
+
+       op1 = EX_CONSTANT(opline->op1);
+       op2 = EX_VAR(opline->op2.var);
+       result = (Z_LVAL_P(op1) != Z_LVAL_P(op2));
+       ZEND_VM_SMART_BRANCH_JMPNZ(result, 0);
+       ZVAL_BOOL(EX_VAR(opline->result.var), result);
+       ZEND_VM_NEXT_OPCODE();
+}
+
+static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_IS_NOT_EQUAL_DOUBLE_SPEC_CONST_TMPVARCV_HANDLER(ZEND_OPCODE_HANDLER_ARGS)
+{
+       USE_OPLINE
+       zval *op1, *op2;
+       int result;
+
+       op1 = EX_CONSTANT(opline->op1);
+       op2 = EX_VAR(opline->op2.var);
+       result = (Z_DVAL_P(op1) != Z_DVAL_P(op2));
+
+       ZVAL_BOOL(EX_VAR(opline->result.var), result);
+       ZEND_VM_NEXT_OPCODE();
+}
+
+static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_IS_NOT_EQUAL_DOUBLE_SPEC_CONST_TMPVARCV_JMPZ_HANDLER(ZEND_OPCODE_HANDLER_ARGS)
+{
+       USE_OPLINE
+       zval *op1, *op2;
+       int result;
+
+       op1 = EX_CONSTANT(opline->op1);
+       op2 = EX_VAR(opline->op2.var);
+       result = (Z_DVAL_P(op1) != Z_DVAL_P(op2));
+       ZEND_VM_SMART_BRANCH_JMPZ(result, 0);
+       ZVAL_BOOL(EX_VAR(opline->result.var), result);
+       ZEND_VM_NEXT_OPCODE();
+}
+
+static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_IS_NOT_EQUAL_DOUBLE_SPEC_CONST_TMPVARCV_JMPNZ_HANDLER(ZEND_OPCODE_HANDLER_ARGS)
+{
+       USE_OPLINE
+       zval *op1, *op2;
+       int result;
+
+       op1 = EX_CONSTANT(opline->op1);
+       op2 = EX_VAR(opline->op2.var);
+       result = (Z_DVAL_P(op1) != Z_DVAL_P(op2));
+       ZEND_VM_SMART_BRANCH_JMPNZ(result, 0);
+       ZVAL_BOOL(EX_VAR(opline->result.var), result);
+       ZEND_VM_NEXT_OPCODE();
+}
+
+static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_IS_SMALLER_LONG_SPEC_CONST_TMPVARCV_HANDLER(ZEND_OPCODE_HANDLER_ARGS)
+{
+       USE_OPLINE
+       zval *op1, *op2;
+       int result;
+
+       op1 = EX_CONSTANT(opline->op1);
+       op2 = EX_VAR(opline->op2.var);
+       result = (Z_LVAL_P(op1) < Z_LVAL_P(op2));
+
+       ZVAL_BOOL(EX_VAR(opline->result.var), result);
+       ZEND_VM_NEXT_OPCODE();
+}
+
+static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_IS_SMALLER_LONG_SPEC_CONST_TMPVARCV_JMPZ_HANDLER(ZEND_OPCODE_HANDLER_ARGS)
+{
+       USE_OPLINE
+       zval *op1, *op2;
+       int result;
+
+       op1 = EX_CONSTANT(opline->op1);
+       op2 = EX_VAR(opline->op2.var);
+       result = (Z_LVAL_P(op1) < Z_LVAL_P(op2));
+       ZEND_VM_SMART_BRANCH_JMPZ(result, 0);
+       ZVAL_BOOL(EX_VAR(opline->result.var), result);
+       ZEND_VM_NEXT_OPCODE();
+}
+
+static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_IS_SMALLER_LONG_SPEC_CONST_TMPVARCV_JMPNZ_HANDLER(ZEND_OPCODE_HANDLER_ARGS)
+{
+       USE_OPLINE
+       zval *op1, *op2;
+       int result;
+
+       op1 = EX_CONSTANT(opline->op1);
+       op2 = EX_VAR(opline->op2.var);
+       result = (Z_LVAL_P(op1) < Z_LVAL_P(op2));
+       ZEND_VM_SMART_BRANCH_JMPNZ(result, 0);
+       ZVAL_BOOL(EX_VAR(opline->result.var), result);
+       ZEND_VM_NEXT_OPCODE();
+}
+
+static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_IS_SMALLER_DOUBLE_SPEC_CONST_TMPVARCV_HANDLER(ZEND_OPCODE_HANDLER_ARGS)
+{
+       USE_OPLINE
+       zval *op1, *op2;
+       int result;
+
+       op1 = EX_CONSTANT(opline->op1);
+       op2 = EX_VAR(opline->op2.var);
+       result = (Z_DVAL_P(op1) < Z_DVAL_P(op2));
+
+       ZVAL_BOOL(EX_VAR(opline->result.var), result);
+       ZEND_VM_NEXT_OPCODE();
+}
+
+static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_IS_SMALLER_DOUBLE_SPEC_CONST_TMPVARCV_JMPZ_HANDLER(ZEND_OPCODE_HANDLER_ARGS)
+{
+       USE_OPLINE
+       zval *op1, *op2;
+       int result;
+
+       op1 = EX_CONSTANT(opline->op1);
+       op2 = EX_VAR(opline->op2.var);
+       result = (Z_DVAL_P(op1) < Z_DVAL_P(op2));
+       ZEND_VM_SMART_BRANCH_JMPZ(result, 0);
+       ZVAL_BOOL(EX_VAR(opline->result.var), result);
+       ZEND_VM_NEXT_OPCODE();
+}
+
+static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_IS_SMALLER_DOUBLE_SPEC_CONST_TMPVARCV_JMPNZ_HANDLER(ZEND_OPCODE_HANDLER_ARGS)
+{
+       USE_OPLINE
+       zval *op1, *op2;
+       int result;
+
+       op1 = EX_CONSTANT(opline->op1);
+       op2 = EX_VAR(opline->op2.var);
+       result = (Z_DVAL_P(op1) < Z_DVAL_P(op2));
+       ZEND_VM_SMART_BRANCH_JMPNZ(result, 0);
+       ZVAL_BOOL(EX_VAR(opline->result.var), result);
+       ZEND_VM_NEXT_OPCODE();
+}
+
+static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_IS_SMALLER_OR_EQUAL_LONG_SPEC_CONST_TMPVARCV_HANDLER(ZEND_OPCODE_HANDLER_ARGS)
+{
+       USE_OPLINE
+       zval *op1, *op2;
+       int result;
+
+       op1 = EX_CONSTANT(opline->op1);
+       op2 = EX_VAR(opline->op2.var);
+       result = (Z_LVAL_P(op1) <= Z_LVAL_P(op2));
+
+       ZVAL_BOOL(EX_VAR(opline->result.var), result);
+       ZEND_VM_NEXT_OPCODE();
+}
+
+static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_IS_SMALLER_OR_EQUAL_LONG_SPEC_CONST_TMPVARCV_JMPZ_HANDLER(ZEND_OPCODE_HANDLER_ARGS)
+{
+       USE_OPLINE
+       zval *op1, *op2;
+       int result;
+
+       op1 = EX_CONSTANT(opline->op1);
+       op2 = EX_VAR(opline->op2.var);
+       result = (Z_LVAL_P(op1) <= Z_LVAL_P(op2));
+       ZEND_VM_SMART_BRANCH_JMPZ(result, 0);
+       ZVAL_BOOL(EX_VAR(opline->result.var), result);
+       ZEND_VM_NEXT_OPCODE();
+}
+
+static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_IS_SMALLER_OR_EQUAL_LONG_SPEC_CONST_TMPVARCV_JMPNZ_HANDLER(ZEND_OPCODE_HANDLER_ARGS)
+{
+       USE_OPLINE
+       zval *op1, *op2;
+       int result;
+
+       op1 = EX_CONSTANT(opline->op1);
+       op2 = EX_VAR(opline->op2.var);
+       result = (Z_LVAL_P(op1) <= Z_LVAL_P(op2));
+       ZEND_VM_SMART_BRANCH_JMPNZ(result, 0);
+       ZVAL_BOOL(EX_VAR(opline->result.var), result);
+       ZEND_VM_NEXT_OPCODE();
+}
+
+static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_IS_SMALLER_OR_EQUAL_DOUBLE_SPEC_CONST_TMPVARCV_HANDLER(ZEND_OPCODE_HANDLER_ARGS)
+{
+       USE_OPLINE
+       zval *op1, *op2;
+       int result;
+
+       op1 = EX_CONSTANT(opline->op1);
+       op2 = EX_VAR(opline->op2.var);
+       result = (Z_DVAL_P(op1) <= Z_DVAL_P(op2));
+
+       ZVAL_BOOL(EX_VAR(opline->result.var), result);
+       ZEND_VM_NEXT_OPCODE();
+}
+
+static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_IS_SMALLER_OR_EQUAL_DOUBLE_SPEC_CONST_TMPVARCV_JMPZ_HANDLER(ZEND_OPCODE_HANDLER_ARGS)
+{
+       USE_OPLINE
+       zval *op1, *op2;
+       int result;
+
+       op1 = EX_CONSTANT(opline->op1);
+       op2 = EX_VAR(opline->op2.var);
+       result = (Z_DVAL_P(op1) <= Z_DVAL_P(op2));
+       ZEND_VM_SMART_BRANCH_JMPZ(result, 0);
+       ZVAL_BOOL(EX_VAR(opline->result.var), result);
+       ZEND_VM_NEXT_OPCODE();
+}
+
+static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_IS_SMALLER_OR_EQUAL_DOUBLE_SPEC_CONST_TMPVARCV_JMPNZ_HANDLER(ZEND_OPCODE_HANDLER_ARGS)
+{
+       USE_OPLINE
+       zval *op1, *op2;
+       int result;
+
+       op1 = EX_CONSTANT(opline->op1);
+       op2 = EX_VAR(opline->op2.var);
+       result = (Z_DVAL_P(op1) <= Z_DVAL_P(op2));
+       ZEND_VM_SMART_BRANCH_JMPNZ(result, 0);
+       ZVAL_BOOL(EX_VAR(opline->result.var), result);
+       ZEND_VM_NEXT_OPCODE();
+}
+
 static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_RETURN_SPEC_TMP_HANDLER(ZEND_OPCODE_HANDLER_ARGS)
 {
        USE_OPLINE
@@ -54424,515 +54882,2235 @@ isset_no_object:
        ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION();
 }
 
-static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_NULL_HANDLER(ZEND_OPCODE_HANDLER_ARGS)
+static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_PRE_INC_LONG_NO_OVERFLOW_SPEC_TMPVARCV_RETVAL_UNUSED_HANDLER(ZEND_OPCODE_HANDLER_ARGS)
 {
        USE_OPLINE
+       zval *var_ptr;
 
-       zend_error_noreturn(E_ERROR, "Invalid opcode %d/%d/%d.", OPLINE->opcode, OPLINE->op1_type, OPLINE->op2_type);
-       ZEND_VM_NEXT_OPCODE(); /* Never reached */
+       var_ptr = EX_VAR(opline->op1.var);
+       Z_LVAL_P(var_ptr)++;
+       if (UNEXPECTED(0)) {
+               ZVAL_LONG(EX_VAR(opline->result.var), Z_LVAL_P(var_ptr));
+       }
+       ZEND_VM_NEXT_OPCODE();
 }
 
+static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_PRE_INC_LONG_NO_OVERFLOW_SPEC_TMPVARCV_RETVAL_USED_HANDLER(ZEND_OPCODE_HANDLER_ARGS)
+{
+       USE_OPLINE
+       zval *var_ptr;
 
-void zend_init_opcodes_handlers(void)
+       var_ptr = EX_VAR(opline->op1.var);
+       Z_LVAL_P(var_ptr)++;
+       if (UNEXPECTED(1)) {
+               ZVAL_LONG(EX_VAR(opline->result.var), Z_LVAL_P(var_ptr));
+       }
+       ZEND_VM_NEXT_OPCODE();
+}
+
+static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_PRE_INC_LONG_SPEC_TMPVARCV_RETVAL_UNUSED_HANDLER(ZEND_OPCODE_HANDLER_ARGS)
 {
-       static const void *labels[] = {
-               ZEND_NOP_SPEC_HANDLER,
-               ZEND_ADD_SPEC_CONST_CONST_HANDLER,
-               ZEND_ADD_SPEC_CONST_TMPVAR_HANDLER,
-               ZEND_ADD_SPEC_CONST_TMPVAR_HANDLER,
+       USE_OPLINE
+       zval *var_ptr;
+
+       var_ptr = EX_VAR(opline->op1.var);
+       fast_long_increment_function(var_ptr);
+       if (UNEXPECTED(0)) {
+               ZVAL_COPY_VALUE(EX_VAR(opline->result.var), var_ptr);
+       }
+       ZEND_VM_NEXT_OPCODE();
+}
+
+static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_PRE_INC_LONG_SPEC_TMPVARCV_RETVAL_USED_HANDLER(ZEND_OPCODE_HANDLER_ARGS)
+{
+       USE_OPLINE
+       zval *var_ptr;
+
+       var_ptr = EX_VAR(opline->op1.var);
+       fast_long_increment_function(var_ptr);
+       if (UNEXPECTED(1)) {
+               ZVAL_COPY_VALUE(EX_VAR(opline->result.var), var_ptr);
+       }
+       ZEND_VM_NEXT_OPCODE();
+}
+
+static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_PRE_INC_LONG_OR_DOUBLE_SPEC_TMPVARCV_RETVAL_UNUSED_HANDLER(ZEND_OPCODE_HANDLER_ARGS)
+{
+       USE_OPLINE
+       zval *var_ptr;
+
+       var_ptr = EX_VAR(opline->op1.var);
+       if (EXPECTED(Z_TYPE_P(var_ptr) == IS_LONG)) {
+               fast_long_increment_function(var_ptr);
+       } else {
+               Z_DVAL_P(var_ptr)++;
+       }
+       if (UNEXPECTED(0)) {
+               ZVAL_COPY_VALUE(EX_VAR(opline->result.var), var_ptr);
+       }
+       ZEND_VM_NEXT_OPCODE();
+}
+
+static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_PRE_INC_LONG_OR_DOUBLE_SPEC_TMPVARCV_RETVAL_USED_HANDLER(ZEND_OPCODE_HANDLER_ARGS)
+{
+       USE_OPLINE
+       zval *var_ptr;
+
+       var_ptr = EX_VAR(opline->op1.var);
+       if (EXPECTED(Z_TYPE_P(var_ptr) == IS_LONG)) {
+               fast_long_increment_function(var_ptr);
+       } else {
+               Z_DVAL_P(var_ptr)++;
+       }
+       if (UNEXPECTED(1)) {
+               ZVAL_COPY_VALUE(EX_VAR(opline->result.var), var_ptr);
+       }
+       ZEND_VM_NEXT_OPCODE();
+}
+
+static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_PRE_DEC_LONG_NO_OVERFLOW_SPEC_TMPVARCV_RETVAL_UNUSED_HANDLER(ZEND_OPCODE_HANDLER_ARGS)
+{
+       USE_OPLINE
+       zval *var_ptr;
+
+       var_ptr = EX_VAR(opline->op1.var);
+       Z_LVAL_P(var_ptr)--;
+       if (UNEXPECTED(0)) {
+               ZVAL_LONG(EX_VAR(opline->result.var), Z_LVAL_P(var_ptr));
+       }
+       ZEND_VM_NEXT_OPCODE();
+}
+
+static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_PRE_DEC_LONG_NO_OVERFLOW_SPEC_TMPVARCV_RETVAL_USED_HANDLER(ZEND_OPCODE_HANDLER_ARGS)
+{
+       USE_OPLINE
+       zval *var_ptr;
+
+       var_ptr = EX_VAR(opline->op1.var);
+       Z_LVAL_P(var_ptr)--;
+       if (UNEXPECTED(1)) {
+               ZVAL_LONG(EX_VAR(opline->result.var), Z_LVAL_P(var_ptr));
+       }
+       ZEND_VM_NEXT_OPCODE();
+}
+
+static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_PRE_DEC_LONG_SPEC_TMPVARCV_RETVAL_UNUSED_HANDLER(ZEND_OPCODE_HANDLER_ARGS)
+{
+       USE_OPLINE
+       zval *var_ptr;
+
+       var_ptr = EX_VAR(opline->op1.var);
+       fast_long_decrement_function(var_ptr);
+       if (UNEXPECTED(0)) {
+               ZVAL_COPY_VALUE(EX_VAR(opline->result.var), var_ptr);
+       }
+       ZEND_VM_NEXT_OPCODE();
+}
+
+static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_PRE_DEC_LONG_SPEC_TMPVARCV_RETVAL_USED_HANDLER(ZEND_OPCODE_HANDLER_ARGS)
+{
+       USE_OPLINE
+       zval *var_ptr;
+
+       var_ptr = EX_VAR(opline->op1.var);
+       fast_long_decrement_function(var_ptr);
+       if (UNEXPECTED(1)) {
+               ZVAL_COPY_VALUE(EX_VAR(opline->result.var), var_ptr);
+       }
+       ZEND_VM_NEXT_OPCODE();
+}
+
+static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_PRE_DEC_LONG_OR_DOUBLE_SPEC_TMPVARCV_RETVAL_UNUSED_HANDLER(ZEND_OPCODE_HANDLER_ARGS)
+{
+       USE_OPLINE
+       zval *var_ptr;
+
+       var_ptr = EX_VAR(opline->op1.var);
+       if (EXPECTED(Z_TYPE_P(var_ptr) == IS_LONG)) {
+               fast_long_decrement_function(var_ptr);
+       } else {
+               Z_DVAL_P(var_ptr)--;
+       }
+       if (UNEXPECTED(0)) {
+               ZVAL_COPY_VALUE(EX_VAR(opline->result.var), var_ptr);
+       }
+       ZEND_VM_NEXT_OPCODE();
+}
+
+static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_PRE_DEC_LONG_OR_DOUBLE_SPEC_TMPVARCV_RETVAL_USED_HANDLER(ZEND_OPCODE_HANDLER_ARGS)
+{
+       USE_OPLINE
+       zval *var_ptr;
+
+       var_ptr = EX_VAR(opline->op1.var);
+       if (EXPECTED(Z_TYPE_P(var_ptr) == IS_LONG)) {
+               fast_long_decrement_function(var_ptr);
+       } else {
+               Z_DVAL_P(var_ptr)--;
+       }
+       if (UNEXPECTED(1)) {
+               ZVAL_COPY_VALUE(EX_VAR(opline->result.var), var_ptr);
+       }
+       ZEND_VM_NEXT_OPCODE();
+}
+
+static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_POST_INC_LONG_NO_OVERFLOW_SPEC_TMPVARCV_HANDLER(ZEND_OPCODE_HANDLER_ARGS)
+{
+       USE_OPLINE
+       zval *var_ptr;
+
+       var_ptr = EX_VAR(opline->op1.var);
+       ZVAL_LONG(EX_VAR(opline->result.var), Z_LVAL_P(var_ptr));
+       Z_LVAL_P(var_ptr)++;
+       ZEND_VM_NEXT_OPCODE();
+}
+
+static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_POST_INC_LONG_SPEC_TMPVARCV_HANDLER(ZEND_OPCODE_HANDLER_ARGS)
+{
+       USE_OPLINE
+       zval *var_ptr;
+
+       var_ptr = EX_VAR(opline->op1.var);
+       ZVAL_LONG(EX_VAR(opline->result.var), Z_LVAL_P(var_ptr));
+       fast_long_increment_function(var_ptr);
+       ZEND_VM_NEXT_OPCODE();
+}
+
+static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_POST_INC_LONG_OR_DOUBLE_SPEC_TMPVARCV_HANDLER(ZEND_OPCODE_HANDLER_ARGS)
+{
+       USE_OPLINE
+       zval *var_ptr;
+
+       var_ptr = EX_VAR(opline->op1.var);
+       ZVAL_COPY_VALUE(EX_VAR(opline->result.var), var_ptr);
+       if (EXPECTED(Z_TYPE_P(var_ptr) == IS_LONG)) {
+               fast_long_increment_function(var_ptr);
+       } else {
+               Z_DVAL_P(var_ptr)++;
+       }
+       ZEND_VM_NEXT_OPCODE();
+}
+
+static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_POST_DEC_LONG_NO_OVERFLOW_SPEC_TMPVARCV_HANDLER(ZEND_OPCODE_HANDLER_ARGS)
+{
+       USE_OPLINE
+       zval *var_ptr;
+
+       var_ptr = EX_VAR(opline->op1.var);
+       ZVAL_LONG(EX_VAR(opline->result.var), Z_LVAL_P(var_ptr));
+       Z_LVAL_P(var_ptr)--;
+       ZEND_VM_NEXT_OPCODE();
+}
+
+static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_POST_DEC_LONG_SPEC_TMPVARCV_HANDLER(ZEND_OPCODE_HANDLER_ARGS)
+{
+       USE_OPLINE
+       zval *var_ptr;
+
+       var_ptr = EX_VAR(opline->op1.var);
+       ZVAL_LONG(EX_VAR(opline->result.var), Z_LVAL_P(var_ptr));
+       fast_long_decrement_function(var_ptr);
+       ZEND_VM_NEXT_OPCODE();
+}
+
+static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_POST_DEC_LONG_OR_DOUBLE_SPEC_TMPVARCV_HANDLER(ZEND_OPCODE_HANDLER_ARGS)
+{
+       USE_OPLINE
+       zval *var_ptr;
+
+       var_ptr = EX_VAR(opline->op1.var);
+       ZVAL_COPY_VALUE(EX_VAR(opline->result.var), var_ptr);
+       if (EXPECTED(Z_TYPE_P(var_ptr) == IS_LONG)) {
+               fast_long_decrement_function(var_ptr);
+       } else {
+               Z_DVAL_P(var_ptr)--;
+       }
+       ZEND_VM_NEXT_OPCODE();
+}
+
+static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_QM_ASSIGN_NOREF_SPEC_TMPVARCV_HANDLER(ZEND_OPCODE_HANDLER_ARGS)
+{
+       USE_OPLINE
+
+       zval *value;
+
+       value = EX_VAR(opline->op1.var);
+       ZVAL_COPY_VALUE(EX_VAR(opline->result.var), value);
+       ZEND_VM_NEXT_OPCODE();
+}
+
+static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_SUB_LONG_NO_OVERFLOW_SPEC_TMPVARCV_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS)
+{
+       USE_OPLINE
+       zval *op1, *op2, *result;
+
+       op1 = EX_VAR(opline->op1.var);
+       op2 = EX_CONSTANT(opline->op2);
+       result = EX_VAR(opline->result.var);
+       ZVAL_LONG(result, Z_LVAL_P(op1) - Z_LVAL_P(op2));
+       ZEND_VM_NEXT_OPCODE();
+}
+
+static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_SUB_LONG_SPEC_TMPVARCV_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS)
+{
+       USE_OPLINE
+       zval *op1, *op2, *result;
+
+       op1 = EX_VAR(opline->op1.var);
+       op2 = EX_CONSTANT(opline->op2);
+       result = EX_VAR(opline->result.var);
+       fast_long_sub_function(result, op1, op2);
+       ZEND_VM_NEXT_OPCODE();
+}
+
+static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_SUB_DOUBLE_SPEC_TMPVARCV_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS)
+{
+       USE_OPLINE
+       zval *op1, *op2, *result;
+
+       op1 = EX_VAR(opline->op1.var);
+       op2 = EX_CONSTANT(opline->op2);
+       result = EX_VAR(opline->result.var);
+       ZVAL_DOUBLE(result, Z_DVAL_P(op1) - Z_DVAL_P(op2));
+       ZEND_VM_NEXT_OPCODE();
+}
+
+static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_IS_SMALLER_LONG_SPEC_TMPVARCV_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS)
+{
+       USE_OPLINE
+       zval *op1, *op2;
+       int result;
+
+       op1 = EX_VAR(opline->op1.var);
+       op2 = EX_CONSTANT(opline->op2);
+       result = (Z_LVAL_P(op1) < Z_LVAL_P(op2));
+
+       ZVAL_BOOL(EX_VAR(opline->result.var), result);
+       ZEND_VM_NEXT_OPCODE();
+}
+
+static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_IS_SMALLER_LONG_SPEC_TMPVARCV_CONST_JMPZ_HANDLER(ZEND_OPCODE_HANDLER_ARGS)
+{
+       USE_OPLINE
+       zval *op1, *op2;
+       int result;
+
+       op1 = EX_VAR(opline->op1.var);
+       op2 = EX_CONSTANT(opline->op2);
+       result = (Z_LVAL_P(op1) < Z_LVAL_P(op2));
+       ZEND_VM_SMART_BRANCH_JMPZ(result, 0);
+       ZVAL_BOOL(EX_VAR(opline->result.var), result);
+       ZEND_VM_NEXT_OPCODE();
+}
+
+static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_IS_SMALLER_LONG_SPEC_TMPVARCV_CONST_JMPNZ_HANDLER(ZEND_OPCODE_HANDLER_ARGS)
+{
+       USE_OPLINE
+       zval *op1, *op2;
+       int result;
+
+       op1 = EX_VAR(opline->op1.var);
+       op2 = EX_CONSTANT(opline->op2);
+       result = (Z_LVAL_P(op1) < Z_LVAL_P(op2));
+       ZEND_VM_SMART_BRANCH_JMPNZ(result, 0);
+       ZVAL_BOOL(EX_VAR(opline->result.var), result);
+       ZEND_VM_NEXT_OPCODE();
+}
+
+static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_IS_SMALLER_DOUBLE_SPEC_TMPVARCV_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS)
+{
+       USE_OPLINE
+       zval *op1, *op2;
+       int result;
+
+       op1 = EX_VAR(opline->op1.var);
+       op2 = EX_CONSTANT(opline->op2);
+       result = (Z_DVAL_P(op1) < Z_DVAL_P(op2));
+
+       ZVAL_BOOL(EX_VAR(opline->result.var), result);
+       ZEND_VM_NEXT_OPCODE();
+}
+
+static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_IS_SMALLER_DOUBLE_SPEC_TMPVARCV_CONST_JMPZ_HANDLER(ZEND_OPCODE_HANDLER_ARGS)
+{
+       USE_OPLINE
+       zval *op1, *op2;
+       int result;
+
+       op1 = EX_VAR(opline->op1.var);
+       op2 = EX_CONSTANT(opline->op2);
+       result = (Z_DVAL_P(op1) < Z_DVAL_P(op2));
+       ZEND_VM_SMART_BRANCH_JMPZ(result, 0);
+       ZVAL_BOOL(EX_VAR(opline->result.var), result);
+       ZEND_VM_NEXT_OPCODE();
+}
+
+static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_IS_SMALLER_DOUBLE_SPEC_TMPVARCV_CONST_JMPNZ_HANDLER(ZEND_OPCODE_HANDLER_ARGS)
+{
+       USE_OPLINE
+       zval *op1, *op2;
+       int result;
+
+       op1 = EX_VAR(opline->op1.var);
+       op2 = EX_CONSTANT(opline->op2);
+       result = (Z_DVAL_P(op1) < Z_DVAL_P(op2));
+       ZEND_VM_SMART_BRANCH_JMPNZ(result, 0);
+       ZVAL_BOOL(EX_VAR(opline->result.var), result);
+       ZEND_VM_NEXT_OPCODE();
+}
+
+static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_IS_SMALLER_OR_EQUAL_LONG_SPEC_TMPVARCV_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS)
+{
+       USE_OPLINE
+       zval *op1, *op2;
+       int result;
+
+       op1 = EX_VAR(opline->op1.var);
+       op2 = EX_CONSTANT(opline->op2);
+       result = (Z_LVAL_P(op1) <= Z_LVAL_P(op2));
+
+       ZVAL_BOOL(EX_VAR(opline->result.var), result);
+       ZEND_VM_NEXT_OPCODE();
+}
+
+static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_IS_SMALLER_OR_EQUAL_LONG_SPEC_TMPVARCV_CONST_JMPZ_HANDLER(ZEND_OPCODE_HANDLER_ARGS)
+{
+       USE_OPLINE
+       zval *op1, *op2;
+       int result;
+
+       op1 = EX_VAR(opline->op1.var);
+       op2 = EX_CONSTANT(opline->op2);
+       result = (Z_LVAL_P(op1) <= Z_LVAL_P(op2));
+       ZEND_VM_SMART_BRANCH_JMPZ(result, 0);
+       ZVAL_BOOL(EX_VAR(opline->result.var), result);
+       ZEND_VM_NEXT_OPCODE();
+}
+
+static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_IS_SMALLER_OR_EQUAL_LONG_SPEC_TMPVARCV_CONST_JMPNZ_HANDLER(ZEND_OPCODE_HANDLER_ARGS)
+{
+       USE_OPLINE
+       zval *op1, *op2;
+       int result;
+
+       op1 = EX_VAR(opline->op1.var);
+       op2 = EX_CONSTANT(opline->op2);
+       result = (Z_LVAL_P(op1) <= Z_LVAL_P(op2));
+       ZEND_VM_SMART_BRANCH_JMPNZ(result, 0);
+       ZVAL_BOOL(EX_VAR(opline->result.var), result);
+       ZEND_VM_NEXT_OPCODE();
+}
+
+static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_IS_SMALLER_OR_EQUAL_DOUBLE_SPEC_TMPVARCV_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS)
+{
+       USE_OPLINE
+       zval *op1, *op2;
+       int result;
+
+       op1 = EX_VAR(opline->op1.var);
+       op2 = EX_CONSTANT(opline->op2);
+       result = (Z_DVAL_P(op1) <= Z_DVAL_P(op2));
+
+       ZVAL_BOOL(EX_VAR(opline->result.var), result);
+       ZEND_VM_NEXT_OPCODE();
+}
+
+static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_IS_SMALLER_OR_EQUAL_DOUBLE_SPEC_TMPVARCV_CONST_JMPZ_HANDLER(ZEND_OPCODE_HANDLER_ARGS)
+{
+       USE_OPLINE
+       zval *op1, *op2;
+       int result;
+
+       op1 = EX_VAR(opline->op1.var);
+       op2 = EX_CONSTANT(opline->op2);
+       result = (Z_DVAL_P(op1) <= Z_DVAL_P(op2));
+       ZEND_VM_SMART_BRANCH_JMPZ(result, 0);
+       ZVAL_BOOL(EX_VAR(opline->result.var), result);
+       ZEND_VM_NEXT_OPCODE();
+}
+
+static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_IS_SMALLER_OR_EQUAL_DOUBLE_SPEC_TMPVARCV_CONST_JMPNZ_HANDLER(ZEND_OPCODE_HANDLER_ARGS)
+{
+       USE_OPLINE
+       zval *op1, *op2;
+       int result;
+
+       op1 = EX_VAR(opline->op1.var);
+       op2 = EX_CONSTANT(opline->op2);
+       result = (Z_DVAL_P(op1) <= Z_DVAL_P(op2));
+       ZEND_VM_SMART_BRANCH_JMPNZ(result, 0);
+       ZVAL_BOOL(EX_VAR(opline->result.var), result);
+       ZEND_VM_NEXT_OPCODE();
+}
+
+static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_ADD_LONG_NO_OVERFLOW_SPEC_TMPVARCV_TMPVARCV_HANDLER(ZEND_OPCODE_HANDLER_ARGS)
+{
+       USE_OPLINE
+       zval *op1, *op2, *result;
+
+       op1 = EX_VAR(opline->op1.var);
+       op2 = EX_VAR(opline->op2.var);
+       result = EX_VAR(opline->result.var);
+       ZVAL_LONG(result, Z_LVAL_P(op1) + Z_LVAL_P(op2));
+       ZEND_VM_NEXT_OPCODE();
+}
+
+static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_ADD_LONG_SPEC_TMPVARCV_TMPVARCV_HANDLER(ZEND_OPCODE_HANDLER_ARGS)
+{
+       USE_OPLINE
+       zval *op1, *op2, *result;
+
+       op1 = EX_VAR(opline->op1.var);
+       op2 = EX_VAR(opline->op2.var);
+       result = EX_VAR(opline->result.var);
+       fast_long_add_function(result, op1, op2);
+       ZEND_VM_NEXT_OPCODE();
+}
+
+static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_ADD_DOUBLE_SPEC_TMPVARCV_TMPVARCV_HANDLER(ZEND_OPCODE_HANDLER_ARGS)
+{
+       USE_OPLINE
+       zval *op1, *op2, *result;
+
+       op1 = EX_VAR(opline->op1.var);
+       op2 = EX_VAR(opline->op2.var);
+       result = EX_VAR(opline->result.var);
+       ZVAL_DOUBLE(result, Z_DVAL_P(op1) + Z_DVAL_P(op2));
+       ZEND_VM_NEXT_OPCODE();
+}
+
+static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_SUB_LONG_NO_OVERFLOW_SPEC_TMPVARCV_TMPVARCV_HANDLER(ZEND_OPCODE_HANDLER_ARGS)
+{
+       USE_OPLINE
+       zval *op1, *op2, *result;
+
+       op1 = EX_VAR(opline->op1.var);
+       op2 = EX_VAR(opline->op2.var);
+       result = EX_VAR(opline->result.var);
+       ZVAL_LONG(result, Z_LVAL_P(op1) - Z_LVAL_P(op2));
+       ZEND_VM_NEXT_OPCODE();
+}
+
+static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_SUB_LONG_SPEC_TMPVARCV_TMPVARCV_HANDLER(ZEND_OPCODE_HANDLER_ARGS)
+{
+       USE_OPLINE
+       zval *op1, *op2, *result;
+
+       op1 = EX_VAR(opline->op1.var);
+       op2 = EX_VAR(opline->op2.var);
+       result = EX_VAR(opline->result.var);
+       fast_long_sub_function(result, op1, op2);
+       ZEND_VM_NEXT_OPCODE();
+}
+
+static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_SUB_DOUBLE_SPEC_TMPVARCV_TMPVARCV_HANDLER(ZEND_OPCODE_HANDLER_ARGS)
+{
+       USE_OPLINE
+       zval *op1, *op2, *result;
+
+       op1 = EX_VAR(opline->op1.var);
+       op2 = EX_VAR(opline->op2.var);
+       result = EX_VAR(opline->result.var);
+       ZVAL_DOUBLE(result, Z_DVAL_P(op1) - Z_DVAL_P(op2));
+       ZEND_VM_NEXT_OPCODE();
+}
+
+static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_MUL_LONG_NO_OVERFLOW_SPEC_TMPVARCV_TMPVARCV_HANDLER(ZEND_OPCODE_HANDLER_ARGS)
+{
+       USE_OPLINE
+       zval *op1, *op2, *result;
+
+       op1 = EX_VAR(opline->op1.var);
+       op2 = EX_VAR(opline->op2.var);
+       result = EX_VAR(opline->result.var);
+       ZVAL_LONG(result, Z_LVAL_P(op1) * Z_LVAL_P(op2));
+       ZEND_VM_NEXT_OPCODE();
+}
+
+static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_MUL_LONG_SPEC_TMPVARCV_TMPVARCV_HANDLER(ZEND_OPCODE_HANDLER_ARGS)
+{
+       USE_OPLINE
+       zval *op1, *op2, *result;
+       zend_long overflow;
+
+       op1 = EX_VAR(opline->op1.var);
+       op2 = EX_VAR(opline->op2.var);
+       result = EX_VAR(opline->result.var);
+       ZEND_SIGNED_MULTIPLY_LONG(Z_LVAL_P(op1), Z_LVAL_P(op2), Z_LVAL_P(result), Z_DVAL_P(result), overflow);
+       Z_TYPE_INFO_P(result) = overflow ? IS_DOUBLE : IS_LONG;
+       ZEND_VM_NEXT_OPCODE();
+}
+
+static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_MUL_DOUBLE_SPEC_TMPVARCV_TMPVARCV_HANDLER(ZEND_OPCODE_HANDLER_ARGS)
+{
+       USE_OPLINE
+       zval *op1, *op2, *result;
+
+       op1 = EX_VAR(opline->op1.var);
+       op2 = EX_VAR(opline->op2.var);
+       result = EX_VAR(opline->result.var);
+       ZVAL_DOUBLE(result, Z_DVAL_P(op1) * Z_DVAL_P(op2));
+       ZEND_VM_NEXT_OPCODE();
+}
+
+static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_IS_EQUAL_LONG_SPEC_TMPVARCV_TMPVARCV_HANDLER(ZEND_OPCODE_HANDLER_ARGS)
+{
+       USE_OPLINE
+       zval *op1, *op2;
+       int result;
+
+       op1 = EX_VAR(opline->op1.var);
+       op2 = EX_VAR(opline->op2.var);
+       result = (Z_LVAL_P(op1) == Z_LVAL_P(op2));
+
+       ZVAL_BOOL(EX_VAR(opline->result.var), result);
+       ZEND_VM_NEXT_OPCODE();
+}
+
+static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_IS_EQUAL_LONG_SPEC_TMPVARCV_TMPVARCV_JMPZ_HANDLER(ZEND_OPCODE_HANDLER_ARGS)
+{
+       USE_OPLINE
+       zval *op1, *op2;
+       int result;
+
+       op1 = EX_VAR(opline->op1.var);
+       op2 = EX_VAR(opline->op2.var);
+       result = (Z_LVAL_P(op1) == Z_LVAL_P(op2));
+       ZEND_VM_SMART_BRANCH_JMPZ(result, 0);
+       ZVAL_BOOL(EX_VAR(opline->result.var), result);
+       ZEND_VM_NEXT_OPCODE();
+}
+
+static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_IS_EQUAL_LONG_SPEC_TMPVARCV_TMPVARCV_JMPNZ_HANDLER(ZEND_OPCODE_HANDLER_ARGS)
+{
+       USE_OPLINE
+       zval *op1, *op2;
+       int result;
+
+       op1 = EX_VAR(opline->op1.var);
+       op2 = EX_VAR(opline->op2.var);
+       result = (Z_LVAL_P(op1) == Z_LVAL_P(op2));
+       ZEND_VM_SMART_BRANCH_JMPNZ(result, 0);
+       ZVAL_BOOL(EX_VAR(opline->result.var), result);
+       ZEND_VM_NEXT_OPCODE();
+}
+
+static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_IS_EQUAL_DOUBLE_SPEC_TMPVARCV_TMPVARCV_HANDLER(ZEND_OPCODE_HANDLER_ARGS)
+{
+       USE_OPLINE
+       zval *op1, *op2;
+       int result;
+
+       op1 = EX_VAR(opline->op1.var);
+       op2 = EX_VAR(opline->op2.var);
+       result = (Z_DVAL_P(op1) == Z_DVAL_P(op2));
+
+       ZVAL_BOOL(EX_VAR(opline->result.var), result);
+       ZEND_VM_NEXT_OPCODE();
+}
+
+static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_IS_EQUAL_DOUBLE_SPEC_TMPVARCV_TMPVARCV_JMPZ_HANDLER(ZEND_OPCODE_HANDLER_ARGS)
+{
+       USE_OPLINE
+       zval *op1, *op2;
+       int result;
+
+       op1 = EX_VAR(opline->op1.var);
+       op2 = EX_VAR(opline->op2.var);
+       result = (Z_DVAL_P(op1) == Z_DVAL_P(op2));
+       ZEND_VM_SMART_BRANCH_JMPZ(result, 0);
+       ZVAL_BOOL(EX_VAR(opline->result.var), result);
+       ZEND_VM_NEXT_OPCODE();
+}
+
+static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_IS_EQUAL_DOUBLE_SPEC_TMPVARCV_TMPVARCV_JMPNZ_HANDLER(ZEND_OPCODE_HANDLER_ARGS)
+{
+       USE_OPLINE
+       zval *op1, *op2;
+       int result;
+
+       op1 = EX_VAR(opline->op1.var);
+       op2 = EX_VAR(opline->op2.var);
+       result = (Z_DVAL_P(op1) == Z_DVAL_P(op2));
+       ZEND_VM_SMART_BRANCH_JMPNZ(result, 0);
+       ZVAL_BOOL(EX_VAR(opline->result.var), result);
+       ZEND_VM_NEXT_OPCODE();
+}
+
+static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_IS_NOT_EQUAL_LONG_SPEC_TMPVARCV_TMPVARCV_HANDLER(ZEND_OPCODE_HANDLER_ARGS)
+{
+       USE_OPLINE
+       zval *op1, *op2;
+       int result;
+
+       op1 = EX_VAR(opline->op1.var);
+       op2 = EX_VAR(opline->op2.var);
+       result = (Z_LVAL_P(op1) != Z_LVAL_P(op2));
+
+       ZVAL_BOOL(EX_VAR(opline->result.var), result);
+       ZEND_VM_NEXT_OPCODE();
+}
+
+static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_IS_NOT_EQUAL_LONG_SPEC_TMPVARCV_TMPVARCV_JMPZ_HANDLER(ZEND_OPCODE_HANDLER_ARGS)
+{
+       USE_OPLINE
+       zval *op1, *op2;
+       int result;
+
+       op1 = EX_VAR(opline->op1.var);
+       op2 = EX_VAR(opline->op2.var);
+       result = (Z_LVAL_P(op1) != Z_LVAL_P(op2));
+       ZEND_VM_SMART_BRANCH_JMPZ(result, 0);
+       ZVAL_BOOL(EX_VAR(opline->result.var), result);
+       ZEND_VM_NEXT_OPCODE();
+}
+
+static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_IS_NOT_EQUAL_LONG_SPEC_TMPVARCV_TMPVARCV_JMPNZ_HANDLER(ZEND_OPCODE_HANDLER_ARGS)
+{
+       USE_OPLINE
+       zval *op1, *op2;
+       int result;
+
+       op1 = EX_VAR(opline->op1.var);
+       op2 = EX_VAR(opline->op2.var);
+       result = (Z_LVAL_P(op1) != Z_LVAL_P(op2));
+       ZEND_VM_SMART_BRANCH_JMPNZ(result, 0);
+       ZVAL_BOOL(EX_VAR(opline->result.var), result);
+       ZEND_VM_NEXT_OPCODE();
+}
+
+static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_IS_NOT_EQUAL_DOUBLE_SPEC_TMPVARCV_TMPVARCV_HANDLER(ZEND_OPCODE_HANDLER_ARGS)
+{
+       USE_OPLINE
+       zval *op1, *op2;
+       int result;
+
+       op1 = EX_VAR(opline->op1.var);
+       op2 = EX_VAR(opline->op2.var);
+       result = (Z_DVAL_P(op1) != Z_DVAL_P(op2));
+
+       ZVAL_BOOL(EX_VAR(opline->result.var), result);
+       ZEND_VM_NEXT_OPCODE();
+}
+
+static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_IS_NOT_EQUAL_DOUBLE_SPEC_TMPVARCV_TMPVARCV_JMPZ_HANDLER(ZEND_OPCODE_HANDLER_ARGS)
+{
+       USE_OPLINE
+       zval *op1, *op2;
+       int result;
+
+       op1 = EX_VAR(opline->op1.var);
+       op2 = EX_VAR(opline->op2.var);
+       result = (Z_DVAL_P(op1) != Z_DVAL_P(op2));
+       ZEND_VM_SMART_BRANCH_JMPZ(result, 0);
+       ZVAL_BOOL(EX_VAR(opline->result.var), result);
+       ZEND_VM_NEXT_OPCODE();
+}
+
+static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_IS_NOT_EQUAL_DOUBLE_SPEC_TMPVARCV_TMPVARCV_JMPNZ_HANDLER(ZEND_OPCODE_HANDLER_ARGS)
+{
+       USE_OPLINE
+       zval *op1, *op2;
+       int result;
+
+       op1 = EX_VAR(opline->op1.var);
+       op2 = EX_VAR(opline->op2.var);
+       result = (Z_DVAL_P(op1) != Z_DVAL_P(op2));
+       ZEND_VM_SMART_BRANCH_JMPNZ(result, 0);
+       ZVAL_BOOL(EX_VAR(opline->result.var), result);
+       ZEND_VM_NEXT_OPCODE();
+}
+
+static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_IS_SMALLER_LONG_SPEC_TMPVARCV_TMPVARCV_HANDLER(ZEND_OPCODE_HANDLER_ARGS)
+{
+       USE_OPLINE
+       zval *op1, *op2;
+       int result;
+
+       op1 = EX_VAR(opline->op1.var);
+       op2 = EX_VAR(opline->op2.var);
+       result = (Z_LVAL_P(op1) < Z_LVAL_P(op2));
+
+       ZVAL_BOOL(EX_VAR(opline->result.var), result);
+       ZEND_VM_NEXT_OPCODE();
+}
+
+static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_IS_SMALLER_LONG_SPEC_TMPVARCV_TMPVARCV_JMPZ_HANDLER(ZEND_OPCODE_HANDLER_ARGS)
+{
+       USE_OPLINE
+       zval *op1, *op2;
+       int result;
+
+       op1 = EX_VAR(opline->op1.var);
+       op2 = EX_VAR(opline->op2.var);
+       result = (Z_LVAL_P(op1) < Z_LVAL_P(op2));
+       ZEND_VM_SMART_BRANCH_JMPZ(result, 0);
+       ZVAL_BOOL(EX_VAR(opline->result.var), result);
+       ZEND_VM_NEXT_OPCODE();
+}
+
+static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_IS_SMALLER_LONG_SPEC_TMPVARCV_TMPVARCV_JMPNZ_HANDLER(ZEND_OPCODE_HANDLER_ARGS)
+{
+       USE_OPLINE
+       zval *op1, *op2;
+       int result;
+
+       op1 = EX_VAR(opline->op1.var);
+       op2 = EX_VAR(opline->op2.var);
+       result = (Z_LVAL_P(op1) < Z_LVAL_P(op2));
+       ZEND_VM_SMART_BRANCH_JMPNZ(result, 0);
+       ZVAL_BOOL(EX_VAR(opline->result.var), result);
+       ZEND_VM_NEXT_OPCODE();
+}
+
+static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_IS_SMALLER_DOUBLE_SPEC_TMPVARCV_TMPVARCV_HANDLER(ZEND_OPCODE_HANDLER_ARGS)
+{
+       USE_OPLINE
+       zval *op1, *op2;
+       int result;
+
+       op1 = EX_VAR(opline->op1.var);
+       op2 = EX_VAR(opline->op2.var);
+       result = (Z_DVAL_P(op1) < Z_DVAL_P(op2));
+
+       ZVAL_BOOL(EX_VAR(opline->result.var), result);
+       ZEND_VM_NEXT_OPCODE();
+}
+
+static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_IS_SMALLER_DOUBLE_SPEC_TMPVARCV_TMPVARCV_JMPZ_HANDLER(ZEND_OPCODE_HANDLER_ARGS)
+{
+       USE_OPLINE
+       zval *op1, *op2;
+       int result;
+
+       op1 = EX_VAR(opline->op1.var);
+       op2 = EX_VAR(opline->op2.var);
+       result = (Z_DVAL_P(op1) < Z_DVAL_P(op2));
+       ZEND_VM_SMART_BRANCH_JMPZ(result, 0);
+       ZVAL_BOOL(EX_VAR(opline->result.var), result);
+       ZEND_VM_NEXT_OPCODE();
+}
+
+static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_IS_SMALLER_DOUBLE_SPEC_TMPVARCV_TMPVARCV_JMPNZ_HANDLER(ZEND_OPCODE_HANDLER_ARGS)
+{
+       USE_OPLINE
+       zval *op1, *op2;
+       int result;
+
+       op1 = EX_VAR(opline->op1.var);
+       op2 = EX_VAR(opline->op2.var);
+       result = (Z_DVAL_P(op1) < Z_DVAL_P(op2));
+       ZEND_VM_SMART_BRANCH_JMPNZ(result, 0);
+       ZVAL_BOOL(EX_VAR(opline->result.var), result);
+       ZEND_VM_NEXT_OPCODE();
+}
+
+static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_IS_SMALLER_OR_EQUAL_LONG_SPEC_TMPVARCV_TMPVARCV_HANDLER(ZEND_OPCODE_HANDLER_ARGS)
+{
+       USE_OPLINE
+       zval *op1, *op2;
+       int result;
+
+       op1 = EX_VAR(opline->op1.var);
+       op2 = EX_VAR(opline->op2.var);
+       result = (Z_LVAL_P(op1) <= Z_LVAL_P(op2));
+
+       ZVAL_BOOL(EX_VAR(opline->result.var), result);
+       ZEND_VM_NEXT_OPCODE();
+}
+
+static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_IS_SMALLER_OR_EQUAL_LONG_SPEC_TMPVARCV_TMPVARCV_JMPZ_HANDLER(ZEND_OPCODE_HANDLER_ARGS)
+{
+       USE_OPLINE
+       zval *op1, *op2;
+       int result;
+
+       op1 = EX_VAR(opline->op1.var);
+       op2 = EX_VAR(opline->op2.var);
+       result = (Z_LVAL_P(op1) <= Z_LVAL_P(op2));
+       ZEND_VM_SMART_BRANCH_JMPZ(result, 0);
+       ZVAL_BOOL(EX_VAR(opline->result.var), result);
+       ZEND_VM_NEXT_OPCODE();
+}
+
+static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_IS_SMALLER_OR_EQUAL_LONG_SPEC_TMPVARCV_TMPVARCV_JMPNZ_HANDLER(ZEND_OPCODE_HANDLER_ARGS)
+{
+       USE_OPLINE
+       zval *op1, *op2;
+       int result;
+
+       op1 = EX_VAR(opline->op1.var);
+       op2 = EX_VAR(opline->op2.var);
+       result = (Z_LVAL_P(op1) <= Z_LVAL_P(op2));
+       ZEND_VM_SMART_BRANCH_JMPNZ(result, 0);
+       ZVAL_BOOL(EX_VAR(opline->result.var), result);
+       ZEND_VM_NEXT_OPCODE();
+}
+
+static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_IS_SMALLER_OR_EQUAL_DOUBLE_SPEC_TMPVARCV_TMPVARCV_HANDLER(ZEND_OPCODE_HANDLER_ARGS)
+{
+       USE_OPLINE
+       zval *op1, *op2;
+       int result;
+
+       op1 = EX_VAR(opline->op1.var);
+       op2 = EX_VAR(opline->op2.var);
+       result = (Z_DVAL_P(op1) <= Z_DVAL_P(op2));
+
+       ZVAL_BOOL(EX_VAR(opline->result.var), result);
+       ZEND_VM_NEXT_OPCODE();
+}
+
+static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_IS_SMALLER_OR_EQUAL_DOUBLE_SPEC_TMPVARCV_TMPVARCV_JMPZ_HANDLER(ZEND_OPCODE_HANDLER_ARGS)
+{
+       USE_OPLINE
+       zval *op1, *op2;
+       int result;
+
+       op1 = EX_VAR(opline->op1.var);
+       op2 = EX_VAR(opline->op2.var);
+       result = (Z_DVAL_P(op1) <= Z_DVAL_P(op2));
+       ZEND_VM_SMART_BRANCH_JMPZ(result, 0);
+       ZVAL_BOOL(EX_VAR(opline->result.var), result);
+       ZEND_VM_NEXT_OPCODE();
+}
+
+static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_IS_SMALLER_OR_EQUAL_DOUBLE_SPEC_TMPVARCV_TMPVARCV_JMPNZ_HANDLER(ZEND_OPCODE_HANDLER_ARGS)
+{
+       USE_OPLINE
+       zval *op1, *op2;
+       int result;
+
+       op1 = EX_VAR(opline->op1.var);
+       op2 = EX_VAR(opline->op2.var);
+       result = (Z_DVAL_P(op1) <= Z_DVAL_P(op2));
+       ZEND_VM_SMART_BRANCH_JMPNZ(result, 0);
+       ZVAL_BOOL(EX_VAR(opline->result.var), result);
+       ZEND_VM_NEXT_OPCODE();
+}
+
+static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_NULL_HANDLER(ZEND_OPCODE_HANDLER_ARGS)
+{
+       USE_OPLINE
+
+       zend_error_noreturn(E_ERROR, "Invalid opcode %d/%d/%d.", OPLINE->opcode, OPLINE->op1_type, OPLINE->op2_type);
+       ZEND_VM_NEXT_OPCODE(); /* Never reached */
+}
+
+
+void zend_init_opcodes_handlers(void)
+{
+       static const void *labels[] = {
+               ZEND_NOP_SPEC_HANDLER,
+               ZEND_ADD_SPEC_CONST_CONST_HANDLER,
+               ZEND_ADD_SPEC_CONST_TMPVAR_HANDLER,
+               ZEND_ADD_SPEC_CONST_TMPVAR_HANDLER,
+               ZEND_NULL_HANDLER,
+               ZEND_ADD_SPEC_CONST_CV_HANDLER,
+               ZEND_ADD_SPEC_TMPVAR_CONST_HANDLER,
+               ZEND_ADD_SPEC_TMPVAR_TMPVAR_HANDLER,
+               ZEND_ADD_SPEC_TMPVAR_TMPVAR_HANDLER,
+               ZEND_NULL_HANDLER,
+               ZEND_ADD_SPEC_TMPVAR_CV_HANDLER,
+               ZEND_ADD_SPEC_TMPVAR_CONST_HANDLER,
+               ZEND_ADD_SPEC_TMPVAR_TMPVAR_HANDLER,
+               ZEND_ADD_SPEC_TMPVAR_TMPVAR_HANDLER,
+               ZEND_NULL_HANDLER,
+               ZEND_ADD_SPEC_TMPVAR_CV_HANDLER,
+               ZEND_NULL_HANDLER,
+               ZEND_NULL_HANDLER,
+               ZEND_NULL_HANDLER,
+               ZEND_NULL_HANDLER,
+               ZEND_NULL_HANDLER,
+               ZEND_ADD_SPEC_CV_CONST_HANDLER,
+               ZEND_ADD_SPEC_CV_TMPVAR_HANDLER,
+               ZEND_ADD_SPEC_CV_TMPVAR_HANDLER,
+               ZEND_NULL_HANDLER,
+               ZEND_ADD_SPEC_CV_CV_HANDLER,
+               ZEND_SUB_SPEC_CONST_CONST_HANDLER,
+               ZEND_SUB_SPEC_CONST_TMPVAR_HANDLER,
+               ZEND_SUB_SPEC_CONST_TMPVAR_HANDLER,
+               ZEND_NULL_HANDLER,
+               ZEND_SUB_SPEC_CONST_CV_HANDLER,
+               ZEND_SUB_SPEC_TMPVAR_CONST_HANDLER,
+               ZEND_SUB_SPEC_TMPVAR_TMPVAR_HANDLER,
+               ZEND_SUB_SPEC_TMPVAR_TMPVAR_HANDLER,
+               ZEND_NULL_HANDLER,
+               ZEND_SUB_SPEC_TMPVAR_CV_HANDLER,
+               ZEND_SUB_SPEC_TMPVAR_CONST_HANDLER,
+               ZEND_SUB_SPEC_TMPVAR_TMPVAR_HANDLER,
+               ZEND_SUB_SPEC_TMPVAR_TMPVAR_HANDLER,
+               ZEND_NULL_HANDLER,
+               ZEND_SUB_SPEC_TMPVAR_CV_HANDLER,
+               ZEND_NULL_HANDLER,
+               ZEND_NULL_HANDLER,
+               ZEND_NULL_HANDLER,
+               ZEND_NULL_HANDLER,
+               ZEND_NULL_HANDLER,
+               ZEND_SUB_SPEC_CV_CONST_HANDLER,
+               ZEND_SUB_SPEC_CV_TMPVAR_HANDLER,
+               ZEND_SUB_SPEC_CV_TMPVAR_HANDLER,
+               ZEND_NULL_HANDLER,
+               ZEND_SUB_SPEC_CV_CV_HANDLER,
+               ZEND_MUL_SPEC_CONST_CONST_HANDLER,
+               ZEND_MUL_SPEC_CONST_TMPVAR_HANDLER,
+               ZEND_MUL_SPEC_CONST_TMPVAR_HANDLER,
+               ZEND_NULL_HANDLER,
+               ZEND_MUL_SPEC_CONST_CV_HANDLER,
+               ZEND_MUL_SPEC_TMPVAR_CONST_HANDLER,
+               ZEND_MUL_SPEC_TMPVAR_TMPVAR_HANDLER,
+               ZEND_MUL_SPEC_TMPVAR_TMPVAR_HANDLER,
+               ZEND_NULL_HANDLER,
+               ZEND_MUL_SPEC_TMPVAR_CV_HANDLER,
+               ZEND_MUL_SPEC_TMPVAR_CONST_HANDLER,
+               ZEND_MUL_SPEC_TMPVAR_TMPVAR_HANDLER,
+               ZEND_MUL_SPEC_TMPVAR_TMPVAR_HANDLER,
+               ZEND_NULL_HANDLER,
+               ZEND_MUL_SPEC_TMPVAR_CV_HANDLER,
+               ZEND_NULL_HANDLER,
+               ZEND_NULL_HANDLER,
+               ZEND_NULL_HANDLER,
+               ZEND_NULL_HANDLER,
+               ZEND_NULL_HANDLER,
+               ZEND_MUL_SPEC_CV_CONST_HANDLER,
+               ZEND_MUL_SPEC_CV_TMPVAR_HANDLER,
+               ZEND_MUL_SPEC_CV_TMPVAR_HANDLER,
+               ZEND_NULL_HANDLER,
+               ZEND_MUL_SPEC_CV_CV_HANDLER,
+               ZEND_DIV_SPEC_CONST_CONST_HANDLER,
+               ZEND_DIV_SPEC_CONST_TMPVAR_HANDLER,
+               ZEND_DIV_SPEC_CONST_TMPVAR_HANDLER,
+               ZEND_NULL_HANDLER,
+               ZEND_DIV_SPEC_CONST_CV_HANDLER,
+               ZEND_DIV_SPEC_TMPVAR_CONST_HANDLER,
+               ZEND_DIV_SPEC_TMPVAR_TMPVAR_HANDLER,
+               ZEND_DIV_SPEC_TMPVAR_TMPVAR_HANDLER,
+               ZEND_NULL_HANDLER,
+               ZEND_DIV_SPEC_TMPVAR_CV_HANDLER,
+               ZEND_DIV_SPEC_TMPVAR_CONST_HANDLER,
+               ZEND_DIV_SPEC_TMPVAR_TMPVAR_HANDLER,
+               ZEND_DIV_SPEC_TMPVAR_TMPVAR_HANDLER,
+               ZEND_NULL_HANDLER,
+               ZEND_DIV_SPEC_TMPVAR_CV_HANDLER,
+               ZEND_NULL_HANDLER,
+               ZEND_NULL_HANDLER,
+               ZEND_NULL_HANDLER,
+               ZEND_NULL_HANDLER,
+               ZEND_NULL_HANDLER,
+               ZEND_DIV_SPEC_CV_CONST_HANDLER,
+               ZEND_DIV_SPEC_CV_TMPVAR_HANDLER,
+               ZEND_DIV_SPEC_CV_TMPVAR_HANDLER,
+               ZEND_NULL_HANDLER,
+               ZEND_DIV_SPEC_CV_CV_HANDLER,
+               ZEND_MOD_SPEC_CONST_CONST_HANDLER,
+               ZEND_MOD_SPEC_CONST_TMPVAR_HANDLER,
+               ZEND_MOD_SPEC_CONST_TMPVAR_HANDLER,
+               ZEND_NULL_HANDLER,
+               ZEND_MOD_SPEC_CONST_CV_HANDLER,
+               ZEND_MOD_SPEC_TMPVAR_CONST_HANDLER,
+               ZEND_MOD_SPEC_TMPVAR_TMPVAR_HANDLER,
+               ZEND_MOD_SPEC_TMPVAR_TMPVAR_HANDLER,
+               ZEND_NULL_HANDLER,
+               ZEND_MOD_SPEC_TMPVAR_CV_HANDLER,
+               ZEND_MOD_SPEC_TMPVAR_CONST_HANDLER,
+               ZEND_MOD_SPEC_TMPVAR_TMPVAR_HANDLER,
+               ZEND_MOD_SPEC_TMPVAR_TMPVAR_HANDLER,
+               ZEND_NULL_HANDLER,
+               ZEND_MOD_SPEC_TMPVAR_CV_HANDLER,
+               ZEND_NULL_HANDLER,
+               ZEND_NULL_HANDLER,
+               ZEND_NULL_HANDLER,
+               ZEND_NULL_HANDLER,
+               ZEND_NULL_HANDLER,
+               ZEND_MOD_SPEC_CV_CONST_HANDLER,
+               ZEND_MOD_SPEC_CV_TMPVAR_HANDLER,
+               ZEND_MOD_SPEC_CV_TMPVAR_HANDLER,
+               ZEND_NULL_HANDLER,
+               ZEND_MOD_SPEC_CV_CV_HANDLER,
+               ZEND_SL_SPEC_CONST_CONST_HANDLER,
+               ZEND_SL_SPEC_CONST_TMPVAR_HANDLER,
+               ZEND_SL_SPEC_CONST_TMPVAR_HANDLER,
+               ZEND_NULL_HANDLER,
+               ZEND_SL_SPEC_CONST_CV_HANDLER,
+               ZEND_SL_SPEC_TMPVAR_CONST_HANDLER,
+               ZEND_SL_SPEC_TMPVAR_TMPVAR_HANDLER,
+               ZEND_SL_SPEC_TMPVAR_TMPVAR_HANDLER,
+               ZEND_NULL_HANDLER,
+               ZEND_SL_SPEC_TMPVAR_CV_HANDLER,
+               ZEND_SL_SPEC_TMPVAR_CONST_HANDLER,
+               ZEND_SL_SPEC_TMPVAR_TMPVAR_HANDLER,
+               ZEND_SL_SPEC_TMPVAR_TMPVAR_HANDLER,
+               ZEND_NULL_HANDLER,
+               ZEND_SL_SPEC_TMPVAR_CV_HANDLER,
+               ZEND_NULL_HANDLER,
+               ZEND_NULL_HANDLER,
+               ZEND_NULL_HANDLER,
+               ZEND_NULL_HANDLER,
+               ZEND_NULL_HANDLER,
+               ZEND_SL_SPEC_CV_CONST_HANDLER,
+               ZEND_SL_SPEC_CV_TMPVAR_HANDLER,
+               ZEND_SL_SPEC_CV_TMPVAR_HANDLER,
+               ZEND_NULL_HANDLER,
+               ZEND_SL_SPEC_CV_CV_HANDLER,
+               ZEND_SR_SPEC_CONST_CONST_HANDLER,
+               ZEND_SR_SPEC_CONST_TMPVAR_HANDLER,
+               ZEND_SR_SPEC_CONST_TMPVAR_HANDLER,
+               ZEND_NULL_HANDLER,
+               ZEND_SR_SPEC_CONST_CV_HANDLER,
+               ZEND_SR_SPEC_TMPVAR_CONST_HANDLER,
+               ZEND_SR_SPEC_TMPVAR_TMPVAR_HANDLER,
+               ZEND_SR_SPEC_TMPVAR_TMPVAR_HANDLER,
+               ZEND_NULL_HANDLER,
+               ZEND_SR_SPEC_TMPVAR_CV_HANDLER,
+               ZEND_SR_SPEC_TMPVAR_CONST_HANDLER,
+               ZEND_SR_SPEC_TMPVAR_TMPVAR_HANDLER,
+               ZEND_SR_SPEC_TMPVAR_TMPVAR_HANDLER,
+               ZEND_NULL_HANDLER,
+               ZEND_SR_SPEC_TMPVAR_CV_HANDLER,
+               ZEND_NULL_HANDLER,
+               ZEND_NULL_HANDLER,
+               ZEND_NULL_HANDLER,
+               ZEND_NULL_HANDLER,
+               ZEND_NULL_HANDLER,
+               ZEND_SR_SPEC_CV_CONST_HANDLER,
+               ZEND_SR_SPEC_CV_TMPVAR_HANDLER,
+               ZEND_SR_SPEC_CV_TMPVAR_HANDLER,
+               ZEND_NULL_HANDLER,
+               ZEND_SR_SPEC_CV_CV_HANDLER,
+               ZEND_CONCAT_SPEC_CONST_CONST_HANDLER,
+               ZEND_CONCAT_SPEC_CONST_TMPVAR_HANDLER,
+               ZEND_CONCAT_SPEC_CONST_TMPVAR_HANDLER,
+               ZEND_NULL_HANDLER,
+               ZEND_CONCAT_SPEC_CONST_CV_HANDLER,
+               ZEND_CONCAT_SPEC_TMPVAR_CONST_HANDLER,
+               ZEND_CONCAT_SPEC_TMPVAR_TMPVAR_HANDLER,
+               ZEND_CONCAT_SPEC_TMPVAR_TMPVAR_HANDLER,
+               ZEND_NULL_HANDLER,
+               ZEND_CONCAT_SPEC_TMPVAR_CV_HANDLER,
+               ZEND_CONCAT_SPEC_TMPVAR_CONST_HANDLER,
+               ZEND_CONCAT_SPEC_TMPVAR_TMPVAR_HANDLER,
+               ZEND_CONCAT_SPEC_TMPVAR_TMPVAR_HANDLER,
+               ZEND_NULL_HANDLER,
+               ZEND_CONCAT_SPEC_TMPVAR_CV_HANDLER,
+               ZEND_NULL_HANDLER,
+               ZEND_NULL_HANDLER,
+               ZEND_NULL_HANDLER,
+               ZEND_NULL_HANDLER,
+               ZEND_NULL_HANDLER,
+               ZEND_CONCAT_SPEC_CV_CONST_HANDLER,
+               ZEND_CONCAT_SPEC_CV_TMPVAR_HANDLER,
+               ZEND_CONCAT_SPEC_CV_TMPVAR_HANDLER,
+               ZEND_NULL_HANDLER,
+               ZEND_CONCAT_SPEC_CV_CV_HANDLER,
+               ZEND_BW_OR_SPEC_CONST_CONST_HANDLER,
+               ZEND_BW_OR_SPEC_CONST_TMPVAR_HANDLER,
+               ZEND_BW_OR_SPEC_CONST_TMPVAR_HANDLER,
+               ZEND_NULL_HANDLER,
+               ZEND_BW_OR_SPEC_CONST_CV_HANDLER,
+               ZEND_BW_OR_SPEC_TMPVAR_CONST_HANDLER,
+               ZEND_BW_OR_SPEC_TMPVAR_TMPVAR_HANDLER,
+               ZEND_BW_OR_SPEC_TMPVAR_TMPVAR_HANDLER,
+               ZEND_NULL_HANDLER,
+               ZEND_BW_OR_SPEC_TMPVAR_CV_HANDLER,
+               ZEND_BW_OR_SPEC_TMPVAR_CONST_HANDLER,
+               ZEND_BW_OR_SPEC_TMPVAR_TMPVAR_HANDLER,
+               ZEND_BW_OR_SPEC_TMPVAR_TMPVAR_HANDLER,
+               ZEND_NULL_HANDLER,
+               ZEND_BW_OR_SPEC_TMPVAR_CV_HANDLER,
+               ZEND_NULL_HANDLER,
+               ZEND_NULL_HANDLER,
+               ZEND_NULL_HANDLER,
+               ZEND_NULL_HANDLER,
+               ZEND_NULL_HANDLER,
+               ZEND_BW_OR_SPEC_CV_CONST_HANDLER,
+               ZEND_BW_OR_SPEC_CV_TMPVAR_HANDLER,
+               ZEND_BW_OR_SPEC_CV_TMPVAR_HANDLER,
+               ZEND_NULL_HANDLER,
+               ZEND_BW_OR_SPEC_CV_CV_HANDLER,
+               ZEND_BW_AND_SPEC_CONST_CONST_HANDLER,
+               ZEND_BW_AND_SPEC_CONST_TMPVAR_HANDLER,
+               ZEND_BW_AND_SPEC_CONST_TMPVAR_HANDLER,
+               ZEND_NULL_HANDLER,
+               ZEND_BW_AND_SPEC_CONST_CV_HANDLER,
+               ZEND_BW_AND_SPEC_TMPVAR_CONST_HANDLER,
+               ZEND_BW_AND_SPEC_TMPVAR_TMPVAR_HANDLER,
+               ZEND_BW_AND_SPEC_TMPVAR_TMPVAR_HANDLER,
+               ZEND_NULL_HANDLER,
+               ZEND_BW_AND_SPEC_TMPVAR_CV_HANDLER,
+               ZEND_BW_AND_SPEC_TMPVAR_CONST_HANDLER,
+               ZEND_BW_AND_SPEC_TMPVAR_TMPVAR_HANDLER,
+               ZEND_BW_AND_SPEC_TMPVAR_TMPVAR_HANDLER,
+               ZEND_NULL_HANDLER,
+               ZEND_BW_AND_SPEC_TMPVAR_CV_HANDLER,
+               ZEND_NULL_HANDLER,
+               ZEND_NULL_HANDLER,
+               ZEND_NULL_HANDLER,
+               ZEND_NULL_HANDLER,
+               ZEND_NULL_HANDLER,
+               ZEND_BW_AND_SPEC_CV_CONST_HANDLER,
+               ZEND_BW_AND_SPEC_CV_TMPVAR_HANDLER,
+               ZEND_BW_AND_SPEC_CV_TMPVAR_HANDLER,
+               ZEND_NULL_HANDLER,
+               ZEND_BW_AND_SPEC_CV_CV_HANDLER,
+               ZEND_BW_XOR_SPEC_CONST_CONST_HANDLER,
+               ZEND_BW_XOR_SPEC_CONST_TMPVAR_HANDLER,
+               ZEND_BW_XOR_SPEC_CONST_TMPVAR_HANDLER,
+               ZEND_NULL_HANDLER,
+               ZEND_BW_XOR_SPEC_CONST_CV_HANDLER,
+               ZEND_BW_XOR_SPEC_TMPVAR_CONST_HANDLER,
+               ZEND_BW_XOR_SPEC_TMPVAR_TMPVAR_HANDLER,
+               ZEND_BW_XOR_SPEC_TMPVAR_TMPVAR_HANDLER,
+               ZEND_NULL_HANDLER,
+               ZEND_BW_XOR_SPEC_TMPVAR_CV_HANDLER,
+               ZEND_BW_XOR_SPEC_TMPVAR_CONST_HANDLER,
+               ZEND_BW_XOR_SPEC_TMPVAR_TMPVAR_HANDLER,
+               ZEND_BW_XOR_SPEC_TMPVAR_TMPVAR_HANDLER,
+               ZEND_NULL_HANDLER,
+               ZEND_BW_XOR_SPEC_TMPVAR_CV_HANDLER,
+               ZEND_NULL_HANDLER,
+               ZEND_NULL_HANDLER,
+               ZEND_NULL_HANDLER,
+               ZEND_NULL_HANDLER,
+               ZEND_NULL_HANDLER,
+               ZEND_BW_XOR_SPEC_CV_CONST_HANDLER,
+               ZEND_BW_XOR_SPEC_CV_TMPVAR_HANDLER,
+               ZEND_BW_XOR_SPEC_CV_TMPVAR_HANDLER,
+               ZEND_NULL_HANDLER,
+               ZEND_BW_XOR_SPEC_CV_CV_HANDLER,
+               ZEND_BW_NOT_SPEC_CONST_HANDLER,
+               ZEND_BW_NOT_SPEC_TMPVAR_HANDLER,
+               ZEND_BW_NOT_SPEC_TMPVAR_HANDLER,
+               ZEND_NULL_HANDLER,
+               ZEND_BW_NOT_SPEC_CV_HANDLER,
+               ZEND_BOOL_NOT_SPEC_CONST_HANDLER,
+               ZEND_BOOL_NOT_SPEC_TMPVAR_HANDLER,
+               ZEND_BOOL_NOT_SPEC_TMPVAR_HANDLER,
+               ZEND_NULL_HANDLER,
+               ZEND_BOOL_NOT_SPEC_CV_HANDLER,
+               ZEND_BOOL_XOR_SPEC_CONST_CONST_HANDLER,
+               ZEND_BOOL_XOR_SPEC_CONST_TMPVAR_HANDLER,
+               ZEND_BOOL_XOR_SPEC_CONST_TMPVAR_HANDLER,
+               ZEND_NULL_HANDLER,
+               ZEND_BOOL_XOR_SPEC_CONST_CV_HANDLER,
+               ZEND_BOOL_XOR_SPEC_TMPVAR_CONST_HANDLER,
+               ZEND_BOOL_XOR_SPEC_TMPVAR_TMPVAR_HANDLER,
+               ZEND_BOOL_XOR_SPEC_TMPVAR_TMPVAR_HANDLER,
+               ZEND_NULL_HANDLER,
+               ZEND_BOOL_XOR_SPEC_TMPVAR_CV_HANDLER,
+               ZEND_BOOL_XOR_SPEC_TMPVAR_CONST_HANDLER,
+               ZEND_BOOL_XOR_SPEC_TMPVAR_TMPVAR_HANDLER,
+               ZEND_BOOL_XOR_SPEC_TMPVAR_TMPVAR_HANDLER,
+               ZEND_NULL_HANDLER,
+               ZEND_BOOL_XOR_SPEC_TMPVAR_CV_HANDLER,
+               ZEND_NULL_HANDLER,
+               ZEND_NULL_HANDLER,
+               ZEND_NULL_HANDLER,
+               ZEND_NULL_HANDLER,
+               ZEND_NULL_HANDLER,
+               ZEND_BOOL_XOR_SPEC_CV_CONST_HANDLER,
+               ZEND_BOOL_XOR_SPEC_CV_TMPVAR_HANDLER,
+               ZEND_BOOL_XOR_SPEC_CV_TMPVAR_HANDLER,
+               ZEND_NULL_HANDLER,
+               ZEND_BOOL_XOR_SPEC_CV_CV_HANDLER,
+               ZEND_IS_IDENTICAL_SPEC_CONST_CONST_HANDLER,
+               ZEND_IS_IDENTICAL_SPEC_CONST_TMP_HANDLER,
+               ZEND_IS_IDENTICAL_SPEC_CONST_VAR_HANDLER,
+               ZEND_NULL_HANDLER,
+               ZEND_IS_IDENTICAL_SPEC_CONST_CV_HANDLER,
+               ZEND_IS_IDENTICAL_SPEC_TMP_CONST_HANDLER,
+               ZEND_IS_IDENTICAL_SPEC_TMP_TMP_HANDLER,
+               ZEND_IS_IDENTICAL_SPEC_TMP_VAR_HANDLER,
+               ZEND_NULL_HANDLER,
+               ZEND_IS_IDENTICAL_SPEC_TMP_CV_HANDLER,
+               ZEND_IS_IDENTICAL_SPEC_VAR_CONST_HANDLER,
+               ZEND_IS_IDENTICAL_SPEC_VAR_TMP_HANDLER,
+               ZEND_IS_IDENTICAL_SPEC_VAR_VAR_HANDLER,
+               ZEND_NULL_HANDLER,
+               ZEND_IS_IDENTICAL_SPEC_VAR_CV_HANDLER,
+               ZEND_NULL_HANDLER,
+               ZEND_NULL_HANDLER,
+               ZEND_NULL_HANDLER,
+               ZEND_NULL_HANDLER,
+               ZEND_NULL_HANDLER,
+               ZEND_IS_IDENTICAL_SPEC_CV_CONST_HANDLER,
+               ZEND_IS_IDENTICAL_SPEC_CV_TMP_HANDLER,
+               ZEND_IS_IDENTICAL_SPEC_CV_VAR_HANDLER,
+               ZEND_NULL_HANDLER,
+               ZEND_IS_IDENTICAL_SPEC_CV_CV_HANDLER,
+               ZEND_IS_NOT_IDENTICAL_SPEC_CONST_CONST_HANDLER,
+               ZEND_IS_NOT_IDENTICAL_SPEC_CONST_TMP_HANDLER,
+               ZEND_IS_NOT_IDENTICAL_SPEC_CONST_VAR_HANDLER,
+               ZEND_NULL_HANDLER,
+               ZEND_IS_NOT_IDENTICAL_SPEC_CONST_CV_HANDLER,
+               ZEND_IS_NOT_IDENTICAL_SPEC_TMP_CONST_HANDLER,
+               ZEND_IS_NOT_IDENTICAL_SPEC_TMP_TMP_HANDLER,
+               ZEND_IS_NOT_IDENTICAL_SPEC_TMP_VAR_HANDLER,
+               ZEND_NULL_HANDLER,
+               ZEND_IS_NOT_IDENTICAL_SPEC_TMP_CV_HANDLER,
+               ZEND_IS_NOT_IDENTICAL_SPEC_VAR_CONST_HANDLER,
+               ZEND_IS_NOT_IDENTICAL_SPEC_VAR_TMP_HANDLER,
+               ZEND_IS_NOT_IDENTICAL_SPEC_VAR_VAR_HANDLER,
+               ZEND_NULL_HANDLER,
+               ZEND_IS_NOT_IDENTICAL_SPEC_VAR_CV_HANDLER,
+               ZEND_NULL_HANDLER,
+               ZEND_NULL_HANDLER,
+               ZEND_NULL_HANDLER,
+               ZEND_NULL_HANDLER,
+               ZEND_NULL_HANDLER,
+               ZEND_IS_NOT_IDENTICAL_SPEC_CV_CONST_HANDLER,
+               ZEND_IS_NOT_IDENTICAL_SPEC_CV_TMP_HANDLER,
+               ZEND_IS_NOT_IDENTICAL_SPEC_CV_VAR_HANDLER,
+               ZEND_NULL_HANDLER,
+               ZEND_IS_NOT_IDENTICAL_SPEC_CV_CV_HANDLER,
+               ZEND_IS_EQUAL_SPEC_CONST_CONST_HANDLER,
+               ZEND_IS_EQUAL_SPEC_CONST_TMPVAR_HANDLER,
+               ZEND_IS_EQUAL_SPEC_CONST_TMPVAR_HANDLER,
+               ZEND_NULL_HANDLER,
+               ZEND_IS_EQUAL_SPEC_CONST_CV_HANDLER,
+               ZEND_IS_EQUAL_SPEC_TMPVAR_CONST_HANDLER,
+               ZEND_IS_EQUAL_SPEC_TMPVAR_TMPVAR_HANDLER,
+               ZEND_IS_EQUAL_SPEC_TMPVAR_TMPVAR_HANDLER,
+               ZEND_NULL_HANDLER,
+               ZEND_IS_EQUAL_SPEC_TMPVAR_CV_HANDLER,
+               ZEND_IS_EQUAL_SPEC_TMPVAR_CONST_HANDLER,
+               ZEND_IS_EQUAL_SPEC_TMPVAR_TMPVAR_HANDLER,
+               ZEND_IS_EQUAL_SPEC_TMPVAR_TMPVAR_HANDLER,
+               ZEND_NULL_HANDLER,
+               ZEND_IS_EQUAL_SPEC_TMPVAR_CV_HANDLER,
+               ZEND_NULL_HANDLER,
+               ZEND_NULL_HANDLER,
+               ZEND_NULL_HANDLER,
+               ZEND_NULL_HANDLER,
+               ZEND_NULL_HANDLER,
+               ZEND_IS_EQUAL_SPEC_CV_CONST_HANDLER,
+               ZEND_IS_EQUAL_SPEC_CV_TMPVAR_HANDLER,
+               ZEND_IS_EQUAL_SPEC_CV_TMPVAR_HANDLER,
+               ZEND_NULL_HANDLER,
+               ZEND_IS_EQUAL_SPEC_CV_CV_HANDLER,
+               ZEND_IS_NOT_EQUAL_SPEC_CONST_CONST_HANDLER,
+               ZEND_IS_NOT_EQUAL_SPEC_CONST_TMPVAR_HANDLER,
+               ZEND_IS_NOT_EQUAL_SPEC_CONST_TMPVAR_HANDLER,
+               ZEND_NULL_HANDLER,
+               ZEND_IS_NOT_EQUAL_SPEC_CONST_CV_HANDLER,
+               ZEND_IS_NOT_EQUAL_SPEC_TMPVAR_CONST_HANDLER,
+               ZEND_IS_NOT_EQUAL_SPEC_TMPVAR_TMPVAR_HANDLER,
+               ZEND_IS_NOT_EQUAL_SPEC_TMPVAR_TMPVAR_HANDLER,
+               ZEND_NULL_HANDLER,
+               ZEND_IS_NOT_EQUAL_SPEC_TMPVAR_CV_HANDLER,
+               ZEND_IS_NOT_EQUAL_SPEC_TMPVAR_CONST_HANDLER,
+               ZEND_IS_NOT_EQUAL_SPEC_TMPVAR_TMPVAR_HANDLER,
+               ZEND_IS_NOT_EQUAL_SPEC_TMPVAR_TMPVAR_HANDLER,
+               ZEND_NULL_HANDLER,
+               ZEND_IS_NOT_EQUAL_SPEC_TMPVAR_CV_HANDLER,
+               ZEND_NULL_HANDLER,
+               ZEND_NULL_HANDLER,
+               ZEND_NULL_HANDLER,
+               ZEND_NULL_HANDLER,
+               ZEND_NULL_HANDLER,
+               ZEND_IS_NOT_EQUAL_SPEC_CV_CONST_HANDLER,
+               ZEND_IS_NOT_EQUAL_SPEC_CV_TMPVAR_HANDLER,
+               ZEND_IS_NOT_EQUAL_SPEC_CV_TMPVAR_HANDLER,
+               ZEND_NULL_HANDLER,
+               ZEND_IS_NOT_EQUAL_SPEC_CV_CV_HANDLER,
+               ZEND_IS_SMALLER_SPEC_CONST_CONST_HANDLER,
+               ZEND_IS_SMALLER_SPEC_CONST_TMPVAR_HANDLER,
+               ZEND_IS_SMALLER_SPEC_CONST_TMPVAR_HANDLER,
+               ZEND_NULL_HANDLER,
+               ZEND_IS_SMALLER_SPEC_CONST_CV_HANDLER,
+               ZEND_IS_SMALLER_SPEC_TMPVAR_CONST_HANDLER,
+               ZEND_IS_SMALLER_SPEC_TMPVAR_TMPVAR_HANDLER,
+               ZEND_IS_SMALLER_SPEC_TMPVAR_TMPVAR_HANDLER,
+               ZEND_NULL_HANDLER,
+               ZEND_IS_SMALLER_SPEC_TMPVAR_CV_HANDLER,
+               ZEND_IS_SMALLER_SPEC_TMPVAR_CONST_HANDLER,
+               ZEND_IS_SMALLER_SPEC_TMPVAR_TMPVAR_HANDLER,
+               ZEND_IS_SMALLER_SPEC_TMPVAR_TMPVAR_HANDLER,
+               ZEND_NULL_HANDLER,
+               ZEND_IS_SMALLER_SPEC_TMPVAR_CV_HANDLER,
+               ZEND_NULL_HANDLER,
+               ZEND_NULL_HANDLER,
+               ZEND_NULL_HANDLER,
+               ZEND_NULL_HANDLER,
+               ZEND_NULL_HANDLER,
+               ZEND_IS_SMALLER_SPEC_CV_CONST_HANDLER,
+               ZEND_IS_SMALLER_SPEC_CV_TMPVAR_HANDLER,
+               ZEND_IS_SMALLER_SPEC_CV_TMPVAR_HANDLER,
+               ZEND_NULL_HANDLER,
+               ZEND_IS_SMALLER_SPEC_CV_CV_HANDLER,
+               ZEND_IS_SMALLER_OR_EQUAL_SPEC_CONST_CONST_HANDLER,
+               ZEND_IS_SMALLER_OR_EQUAL_SPEC_CONST_TMPVAR_HANDLER,
+               ZEND_IS_SMALLER_OR_EQUAL_SPEC_CONST_TMPVAR_HANDLER,
+               ZEND_NULL_HANDLER,
+               ZEND_IS_SMALLER_OR_EQUAL_SPEC_CONST_CV_HANDLER,
+               ZEND_IS_SMALLER_OR_EQUAL_SPEC_TMPVAR_CONST_HANDLER,
+               ZEND_IS_SMALLER_OR_EQUAL_SPEC_TMPVAR_TMPVAR_HANDLER,
+               ZEND_IS_SMALLER_OR_EQUAL_SPEC_TMPVAR_TMPVAR_HANDLER,
+               ZEND_NULL_HANDLER,
+               ZEND_IS_SMALLER_OR_EQUAL_SPEC_TMPVAR_CV_HANDLER,
+               ZEND_IS_SMALLER_OR_EQUAL_SPEC_TMPVAR_CONST_HANDLER,
+               ZEND_IS_SMALLER_OR_EQUAL_SPEC_TMPVAR_TMPVAR_HANDLER,
+               ZEND_IS_SMALLER_OR_EQUAL_SPEC_TMPVAR_TMPVAR_HANDLER,
+               ZEND_NULL_HANDLER,
+               ZEND_IS_SMALLER_OR_EQUAL_SPEC_TMPVAR_CV_HANDLER,
+               ZEND_NULL_HANDLER,
+               ZEND_NULL_HANDLER,
+               ZEND_NULL_HANDLER,
+               ZEND_NULL_HANDLER,
+               ZEND_NULL_HANDLER,
+               ZEND_IS_SMALLER_OR_EQUAL_SPEC_CV_CONST_HANDLER,
+               ZEND_IS_SMALLER_OR_EQUAL_SPEC_CV_TMPVAR_HANDLER,
+               ZEND_IS_SMALLER_OR_EQUAL_SPEC_CV_TMPVAR_HANDLER,
+               ZEND_NULL_HANDLER,
+               ZEND_IS_SMALLER_OR_EQUAL_SPEC_CV_CV_HANDLER,
+               ZEND_CAST_SPEC_CONST_HANDLER,
+               ZEND_CAST_SPEC_TMP_HANDLER,
+               ZEND_CAST_SPEC_VAR_HANDLER,
+               ZEND_NULL_HANDLER,
+               ZEND_CAST_SPEC_CV_HANDLER,
+               ZEND_QM_ASSIGN_SPEC_CONST_HANDLER,
+               ZEND_QM_ASSIGN_SPEC_TMP_HANDLER,
+               ZEND_QM_ASSIGN_SPEC_VAR_HANDLER,
+               ZEND_NULL_HANDLER,
+               ZEND_QM_ASSIGN_SPEC_CV_HANDLER,
+               ZEND_NULL_HANDLER,
+               ZEND_NULL_HANDLER,
+               ZEND_NULL_HANDLER,
+               ZEND_NULL_HANDLER,
+               ZEND_NULL_HANDLER,
+               ZEND_NULL_HANDLER,
+               ZEND_NULL_HANDLER,
+               ZEND_NULL_HANDLER,
+               ZEND_NULL_HANDLER,
+               ZEND_NULL_HANDLER,
+               ZEND_ASSIGN_ADD_SPEC_VAR_CONST_HANDLER,
+               ZEND_ASSIGN_ADD_SPEC_VAR_TMPVAR_HANDLER,
+               ZEND_ASSIGN_ADD_SPEC_VAR_TMPVAR_HANDLER,
+               ZEND_ASSIGN_ADD_SPEC_VAR_UNUSED_HANDLER,
+               ZEND_ASSIGN_ADD_SPEC_VAR_CV_HANDLER,
+               ZEND_ASSIGN_ADD_SPEC_UNUSED_CONST_HANDLER,
+               ZEND_ASSIGN_ADD_SPEC_UNUSED_TMPVAR_HANDLER,
+               ZEND_ASSIGN_ADD_SPEC_UNUSED_TMPVAR_HANDLER,
+               ZEND_ASSIGN_ADD_SPEC_UNUSED_UNUSED_HANDLER,
+               ZEND_ASSIGN_ADD_SPEC_UNUSED_CV_HANDLER,
+               ZEND_ASSIGN_ADD_SPEC_CV_CONST_HANDLER,
+               ZEND_ASSIGN_ADD_SPEC_CV_TMPVAR_HANDLER,
+               ZEND_ASSIGN_ADD_SPEC_CV_TMPVAR_HANDLER,
+               ZEND_ASSIGN_ADD_SPEC_CV_UNUSED_HANDLER,
+               ZEND_ASSIGN_ADD_SPEC_CV_CV_HANDLER,
+               ZEND_NULL_HANDLER,
+               ZEND_NULL_HANDLER,
+               ZEND_NULL_HANDLER,
+               ZEND_NULL_HANDLER,
+               ZEND_NULL_HANDLER,
+               ZEND_NULL_HANDLER,
+               ZEND_NULL_HANDLER,
+               ZEND_NULL_HANDLER,
+               ZEND_NULL_HANDLER,
+               ZEND_NULL_HANDLER,
+               ZEND_ASSIGN_SUB_SPEC_VAR_CONST_HANDLER,
+               ZEND_ASSIGN_SUB_SPEC_VAR_TMPVAR_HANDLER,
+               ZEND_ASSIGN_SUB_SPEC_VAR_TMPVAR_HANDLER,
+               ZEND_ASSIGN_SUB_SPEC_VAR_UNUSED_HANDLER,
+               ZEND_ASSIGN_SUB_SPEC_VAR_CV_HANDLER,
+               ZEND_ASSIGN_SUB_SPEC_UNUSED_CONST_HANDLER,
+               ZEND_ASSIGN_SUB_SPEC_UNUSED_TMPVAR_HANDLER,
+               ZEND_ASSIGN_SUB_SPEC_UNUSED_TMPVAR_HANDLER,
+               ZEND_ASSIGN_SUB_SPEC_UNUSED_UNUSED_HANDLER,
+               ZEND_ASSIGN_SUB_SPEC_UNUSED_CV_HANDLER,
+               ZEND_ASSIGN_SUB_SPEC_CV_CONST_HANDLER,
+               ZEND_ASSIGN_SUB_SPEC_CV_TMPVAR_HANDLER,
+               ZEND_ASSIGN_SUB_SPEC_CV_TMPVAR_HANDLER,
+               ZEND_ASSIGN_SUB_SPEC_CV_UNUSED_HANDLER,
+               ZEND_ASSIGN_SUB_SPEC_CV_CV_HANDLER,
+               ZEND_NULL_HANDLER,
+               ZEND_NULL_HANDLER,
+               ZEND_NULL_HANDLER,
+               ZEND_NULL_HANDLER,
+               ZEND_NULL_HANDLER,
+               ZEND_NULL_HANDLER,
+               ZEND_NULL_HANDLER,
+               ZEND_NULL_HANDLER,
+               ZEND_NULL_HANDLER,
+               ZEND_NULL_HANDLER,
+               ZEND_ASSIGN_MUL_SPEC_VAR_CONST_HANDLER,
+               ZEND_ASSIGN_MUL_SPEC_VAR_TMPVAR_HANDLER,
+               ZEND_ASSIGN_MUL_SPEC_VAR_TMPVAR_HANDLER,
+               ZEND_ASSIGN_MUL_SPEC_VAR_UNUSED_HANDLER,
+               ZEND_ASSIGN_MUL_SPEC_VAR_CV_HANDLER,
+               ZEND_ASSIGN_MUL_SPEC_UNUSED_CONST_HANDLER,
+               ZEND_ASSIGN_MUL_SPEC_UNUSED_TMPVAR_HANDLER,
+               ZEND_ASSIGN_MUL_SPEC_UNUSED_TMPVAR_HANDLER,
+               ZEND_ASSIGN_MUL_SPEC_UNUSED_UNUSED_HANDLER,
+               ZEND_ASSIGN_MUL_SPEC_UNUSED_CV_HANDLER,
+               ZEND_ASSIGN_MUL_SPEC_CV_CONST_HANDLER,
+               ZEND_ASSIGN_MUL_SPEC_CV_TMPVAR_HANDLER,
+               ZEND_ASSIGN_MUL_SPEC_CV_TMPVAR_HANDLER,
+               ZEND_ASSIGN_MUL_SPEC_CV_UNUSED_HANDLER,
+               ZEND_ASSIGN_MUL_SPEC_CV_CV_HANDLER,
+               ZEND_NULL_HANDLER,
+               ZEND_NULL_HANDLER,
+               ZEND_NULL_HANDLER,
+               ZEND_NULL_HANDLER,
+               ZEND_NULL_HANDLER,
+               ZEND_NULL_HANDLER,
+               ZEND_NULL_HANDLER,
+               ZEND_NULL_HANDLER,
+               ZEND_NULL_HANDLER,
+               ZEND_NULL_HANDLER,
+               ZEND_ASSIGN_DIV_SPEC_VAR_CONST_HANDLER,
+               ZEND_ASSIGN_DIV_SPEC_VAR_TMPVAR_HANDLER,
+               ZEND_ASSIGN_DIV_SPEC_VAR_TMPVAR_HANDLER,
+               ZEND_ASSIGN_DIV_SPEC_VAR_UNUSED_HANDLER,
+               ZEND_ASSIGN_DIV_SPEC_VAR_CV_HANDLER,
+               ZEND_ASSIGN_DIV_SPEC_UNUSED_CONST_HANDLER,
+               ZEND_ASSIGN_DIV_SPEC_UNUSED_TMPVAR_HANDLER,
+               ZEND_ASSIGN_DIV_SPEC_UNUSED_TMPVAR_HANDLER,
+               ZEND_ASSIGN_DIV_SPEC_UNUSED_UNUSED_HANDLER,
+               ZEND_ASSIGN_DIV_SPEC_UNUSED_CV_HANDLER,
+               ZEND_ASSIGN_DIV_SPEC_CV_CONST_HANDLER,
+               ZEND_ASSIGN_DIV_SPEC_CV_TMPVAR_HANDLER,
+               ZEND_ASSIGN_DIV_SPEC_CV_TMPVAR_HANDLER,
+               ZEND_ASSIGN_DIV_SPEC_CV_UNUSED_HANDLER,
+               ZEND_ASSIGN_DIV_SPEC_CV_CV_HANDLER,
+               ZEND_NULL_HANDLER,
+               ZEND_NULL_HANDLER,
+               ZEND_NULL_HANDLER,
+               ZEND_NULL_HANDLER,
+               ZEND_NULL_HANDLER,
+               ZEND_NULL_HANDLER,
+               ZEND_NULL_HANDLER,
+               ZEND_NULL_HANDLER,
+               ZEND_NULL_HANDLER,
+               ZEND_NULL_HANDLER,
+               ZEND_ASSIGN_MOD_SPEC_VAR_CONST_HANDLER,
+               ZEND_ASSIGN_MOD_SPEC_VAR_TMPVAR_HANDLER,
+               ZEND_ASSIGN_MOD_SPEC_VAR_TMPVAR_HANDLER,
+               ZEND_ASSIGN_MOD_SPEC_VAR_UNUSED_HANDLER,
+               ZEND_ASSIGN_MOD_SPEC_VAR_CV_HANDLER,
+               ZEND_ASSIGN_MOD_SPEC_UNUSED_CONST_HANDLER,
+               ZEND_ASSIGN_MOD_SPEC_UNUSED_TMPVAR_HANDLER,
+               ZEND_ASSIGN_MOD_SPEC_UNUSED_TMPVAR_HANDLER,
+               ZEND_ASSIGN_MOD_SPEC_UNUSED_UNUSED_HANDLER,
+               ZEND_ASSIGN_MOD_SPEC_UNUSED_CV_HANDLER,
+               ZEND_ASSIGN_MOD_SPEC_CV_CONST_HANDLER,
+               ZEND_ASSIGN_MOD_SPEC_CV_TMPVAR_HANDLER,
+               ZEND_ASSIGN_MOD_SPEC_CV_TMPVAR_HANDLER,
+               ZEND_ASSIGN_MOD_SPEC_CV_UNUSED_HANDLER,
+               ZEND_ASSIGN_MOD_SPEC_CV_CV_HANDLER,
+               ZEND_NULL_HANDLER,
+               ZEND_NULL_HANDLER,
+               ZEND_NULL_HANDLER,
+               ZEND_NULL_HANDLER,
+               ZEND_NULL_HANDLER,
+               ZEND_NULL_HANDLER,
+               ZEND_NULL_HANDLER,
+               ZEND_NULL_HANDLER,
+               ZEND_NULL_HANDLER,
+               ZEND_NULL_HANDLER,
+               ZEND_ASSIGN_SL_SPEC_VAR_CONST_HANDLER,
+               ZEND_ASSIGN_SL_SPEC_VAR_TMPVAR_HANDLER,
+               ZEND_ASSIGN_SL_SPEC_VAR_TMPVAR_HANDLER,
+               ZEND_ASSIGN_SL_SPEC_VAR_UNUSED_HANDLER,
+               ZEND_ASSIGN_SL_SPEC_VAR_CV_HANDLER,
+               ZEND_ASSIGN_SL_SPEC_UNUSED_CONST_HANDLER,
+               ZEND_ASSIGN_SL_SPEC_UNUSED_TMPVAR_HANDLER,
+               ZEND_ASSIGN_SL_SPEC_UNUSED_TMPVAR_HANDLER,
+               ZEND_ASSIGN_SL_SPEC_UNUSED_UNUSED_HANDLER,
+               ZEND_ASSIGN_SL_SPEC_UNUSED_CV_HANDLER,
+               ZEND_ASSIGN_SL_SPEC_CV_CONST_HANDLER,
+               ZEND_ASSIGN_SL_SPEC_CV_TMPVAR_HANDLER,
+               ZEND_ASSIGN_SL_SPEC_CV_TMPVAR_HANDLER,
+               ZEND_ASSIGN_SL_SPEC_CV_UNUSED_HANDLER,
+               ZEND_ASSIGN_SL_SPEC_CV_CV_HANDLER,
+               ZEND_NULL_HANDLER,
+               ZEND_NULL_HANDLER,
+               ZEND_NULL_HANDLER,
+               ZEND_NULL_HANDLER,
+               ZEND_NULL_HANDLER,
+               ZEND_NULL_HANDLER,
+               ZEND_NULL_HANDLER,
+               ZEND_NULL_HANDLER,
+               ZEND_NULL_HANDLER,
+               ZEND_NULL_HANDLER,
+               ZEND_ASSIGN_SR_SPEC_VAR_CONST_HANDLER,
+               ZEND_ASSIGN_SR_SPEC_VAR_TMPVAR_HANDLER,
+               ZEND_ASSIGN_SR_SPEC_VAR_TMPVAR_HANDLER,
+               ZEND_ASSIGN_SR_SPEC_VAR_UNUSED_HANDLER,
+               ZEND_ASSIGN_SR_SPEC_VAR_CV_HANDLER,
+               ZEND_ASSIGN_SR_SPEC_UNUSED_CONST_HANDLER,
+               ZEND_ASSIGN_SR_SPEC_UNUSED_TMPVAR_HANDLER,
+               ZEND_ASSIGN_SR_SPEC_UNUSED_TMPVAR_HANDLER,
+               ZEND_ASSIGN_SR_SPEC_UNUSED_UNUSED_HANDLER,
+               ZEND_ASSIGN_SR_SPEC_UNUSED_CV_HANDLER,
+               ZEND_ASSIGN_SR_SPEC_CV_CONST_HANDLER,
+               ZEND_ASSIGN_SR_SPEC_CV_TMPVAR_HANDLER,
+               ZEND_ASSIGN_SR_SPEC_CV_TMPVAR_HANDLER,
+               ZEND_ASSIGN_SR_SPEC_CV_UNUSED_HANDLER,
+               ZEND_ASSIGN_SR_SPEC_CV_CV_HANDLER,
+               ZEND_NULL_HANDLER,
+               ZEND_NULL_HANDLER,
+               ZEND_NULL_HANDLER,
+               ZEND_NULL_HANDLER,
+               ZEND_NULL_HANDLER,
+               ZEND_NULL_HANDLER,
+               ZEND_NULL_HANDLER,
+               ZEND_NULL_HANDLER,
+               ZEND_NULL_HANDLER,
+               ZEND_NULL_HANDLER,
+               ZEND_ASSIGN_CONCAT_SPEC_VAR_CONST_HANDLER,
+               ZEND_ASSIGN_CONCAT_SPEC_VAR_TMPVAR_HANDLER,
+               ZEND_ASSIGN_CONCAT_SPEC_VAR_TMPVAR_HANDLER,
+               ZEND_ASSIGN_CONCAT_SPEC_VAR_UNUSED_HANDLER,
+               ZEND_ASSIGN_CONCAT_SPEC_VAR_CV_HANDLER,
+               ZEND_ASSIGN_CONCAT_SPEC_UNUSED_CONST_HANDLER,
+               ZEND_ASSIGN_CONCAT_SPEC_UNUSED_TMPVAR_HANDLER,
+               ZEND_ASSIGN_CONCAT_SPEC_UNUSED_TMPVAR_HANDLER,
+               ZEND_ASSIGN_CONCAT_SPEC_UNUSED_UNUSED_HANDLER,
+               ZEND_ASSIGN_CONCAT_SPEC_UNUSED_CV_HANDLER,
+               ZEND_ASSIGN_CONCAT_SPEC_CV_CONST_HANDLER,
+               ZEND_ASSIGN_CONCAT_SPEC_CV_TMPVAR_HANDLER,
+               ZEND_ASSIGN_CONCAT_SPEC_CV_TMPVAR_HANDLER,
+               ZEND_ASSIGN_CONCAT_SPEC_CV_UNUSED_HANDLER,
+               ZEND_ASSIGN_CONCAT_SPEC_CV_CV_HANDLER,
+               ZEND_NULL_HANDLER,
+               ZEND_NULL_HANDLER,
+               ZEND_NULL_HANDLER,
+               ZEND_NULL_HANDLER,
+               ZEND_NULL_HANDLER,
+               ZEND_NULL_HANDLER,
+               ZEND_NULL_HANDLER,
+               ZEND_NULL_HANDLER,
+               ZEND_NULL_HANDLER,
+               ZEND_NULL_HANDLER,
+               ZEND_ASSIGN_BW_OR_SPEC_VAR_CONST_HANDLER,
+               ZEND_ASSIGN_BW_OR_SPEC_VAR_TMPVAR_HANDLER,
+               ZEND_ASSIGN_BW_OR_SPEC_VAR_TMPVAR_HANDLER,
+               ZEND_ASSIGN_BW_OR_SPEC_VAR_UNUSED_HANDLER,
+               ZEND_ASSIGN_BW_OR_SPEC_VAR_CV_HANDLER,
+               ZEND_ASSIGN_BW_OR_SPEC_UNUSED_CONST_HANDLER,
+               ZEND_ASSIGN_BW_OR_SPEC_UNUSED_TMPVAR_HANDLER,
+               ZEND_ASSIGN_BW_OR_SPEC_UNUSED_TMPVAR_HANDLER,
+               ZEND_ASSIGN_BW_OR_SPEC_UNUSED_UNUSED_HANDLER,
+               ZEND_ASSIGN_BW_OR_SPEC_UNUSED_CV_HANDLER,
+               ZEND_ASSIGN_BW_OR_SPEC_CV_CONST_HANDLER,
+               ZEND_ASSIGN_BW_OR_SPEC_CV_TMPVAR_HANDLER,
+               ZEND_ASSIGN_BW_OR_SPEC_CV_TMPVAR_HANDLER,
+               ZEND_ASSIGN_BW_OR_SPEC_CV_UNUSED_HANDLER,
+               ZEND_ASSIGN_BW_OR_SPEC_CV_CV_HANDLER,
+               ZEND_NULL_HANDLER,
+               ZEND_NULL_HANDLER,
+               ZEND_NULL_HANDLER,
+               ZEND_NULL_HANDLER,
+               ZEND_NULL_HANDLER,
+               ZEND_NULL_HANDLER,
+               ZEND_NULL_HANDLER,
+               ZEND_NULL_HANDLER,
+               ZEND_NULL_HANDLER,
+               ZEND_NULL_HANDLER,
+               ZEND_ASSIGN_BW_AND_SPEC_VAR_CONST_HANDLER,
+               ZEND_ASSIGN_BW_AND_SPEC_VAR_TMPVAR_HANDLER,
+               ZEND_ASSIGN_BW_AND_SPEC_VAR_TMPVAR_HANDLER,
+               ZEND_ASSIGN_BW_AND_SPEC_VAR_UNUSED_HANDLER,
+               ZEND_ASSIGN_BW_AND_SPEC_VAR_CV_HANDLER,
+               ZEND_ASSIGN_BW_AND_SPEC_UNUSED_CONST_HANDLER,
+               ZEND_ASSIGN_BW_AND_SPEC_UNUSED_TMPVAR_HANDLER,
+               ZEND_ASSIGN_BW_AND_SPEC_UNUSED_TMPVAR_HANDLER,
+               ZEND_ASSIGN_BW_AND_SPEC_UNUSED_UNUSED_HANDLER,
+               ZEND_ASSIGN_BW_AND_SPEC_UNUSED_CV_HANDLER,
+               ZEND_ASSIGN_BW_AND_SPEC_CV_CONST_HANDLER,
+               ZEND_ASSIGN_BW_AND_SPEC_CV_TMPVAR_HANDLER,
+               ZEND_ASSIGN_BW_AND_SPEC_CV_TMPVAR_HANDLER,
+               ZEND_ASSIGN_BW_AND_SPEC_CV_UNUSED_HANDLER,
+               ZEND_ASSIGN_BW_AND_SPEC_CV_CV_HANDLER,
+               ZEND_NULL_HANDLER,
+               ZEND_NULL_HANDLER,
+               ZEND_NULL_HANDLER,
+               ZEND_NULL_HANDLER,
+               ZEND_NULL_HANDLER,
+               ZEND_NULL_HANDLER,
+               ZEND_NULL_HANDLER,
+               ZEND_NULL_HANDLER,
+               ZEND_NULL_HANDLER,
+               ZEND_NULL_HANDLER,
+               ZEND_ASSIGN_BW_XOR_SPEC_VAR_CONST_HANDLER,
+               ZEND_ASSIGN_BW_XOR_SPEC_VAR_TMPVAR_HANDLER,
+               ZEND_ASSIGN_BW_XOR_SPEC_VAR_TMPVAR_HANDLER,
+               ZEND_ASSIGN_BW_XOR_SPEC_VAR_UNUSED_HANDLER,
+               ZEND_ASSIGN_BW_XOR_SPEC_VAR_CV_HANDLER,
+               ZEND_ASSIGN_BW_XOR_SPEC_UNUSED_CONST_HANDLER,
+               ZEND_ASSIGN_BW_XOR_SPEC_UNUSED_TMPVAR_HANDLER,
+               ZEND_ASSIGN_BW_XOR_SPEC_UNUSED_TMPVAR_HANDLER,
+               ZEND_ASSIGN_BW_XOR_SPEC_UNUSED_UNUSED_HANDLER,
+               ZEND_ASSIGN_BW_XOR_SPEC_UNUSED_CV_HANDLER,
+               ZEND_ASSIGN_BW_XOR_SPEC_CV_CONST_HANDLER,
+               ZEND_ASSIGN_BW_XOR_SPEC_CV_TMPVAR_HANDLER,
+               ZEND_ASSIGN_BW_XOR_SPEC_CV_TMPVAR_HANDLER,
+               ZEND_ASSIGN_BW_XOR_SPEC_CV_UNUSED_HANDLER,
+               ZEND_ASSIGN_BW_XOR_SPEC_CV_CV_HANDLER,
+               ZEND_NULL_HANDLER,
+               ZEND_NULL_HANDLER,
+               ZEND_NULL_HANDLER,
+               ZEND_NULL_HANDLER,
+               ZEND_PRE_INC_SPEC_VAR_RETVAL_UNUSED_HANDLER,
+               ZEND_PRE_INC_SPEC_VAR_RETVAL_USED_HANDLER,
+               ZEND_NULL_HANDLER,
+               ZEND_NULL_HANDLER,
+               ZEND_PRE_INC_SPEC_CV_RETVAL_UNUSED_HANDLER,
+               ZEND_PRE_INC_SPEC_CV_RETVAL_USED_HANDLER,
+               ZEND_NULL_HANDLER,
+               ZEND_NULL_HANDLER,
+               ZEND_NULL_HANDLER,
+               ZEND_NULL_HANDLER,
+               ZEND_PRE_DEC_SPEC_VAR_RETVAL_UNUSED_HANDLER,
+               ZEND_PRE_DEC_SPEC_VAR_RETVAL_USED_HANDLER,
+               ZEND_NULL_HANDLER,
+               ZEND_NULL_HANDLER,
+               ZEND_PRE_DEC_SPEC_CV_RETVAL_UNUSED_HANDLER,
+               ZEND_PRE_DEC_SPEC_CV_RETVAL_USED_HANDLER,
+               ZEND_NULL_HANDLER,
+               ZEND_NULL_HANDLER,
+               ZEND_POST_INC_SPEC_VAR_HANDLER,
+               ZEND_NULL_HANDLER,
+               ZEND_POST_INC_SPEC_CV_HANDLER,
+               ZEND_NULL_HANDLER,
+               ZEND_NULL_HANDLER,
+               ZEND_POST_DEC_SPEC_VAR_HANDLER,
+               ZEND_NULL_HANDLER,
+               ZEND_POST_DEC_SPEC_CV_HANDLER,
+               ZEND_NULL_HANDLER,
+               ZEND_NULL_HANDLER,
+               ZEND_NULL_HANDLER,
+               ZEND_NULL_HANDLER,
+               ZEND_NULL_HANDLER,
+               ZEND_NULL_HANDLER,
+               ZEND_NULL_HANDLER,
+               ZEND_NULL_HANDLER,
+               ZEND_NULL_HANDLER,
+               ZEND_NULL_HANDLER,
+               ZEND_NULL_HANDLER,
+               ZEND_NULL_HANDLER,
+               ZEND_NULL_HANDLER,
+               ZEND_NULL_HANDLER,
+               ZEND_NULL_HANDLER,
+               ZEND_NULL_HANDLER,
+               ZEND_NULL_HANDLER,
+               ZEND_NULL_HANDLER,
+               ZEND_NULL_HANDLER,
+               ZEND_NULL_HANDLER,
+               ZEND_ASSIGN_SPEC_VAR_CONST_RETVAL_UNUSED_HANDLER,
+               ZEND_ASSIGN_SPEC_VAR_CONST_RETVAL_USED_HANDLER,
+               ZEND_ASSIGN_SPEC_VAR_TMP_RETVAL_UNUSED_HANDLER,
+               ZEND_ASSIGN_SPEC_VAR_TMP_RETVAL_USED_HANDLER,
+               ZEND_ASSIGN_SPEC_VAR_VAR_RETVAL_UNUSED_HANDLER,
+               ZEND_ASSIGN_SPEC_VAR_VAR_RETVAL_USED_HANDLER,
+               ZEND_NULL_HANDLER,
+               ZEND_NULL_HANDLER,
+               ZEND_ASSIGN_SPEC_VAR_CV_RETVAL_UNUSED_HANDLER,
+               ZEND_ASSIGN_SPEC_VAR_CV_RETVAL_USED_HANDLER,
+               ZEND_NULL_HANDLER,
+               ZEND_NULL_HANDLER,
+               ZEND_NULL_HANDLER,
+               ZEND_NULL_HANDLER,
+               ZEND_NULL_HANDLER,
+               ZEND_NULL_HANDLER,
+               ZEND_NULL_HANDLER,
+               ZEND_NULL_HANDLER,
+               ZEND_NULL_HANDLER,
+               ZEND_NULL_HANDLER,
+               ZEND_ASSIGN_SPEC_CV_CONST_RETVAL_UNUSED_HANDLER,
+               ZEND_ASSIGN_SPEC_CV_CONST_RETVAL_USED_HANDLER,
+               ZEND_ASSIGN_SPEC_CV_TMP_RETVAL_UNUSED_HANDLER,
+               ZEND_ASSIGN_SPEC_CV_TMP_RETVAL_USED_HANDLER,
+               ZEND_ASSIGN_SPEC_CV_VAR_RETVAL_UNUSED_HANDLER,
+               ZEND_ASSIGN_SPEC_CV_VAR_RETVAL_USED_HANDLER,
+               ZEND_NULL_HANDLER,
+               ZEND_NULL_HANDLER,
+               ZEND_ASSIGN_SPEC_CV_CV_RETVAL_UNUSED_HANDLER,
+               ZEND_ASSIGN_SPEC_CV_CV_RETVAL_USED_HANDLER,
+               ZEND_NULL_HANDLER,
+               ZEND_NULL_HANDLER,
+               ZEND_NULL_HANDLER,
+               ZEND_NULL_HANDLER,
+               ZEND_NULL_HANDLER,
+               ZEND_NULL_HANDLER,
+               ZEND_NULL_HANDLER,
+               ZEND_NULL_HANDLER,
+               ZEND_NULL_HANDLER,
+               ZEND_NULL_HANDLER,
+               ZEND_NULL_HANDLER,
+               ZEND_NULL_HANDLER,
+               ZEND_ASSIGN_REF_SPEC_VAR_VAR_HANDLER,
+               ZEND_NULL_HANDLER,
+               ZEND_ASSIGN_REF_SPEC_VAR_CV_HANDLER,
+               ZEND_NULL_HANDLER,
+               ZEND_NULL_HANDLER,
+               ZEND_NULL_HANDLER,
+               ZEND_NULL_HANDLER,
+               ZEND_NULL_HANDLER,
+               ZEND_NULL_HANDLER,
+               ZEND_NULL_HANDLER,
+               ZEND_ASSIGN_REF_SPEC_CV_VAR_HANDLER,
+               ZEND_NULL_HANDLER,
+               ZEND_ASSIGN_REF_SPEC_CV_CV_HANDLER,
+               ZEND_ECHO_SPEC_CONST_HANDLER,
+               ZEND_ECHO_SPEC_TMPVAR_HANDLER,
+               ZEND_ECHO_SPEC_TMPVAR_HANDLER,
+               ZEND_NULL_HANDLER,
+               ZEND_ECHO_SPEC_CV_HANDLER,
+               ZEND_JMP_SPEC_HANDLER,
+               ZEND_JMPZ_SPEC_CONST_HANDLER,
+               ZEND_JMPZ_SPEC_TMPVAR_HANDLER,
+               ZEND_JMPZ_SPEC_TMPVAR_HANDLER,
+               ZEND_NULL_HANDLER,
+               ZEND_JMPZ_SPEC_CV_HANDLER,
+               ZEND_JMPNZ_SPEC_CONST_HANDLER,
+               ZEND_JMPNZ_SPEC_TMPVAR_HANDLER,
+               ZEND_JMPNZ_SPEC_TMPVAR_HANDLER,
+               ZEND_NULL_HANDLER,
+               ZEND_JMPNZ_SPEC_CV_HANDLER,
+               ZEND_JMPZNZ_SPEC_CONST_HANDLER,
+               ZEND_JMPZNZ_SPEC_TMPVAR_HANDLER,
+               ZEND_JMPZNZ_SPEC_TMPVAR_HANDLER,
+               ZEND_NULL_HANDLER,
+               ZEND_JMPZNZ_SPEC_CV_HANDLER,
+               ZEND_JMPZ_EX_SPEC_CONST_HANDLER,
+               ZEND_JMPZ_EX_SPEC_TMPVAR_HANDLER,
+               ZEND_JMPZ_EX_SPEC_TMPVAR_HANDLER,
+               ZEND_NULL_HANDLER,
+               ZEND_JMPZ_EX_SPEC_CV_HANDLER,
+               ZEND_JMPNZ_EX_SPEC_CONST_HANDLER,
+               ZEND_JMPNZ_EX_SPEC_TMPVAR_HANDLER,
+               ZEND_JMPNZ_EX_SPEC_TMPVAR_HANDLER,
+               ZEND_NULL_HANDLER,
+               ZEND_JMPNZ_EX_SPEC_CV_HANDLER,
+               ZEND_CASE_SPEC_CONST_CONST_HANDLER,
+               ZEND_CASE_SPEC_CONST_TMPVAR_HANDLER,
+               ZEND_CASE_SPEC_CONST_TMPVAR_HANDLER,
+               ZEND_NULL_HANDLER,
+               ZEND_CASE_SPEC_CONST_CV_HANDLER,
+               ZEND_CASE_SPEC_TMPVAR_CONST_HANDLER,
+               ZEND_CASE_SPEC_TMPVAR_TMPVAR_HANDLER,
+               ZEND_CASE_SPEC_TMPVAR_TMPVAR_HANDLER,
+               ZEND_NULL_HANDLER,
+               ZEND_CASE_SPEC_TMPVAR_CV_HANDLER,
+               ZEND_CASE_SPEC_TMPVAR_CONST_HANDLER,
+               ZEND_CASE_SPEC_TMPVAR_TMPVAR_HANDLER,
+               ZEND_CASE_SPEC_TMPVAR_TMPVAR_HANDLER,
+               ZEND_NULL_HANDLER,
+               ZEND_CASE_SPEC_TMPVAR_CV_HANDLER,
+               ZEND_NULL_HANDLER,
+               ZEND_NULL_HANDLER,
+               ZEND_NULL_HANDLER,
+               ZEND_NULL_HANDLER,
+               ZEND_NULL_HANDLER,
+               ZEND_CASE_SPEC_CV_CONST_HANDLER,
+               ZEND_CASE_SPEC_CV_TMPVAR_HANDLER,
+               ZEND_CASE_SPEC_CV_TMPVAR_HANDLER,
+               ZEND_NULL_HANDLER,
+               ZEND_CASE_SPEC_CV_CV_HANDLER,
+               ZEND_BOOL_SPEC_CONST_HANDLER,
+               ZEND_BOOL_SPEC_TMPVAR_HANDLER,
+               ZEND_BOOL_SPEC_TMPVAR_HANDLER,
+               ZEND_NULL_HANDLER,
+               ZEND_BOOL_SPEC_CV_HANDLER,
+               ZEND_FAST_CONCAT_SPEC_CONST_CONST_HANDLER,
+               ZEND_FAST_CONCAT_SPEC_CONST_TMPVAR_HANDLER,
+               ZEND_FAST_CONCAT_SPEC_CONST_TMPVAR_HANDLER,
+               ZEND_NULL_HANDLER,
+               ZEND_FAST_CONCAT_SPEC_CONST_CV_HANDLER,
+               ZEND_FAST_CONCAT_SPEC_TMPVAR_CONST_HANDLER,
+               ZEND_FAST_CONCAT_SPEC_TMPVAR_TMPVAR_HANDLER,
+               ZEND_FAST_CONCAT_SPEC_TMPVAR_TMPVAR_HANDLER,
+               ZEND_NULL_HANDLER,
+               ZEND_FAST_CONCAT_SPEC_TMPVAR_CV_HANDLER,
+               ZEND_FAST_CONCAT_SPEC_TMPVAR_CONST_HANDLER,
+               ZEND_FAST_CONCAT_SPEC_TMPVAR_TMPVAR_HANDLER,
+               ZEND_FAST_CONCAT_SPEC_TMPVAR_TMPVAR_HANDLER,
+               ZEND_NULL_HANDLER,
+               ZEND_FAST_CONCAT_SPEC_TMPVAR_CV_HANDLER,
+               ZEND_NULL_HANDLER,
+               ZEND_NULL_HANDLER,
+               ZEND_NULL_HANDLER,
+               ZEND_NULL_HANDLER,
+               ZEND_NULL_HANDLER,
+               ZEND_FAST_CONCAT_SPEC_CV_CONST_HANDLER,
+               ZEND_FAST_CONCAT_SPEC_CV_TMPVAR_HANDLER,
+               ZEND_FAST_CONCAT_SPEC_CV_TMPVAR_HANDLER,
+               ZEND_NULL_HANDLER,
+               ZEND_FAST_CONCAT_SPEC_CV_CV_HANDLER,
+               ZEND_NULL_HANDLER,
+               ZEND_NULL_HANDLER,
+               ZEND_NULL_HANDLER,
+               ZEND_NULL_HANDLER,
+               ZEND_NULL_HANDLER,
+               ZEND_NULL_HANDLER,
+               ZEND_NULL_HANDLER,
+               ZEND_NULL_HANDLER,
+               ZEND_NULL_HANDLER,
+               ZEND_NULL_HANDLER,
+               ZEND_NULL_HANDLER,
+               ZEND_NULL_HANDLER,
+               ZEND_NULL_HANDLER,
+               ZEND_NULL_HANDLER,
+               ZEND_NULL_HANDLER,
+               ZEND_ROPE_INIT_SPEC_UNUSED_CONST_HANDLER,
+               ZEND_ROPE_INIT_SPEC_UNUSED_TMPVAR_HANDLER,
+               ZEND_ROPE_INIT_SPEC_UNUSED_TMPVAR_HANDLER,
+               ZEND_NULL_HANDLER,
+               ZEND_ROPE_INIT_SPEC_UNUSED_CV_HANDLER,
+               ZEND_NULL_HANDLER,
+               ZEND_NULL_HANDLER,
+               ZEND_NULL_HANDLER,
+               ZEND_NULL_HANDLER,
+               ZEND_NULL_HANDLER,
+               ZEND_NULL_HANDLER,
+               ZEND_NULL_HANDLER,
+               ZEND_NULL_HANDLER,
+               ZEND_NULL_HANDLER,
+               ZEND_NULL_HANDLER,
+               ZEND_ROPE_ADD_SPEC_TMP_CONST_HANDLER,
+               ZEND_ROPE_ADD_SPEC_TMP_TMPVAR_HANDLER,
+               ZEND_ROPE_ADD_SPEC_TMP_TMPVAR_HANDLER,
+               ZEND_NULL_HANDLER,
+               ZEND_ROPE_ADD_SPEC_TMP_CV_HANDLER,
+               ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
-               ZEND_ADD_SPEC_CONST_CV_HANDLER,
-               ZEND_ADD_SPEC_TMPVAR_CONST_HANDLER,
-               ZEND_ADD_SPEC_TMPVAR_TMPVAR_HANDLER,
-               ZEND_ADD_SPEC_TMPVAR_TMPVAR_HANDLER,
                ZEND_NULL_HANDLER,
-               ZEND_ADD_SPEC_TMPVAR_CV_HANDLER,
-               ZEND_ADD_SPEC_TMPVAR_CONST_HANDLER,
-               ZEND_ADD_SPEC_TMPVAR_TMPVAR_HANDLER,
-               ZEND_ADD_SPEC_TMPVAR_TMPVAR_HANDLER,
                ZEND_NULL_HANDLER,
-               ZEND_ADD_SPEC_TMPVAR_CV_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
-               ZEND_ADD_SPEC_CV_CONST_HANDLER,
-               ZEND_ADD_SPEC_CV_TMPVAR_HANDLER,
-               ZEND_ADD_SPEC_CV_TMPVAR_HANDLER,
                ZEND_NULL_HANDLER,
-               ZEND_ADD_SPEC_CV_CV_HANDLER,
-               ZEND_SUB_SPEC_CONST_CONST_HANDLER,
-               ZEND_SUB_SPEC_CONST_TMPVAR_HANDLER,
-               ZEND_SUB_SPEC_CONST_TMPVAR_HANDLER,
                ZEND_NULL_HANDLER,
-               ZEND_SUB_SPEC_CONST_CV_HANDLER,
-               ZEND_SUB_SPEC_TMPVAR_CONST_HANDLER,
-               ZEND_SUB_SPEC_TMPVAR_TMPVAR_HANDLER,
-               ZEND_SUB_SPEC_TMPVAR_TMPVAR_HANDLER,
                ZEND_NULL_HANDLER,
-               ZEND_SUB_SPEC_TMPVAR_CV_HANDLER,
-               ZEND_SUB_SPEC_TMPVAR_CONST_HANDLER,
-               ZEND_SUB_SPEC_TMPVAR_TMPVAR_HANDLER,
-               ZEND_SUB_SPEC_TMPVAR_TMPVAR_HANDLER,
                ZEND_NULL_HANDLER,
-               ZEND_SUB_SPEC_TMPVAR_CV_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
-               ZEND_SUB_SPEC_CV_CONST_HANDLER,
-               ZEND_SUB_SPEC_CV_TMPVAR_HANDLER,
-               ZEND_SUB_SPEC_CV_TMPVAR_HANDLER,
                ZEND_NULL_HANDLER,
-               ZEND_SUB_SPEC_CV_CV_HANDLER,
-               ZEND_MUL_SPEC_CONST_CONST_HANDLER,
-               ZEND_MUL_SPEC_CONST_TMPVAR_HANDLER,
-               ZEND_MUL_SPEC_CONST_TMPVAR_HANDLER,
                ZEND_NULL_HANDLER,
-               ZEND_MUL_SPEC_CONST_CV_HANDLER,
-               ZEND_MUL_SPEC_TMPVAR_CONST_HANDLER,
-               ZEND_MUL_SPEC_TMPVAR_TMPVAR_HANDLER,
-               ZEND_MUL_SPEC_TMPVAR_TMPVAR_HANDLER,
+               ZEND_ROPE_END_SPEC_TMP_CONST_HANDLER,
+               ZEND_ROPE_END_SPEC_TMP_TMPVAR_HANDLER,
+               ZEND_ROPE_END_SPEC_TMP_TMPVAR_HANDLER,
                ZEND_NULL_HANDLER,
-               ZEND_MUL_SPEC_TMPVAR_CV_HANDLER,
-               ZEND_MUL_SPEC_TMPVAR_CONST_HANDLER,
-               ZEND_MUL_SPEC_TMPVAR_TMPVAR_HANDLER,
-               ZEND_MUL_SPEC_TMPVAR_TMPVAR_HANDLER,
+               ZEND_ROPE_END_SPEC_TMP_CV_HANDLER,
                ZEND_NULL_HANDLER,
-               ZEND_MUL_SPEC_TMPVAR_CV_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
-               ZEND_MUL_SPEC_CV_CONST_HANDLER,
-               ZEND_MUL_SPEC_CV_TMPVAR_HANDLER,
-               ZEND_MUL_SPEC_CV_TMPVAR_HANDLER,
                ZEND_NULL_HANDLER,
-               ZEND_MUL_SPEC_CV_CV_HANDLER,
-               ZEND_DIV_SPEC_CONST_CONST_HANDLER,
-               ZEND_DIV_SPEC_CONST_TMPVAR_HANDLER,
-               ZEND_DIV_SPEC_CONST_TMPVAR_HANDLER,
                ZEND_NULL_HANDLER,
-               ZEND_DIV_SPEC_CONST_CV_HANDLER,
-               ZEND_DIV_SPEC_TMPVAR_CONST_HANDLER,
-               ZEND_DIV_SPEC_TMPVAR_TMPVAR_HANDLER,
-               ZEND_DIV_SPEC_TMPVAR_TMPVAR_HANDLER,
                ZEND_NULL_HANDLER,
-               ZEND_DIV_SPEC_TMPVAR_CV_HANDLER,
-               ZEND_DIV_SPEC_TMPVAR_CONST_HANDLER,
-               ZEND_DIV_SPEC_TMPVAR_TMPVAR_HANDLER,
-               ZEND_DIV_SPEC_TMPVAR_TMPVAR_HANDLER,
                ZEND_NULL_HANDLER,
-               ZEND_DIV_SPEC_TMPVAR_CV_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
-               ZEND_DIV_SPEC_CV_CONST_HANDLER,
-               ZEND_DIV_SPEC_CV_TMPVAR_HANDLER,
-               ZEND_DIV_SPEC_CV_TMPVAR_HANDLER,
+               ZEND_BEGIN_SILENCE_SPEC_HANDLER,
                ZEND_NULL_HANDLER,
-               ZEND_DIV_SPEC_CV_CV_HANDLER,
-               ZEND_MOD_SPEC_CONST_CONST_HANDLER,
-               ZEND_MOD_SPEC_CONST_TMPVAR_HANDLER,
-               ZEND_MOD_SPEC_CONST_TMPVAR_HANDLER,
+               ZEND_END_SILENCE_SPEC_TMP_HANDLER,
                ZEND_NULL_HANDLER,
-               ZEND_MOD_SPEC_CONST_CV_HANDLER,
-               ZEND_MOD_SPEC_TMPVAR_CONST_HANDLER,
-               ZEND_MOD_SPEC_TMPVAR_TMPVAR_HANDLER,
-               ZEND_MOD_SPEC_TMPVAR_TMPVAR_HANDLER,
                ZEND_NULL_HANDLER,
-               ZEND_MOD_SPEC_TMPVAR_CV_HANDLER,
-               ZEND_MOD_SPEC_TMPVAR_CONST_HANDLER,
-               ZEND_MOD_SPEC_TMPVAR_TMPVAR_HANDLER,
-               ZEND_MOD_SPEC_TMPVAR_TMPVAR_HANDLER,
                ZEND_NULL_HANDLER,
-               ZEND_MOD_SPEC_TMPVAR_CV_HANDLER,
+               ZEND_INIT_FCALL_BY_NAME_SPEC_CONST_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
+               ZEND_DO_FCALL_SPEC_RETVAL_UNUSED_HANDLER,
+               ZEND_DO_FCALL_SPEC_RETVAL_USED_HANDLER,
+               ZEND_INIT_FCALL_SPEC_CONST_HANDLER,
                ZEND_NULL_HANDLER,
-               ZEND_MOD_SPEC_CV_CONST_HANDLER,
-               ZEND_MOD_SPEC_CV_TMPVAR_HANDLER,
-               ZEND_MOD_SPEC_CV_TMPVAR_HANDLER,
                ZEND_NULL_HANDLER,
-               ZEND_MOD_SPEC_CV_CV_HANDLER,
-               ZEND_SL_SPEC_CONST_CONST_HANDLER,
-               ZEND_SL_SPEC_CONST_TMPVAR_HANDLER,
-               ZEND_SL_SPEC_CONST_TMPVAR_HANDLER,
                ZEND_NULL_HANDLER,
-               ZEND_SL_SPEC_CONST_CV_HANDLER,
-               ZEND_SL_SPEC_TMPVAR_CONST_HANDLER,
-               ZEND_SL_SPEC_TMPVAR_TMPVAR_HANDLER,
-               ZEND_SL_SPEC_TMPVAR_TMPVAR_HANDLER,
                ZEND_NULL_HANDLER,
-               ZEND_SL_SPEC_TMPVAR_CV_HANDLER,
-               ZEND_SL_SPEC_TMPVAR_CONST_HANDLER,
-               ZEND_SL_SPEC_TMPVAR_TMPVAR_HANDLER,
-               ZEND_SL_SPEC_TMPVAR_TMPVAR_HANDLER,
+               ZEND_RETURN_SPEC_CONST_HANDLER,
+               ZEND_RETURN_SPEC_TMP_HANDLER,
+               ZEND_RETURN_SPEC_VAR_HANDLER,
                ZEND_NULL_HANDLER,
-               ZEND_SL_SPEC_TMPVAR_CV_HANDLER,
+               ZEND_RETURN_SPEC_CV_HANDLER,
+               ZEND_RECV_SPEC_HANDLER,
+               ZEND_RECV_INIT_SPEC_CONST_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
+               ZEND_SEND_VAL_SPEC_CONST_HANDLER,
+               ZEND_SEND_VAL_SPEC_TMP_HANDLER,
                ZEND_NULL_HANDLER,
-               ZEND_SL_SPEC_CV_CONST_HANDLER,
-               ZEND_SL_SPEC_CV_TMPVAR_HANDLER,
-               ZEND_SL_SPEC_CV_TMPVAR_HANDLER,
                ZEND_NULL_HANDLER,
-               ZEND_SL_SPEC_CV_CV_HANDLER,
-               ZEND_SR_SPEC_CONST_CONST_HANDLER,
-               ZEND_SR_SPEC_CONST_TMPVAR_HANDLER,
-               ZEND_SR_SPEC_CONST_TMPVAR_HANDLER,
                ZEND_NULL_HANDLER,
-               ZEND_SR_SPEC_CONST_CV_HANDLER,
-               ZEND_SR_SPEC_TMPVAR_CONST_HANDLER,
-               ZEND_SR_SPEC_TMPVAR_TMPVAR_HANDLER,
-               ZEND_SR_SPEC_TMPVAR_TMPVAR_HANDLER,
                ZEND_NULL_HANDLER,
-               ZEND_SR_SPEC_TMPVAR_CV_HANDLER,
-               ZEND_SR_SPEC_TMPVAR_CONST_HANDLER,
-               ZEND_SR_SPEC_TMPVAR_TMPVAR_HANDLER,
-               ZEND_SR_SPEC_TMPVAR_TMPVAR_HANDLER,
                ZEND_NULL_HANDLER,
-               ZEND_SR_SPEC_TMPVAR_CV_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
+               ZEND_SEND_VAR_EX_SPEC_VAR_HANDLER,
+               ZEND_SEND_VAR_EX_SPEC_VAR_QUICK_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
+               ZEND_SEND_VAR_EX_SPEC_CV_HANDLER,
+               ZEND_SEND_VAR_EX_SPEC_CV_QUICK_HANDLER,
                ZEND_NULL_HANDLER,
-               ZEND_SR_SPEC_CV_CONST_HANDLER,
-               ZEND_SR_SPEC_CV_TMPVAR_HANDLER,
-               ZEND_SR_SPEC_CV_TMPVAR_HANDLER,
                ZEND_NULL_HANDLER,
-               ZEND_SR_SPEC_CV_CV_HANDLER,
-               ZEND_CONCAT_SPEC_CONST_CONST_HANDLER,
-               ZEND_CONCAT_SPEC_CONST_TMPVAR_HANDLER,
-               ZEND_CONCAT_SPEC_CONST_TMPVAR_HANDLER,
+               ZEND_SEND_REF_SPEC_VAR_HANDLER,
                ZEND_NULL_HANDLER,
-               ZEND_CONCAT_SPEC_CONST_CV_HANDLER,
-               ZEND_CONCAT_SPEC_TMPVAR_CONST_HANDLER,
-               ZEND_CONCAT_SPEC_TMPVAR_TMPVAR_HANDLER,
-               ZEND_CONCAT_SPEC_TMPVAR_TMPVAR_HANDLER,
+               ZEND_SEND_REF_SPEC_CV_HANDLER,
+               ZEND_NEW_SPEC_CONST_HANDLER,
                ZEND_NULL_HANDLER,
-               ZEND_CONCAT_SPEC_TMPVAR_CV_HANDLER,
-               ZEND_CONCAT_SPEC_TMPVAR_CONST_HANDLER,
-               ZEND_CONCAT_SPEC_TMPVAR_TMPVAR_HANDLER,
-               ZEND_CONCAT_SPEC_TMPVAR_TMPVAR_HANDLER,
+               ZEND_NEW_SPEC_VAR_HANDLER,
+               ZEND_NEW_SPEC_UNUSED_HANDLER,
                ZEND_NULL_HANDLER,
-               ZEND_CONCAT_SPEC_TMPVAR_CV_HANDLER,
+               ZEND_INIT_NS_FCALL_BY_NAME_SPEC_CONST_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
-               ZEND_CONCAT_SPEC_CV_CONST_HANDLER,
-               ZEND_CONCAT_SPEC_CV_TMPVAR_HANDLER,
-               ZEND_CONCAT_SPEC_CV_TMPVAR_HANDLER,
+               ZEND_FREE_SPEC_TMPVAR_HANDLER,
+               ZEND_FREE_SPEC_TMPVAR_HANDLER,
                ZEND_NULL_HANDLER,
-               ZEND_CONCAT_SPEC_CV_CV_HANDLER,
-               ZEND_BW_OR_SPEC_CONST_CONST_HANDLER,
-               ZEND_BW_OR_SPEC_CONST_TMPVAR_HANDLER,
-               ZEND_BW_OR_SPEC_CONST_TMPVAR_HANDLER,
                ZEND_NULL_HANDLER,
-               ZEND_BW_OR_SPEC_CONST_CV_HANDLER,
-               ZEND_BW_OR_SPEC_TMPVAR_CONST_HANDLER,
-               ZEND_BW_OR_SPEC_TMPVAR_TMPVAR_HANDLER,
-               ZEND_BW_OR_SPEC_TMPVAR_TMPVAR_HANDLER,
+               ZEND_INIT_ARRAY_SPEC_CONST_CONST_HANDLER,
+               ZEND_INIT_ARRAY_SPEC_CONST_TMPVAR_HANDLER,
+               ZEND_INIT_ARRAY_SPEC_CONST_TMPVAR_HANDLER,
+               ZEND_INIT_ARRAY_SPEC_CONST_UNUSED_HANDLER,
+               ZEND_INIT_ARRAY_SPEC_CONST_CV_HANDLER,
+               ZEND_INIT_ARRAY_SPEC_TMP_CONST_HANDLER,
+               ZEND_INIT_ARRAY_SPEC_TMP_TMPVAR_HANDLER,
+               ZEND_INIT_ARRAY_SPEC_TMP_TMPVAR_HANDLER,
+               ZEND_INIT_ARRAY_SPEC_TMP_UNUSED_HANDLER,
+               ZEND_INIT_ARRAY_SPEC_TMP_CV_HANDLER,
+               ZEND_INIT_ARRAY_SPEC_VAR_CONST_HANDLER,
+               ZEND_INIT_ARRAY_SPEC_VAR_TMPVAR_HANDLER,
+               ZEND_INIT_ARRAY_SPEC_VAR_TMPVAR_HANDLER,
+               ZEND_INIT_ARRAY_SPEC_VAR_UNUSED_HANDLER,
+               ZEND_INIT_ARRAY_SPEC_VAR_CV_HANDLER,
+               ZEND_INIT_ARRAY_SPEC_UNUSED_CONST_HANDLER,
+               ZEND_INIT_ARRAY_SPEC_UNUSED_TMPVAR_HANDLER,
+               ZEND_INIT_ARRAY_SPEC_UNUSED_TMPVAR_HANDLER,
+               ZEND_INIT_ARRAY_SPEC_UNUSED_UNUSED_HANDLER,
+               ZEND_INIT_ARRAY_SPEC_UNUSED_CV_HANDLER,
+               ZEND_INIT_ARRAY_SPEC_CV_CONST_HANDLER,
+               ZEND_INIT_ARRAY_SPEC_CV_TMPVAR_HANDLER,
+               ZEND_INIT_ARRAY_SPEC_CV_TMPVAR_HANDLER,
+               ZEND_INIT_ARRAY_SPEC_CV_UNUSED_HANDLER,
+               ZEND_INIT_ARRAY_SPEC_CV_CV_HANDLER,
+               ZEND_ADD_ARRAY_ELEMENT_SPEC_CONST_CONST_HANDLER,
+               ZEND_ADD_ARRAY_ELEMENT_SPEC_CONST_TMPVAR_HANDLER,
+               ZEND_ADD_ARRAY_ELEMENT_SPEC_CONST_TMPVAR_HANDLER,
+               ZEND_ADD_ARRAY_ELEMENT_SPEC_CONST_UNUSED_HANDLER,
+               ZEND_ADD_ARRAY_ELEMENT_SPEC_CONST_CV_HANDLER,
+               ZEND_ADD_ARRAY_ELEMENT_SPEC_TMP_CONST_HANDLER,
+               ZEND_ADD_ARRAY_ELEMENT_SPEC_TMP_TMPVAR_HANDLER,
+               ZEND_ADD_ARRAY_ELEMENT_SPEC_TMP_TMPVAR_HANDLER,
+               ZEND_ADD_ARRAY_ELEMENT_SPEC_TMP_UNUSED_HANDLER,
+               ZEND_ADD_ARRAY_ELEMENT_SPEC_TMP_CV_HANDLER,
+               ZEND_ADD_ARRAY_ELEMENT_SPEC_VAR_CONST_HANDLER,
+               ZEND_ADD_ARRAY_ELEMENT_SPEC_VAR_TMPVAR_HANDLER,
+               ZEND_ADD_ARRAY_ELEMENT_SPEC_VAR_TMPVAR_HANDLER,
+               ZEND_ADD_ARRAY_ELEMENT_SPEC_VAR_UNUSED_HANDLER,
+               ZEND_ADD_ARRAY_ELEMENT_SPEC_VAR_CV_HANDLER,
                ZEND_NULL_HANDLER,
-               ZEND_BW_OR_SPEC_TMPVAR_CV_HANDLER,
-               ZEND_BW_OR_SPEC_TMPVAR_CONST_HANDLER,
-               ZEND_BW_OR_SPEC_TMPVAR_TMPVAR_HANDLER,
-               ZEND_BW_OR_SPEC_TMPVAR_TMPVAR_HANDLER,
                ZEND_NULL_HANDLER,
-               ZEND_BW_OR_SPEC_TMPVAR_CV_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
+               ZEND_ADD_ARRAY_ELEMENT_SPEC_CV_CONST_HANDLER,
+               ZEND_ADD_ARRAY_ELEMENT_SPEC_CV_TMPVAR_HANDLER,
+               ZEND_ADD_ARRAY_ELEMENT_SPEC_CV_TMPVAR_HANDLER,
+               ZEND_ADD_ARRAY_ELEMENT_SPEC_CV_UNUSED_HANDLER,
+               ZEND_ADD_ARRAY_ELEMENT_SPEC_CV_CV_HANDLER,
+               ZEND_INCLUDE_OR_EVAL_SPEC_CONST_HANDLER,
+               ZEND_INCLUDE_OR_EVAL_SPEC_TMPVAR_HANDLER,
+               ZEND_INCLUDE_OR_EVAL_SPEC_TMPVAR_HANDLER,
                ZEND_NULL_HANDLER,
+               ZEND_INCLUDE_OR_EVAL_SPEC_CV_HANDLER,
                ZEND_NULL_HANDLER,
-               ZEND_BW_OR_SPEC_CV_CONST_HANDLER,
-               ZEND_BW_OR_SPEC_CV_TMPVAR_HANDLER,
-               ZEND_BW_OR_SPEC_CV_TMPVAR_HANDLER,
                ZEND_NULL_HANDLER,
-               ZEND_BW_OR_SPEC_CV_CV_HANDLER,
-               ZEND_BW_AND_SPEC_CONST_CONST_HANDLER,
-               ZEND_BW_AND_SPEC_CONST_TMPVAR_HANDLER,
-               ZEND_BW_AND_SPEC_CONST_TMPVAR_HANDLER,
                ZEND_NULL_HANDLER,
-               ZEND_BW_AND_SPEC_CONST_CV_HANDLER,
-               ZEND_BW_AND_SPEC_TMPVAR_CONST_HANDLER,
-               ZEND_BW_AND_SPEC_TMPVAR_TMPVAR_HANDLER,
-               ZEND_BW_AND_SPEC_TMPVAR_TMPVAR_HANDLER,
+               ZEND_UNSET_VAR_SPEC_CONST_UNUSED_HANDLER,
                ZEND_NULL_HANDLER,
-               ZEND_BW_AND_SPEC_TMPVAR_CV_HANDLER,
-               ZEND_BW_AND_SPEC_TMPVAR_CONST_HANDLER,
-               ZEND_BW_AND_SPEC_TMPVAR_TMPVAR_HANDLER,
-               ZEND_BW_AND_SPEC_TMPVAR_TMPVAR_HANDLER,
                ZEND_NULL_HANDLER,
-               ZEND_BW_AND_SPEC_TMPVAR_CV_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
+               ZEND_UNSET_VAR_SPEC_TMPVAR_UNUSED_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
-               ZEND_BW_AND_SPEC_CV_CONST_HANDLER,
-               ZEND_BW_AND_SPEC_CV_TMPVAR_HANDLER,
-               ZEND_BW_AND_SPEC_CV_TMPVAR_HANDLER,
                ZEND_NULL_HANDLER,
-               ZEND_BW_AND_SPEC_CV_CV_HANDLER,
-               ZEND_BW_XOR_SPEC_CONST_CONST_HANDLER,
-               ZEND_BW_XOR_SPEC_CONST_TMPVAR_HANDLER,
-               ZEND_BW_XOR_SPEC_CONST_TMPVAR_HANDLER,
+               ZEND_UNSET_VAR_SPEC_TMPVAR_UNUSED_HANDLER,
                ZEND_NULL_HANDLER,
-               ZEND_BW_XOR_SPEC_CONST_CV_HANDLER,
-               ZEND_BW_XOR_SPEC_TMPVAR_CONST_HANDLER,
-               ZEND_BW_XOR_SPEC_TMPVAR_TMPVAR_HANDLER,
-               ZEND_BW_XOR_SPEC_TMPVAR_TMPVAR_HANDLER,
                ZEND_NULL_HANDLER,
-               ZEND_BW_XOR_SPEC_TMPVAR_CV_HANDLER,
-               ZEND_BW_XOR_SPEC_TMPVAR_CONST_HANDLER,
-               ZEND_BW_XOR_SPEC_TMPVAR_TMPVAR_HANDLER,
-               ZEND_BW_XOR_SPEC_TMPVAR_TMPVAR_HANDLER,
                ZEND_NULL_HANDLER,
-               ZEND_BW_XOR_SPEC_TMPVAR_CV_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
-               ZEND_BW_XOR_SPEC_CV_CONST_HANDLER,
-               ZEND_BW_XOR_SPEC_CV_TMPVAR_HANDLER,
-               ZEND_BW_XOR_SPEC_CV_TMPVAR_HANDLER,
                ZEND_NULL_HANDLER,
-               ZEND_BW_XOR_SPEC_CV_CV_HANDLER,
-               ZEND_BW_NOT_SPEC_CONST_HANDLER,
-               ZEND_BW_NOT_SPEC_TMPVAR_HANDLER,
-               ZEND_BW_NOT_SPEC_TMPVAR_HANDLER,
+               ZEND_UNSET_VAR_SPEC_CV_UNUSED_HANDLER,
                ZEND_NULL_HANDLER,
-               ZEND_BW_NOT_SPEC_CV_HANDLER,
-               ZEND_BOOL_NOT_SPEC_CONST_HANDLER,
-               ZEND_BOOL_NOT_SPEC_TMPVAR_HANDLER,
-               ZEND_BOOL_NOT_SPEC_TMPVAR_HANDLER,
                ZEND_NULL_HANDLER,
-               ZEND_BOOL_NOT_SPEC_CV_HANDLER,
-               ZEND_BOOL_XOR_SPEC_CONST_CONST_HANDLER,
-               ZEND_BOOL_XOR_SPEC_CONST_TMPVAR_HANDLER,
-               ZEND_BOOL_XOR_SPEC_CONST_TMPVAR_HANDLER,
                ZEND_NULL_HANDLER,
-               ZEND_BOOL_XOR_SPEC_CONST_CV_HANDLER,
-               ZEND_BOOL_XOR_SPEC_TMPVAR_CONST_HANDLER,
-               ZEND_BOOL_XOR_SPEC_TMPVAR_TMPVAR_HANDLER,
-               ZEND_BOOL_XOR_SPEC_TMPVAR_TMPVAR_HANDLER,
                ZEND_NULL_HANDLER,
-               ZEND_BOOL_XOR_SPEC_TMPVAR_CV_HANDLER,
-               ZEND_BOOL_XOR_SPEC_TMPVAR_CONST_HANDLER,
-               ZEND_BOOL_XOR_SPEC_TMPVAR_TMPVAR_HANDLER,
-               ZEND_BOOL_XOR_SPEC_TMPVAR_TMPVAR_HANDLER,
                ZEND_NULL_HANDLER,
-               ZEND_BOOL_XOR_SPEC_TMPVAR_CV_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
-               ZEND_BOOL_XOR_SPEC_CV_CONST_HANDLER,
-               ZEND_BOOL_XOR_SPEC_CV_TMPVAR_HANDLER,
-               ZEND_BOOL_XOR_SPEC_CV_TMPVAR_HANDLER,
                ZEND_NULL_HANDLER,
-               ZEND_BOOL_XOR_SPEC_CV_CV_HANDLER,
-               ZEND_IS_IDENTICAL_SPEC_CONST_CONST_HANDLER,
-               ZEND_IS_IDENTICAL_SPEC_CONST_TMP_HANDLER,
-               ZEND_IS_IDENTICAL_SPEC_CONST_VAR_HANDLER,
+               ZEND_UNSET_DIM_SPEC_VAR_CONST_HANDLER,
+               ZEND_UNSET_DIM_SPEC_VAR_TMPVAR_HANDLER,
+               ZEND_UNSET_DIM_SPEC_VAR_TMPVAR_HANDLER,
                ZEND_NULL_HANDLER,
-               ZEND_IS_IDENTICAL_SPEC_CONST_CV_HANDLER,
-               ZEND_IS_IDENTICAL_SPEC_TMP_CONST_HANDLER,
-               ZEND_IS_IDENTICAL_SPEC_TMP_TMP_HANDLER,
-               ZEND_IS_IDENTICAL_SPEC_TMP_VAR_HANDLER,
+               ZEND_UNSET_DIM_SPEC_VAR_CV_HANDLER,
+               ZEND_UNSET_DIM_SPEC_UNUSED_CONST_HANDLER,
+               ZEND_UNSET_DIM_SPEC_UNUSED_TMPVAR_HANDLER,
+               ZEND_UNSET_DIM_SPEC_UNUSED_TMPVAR_HANDLER,
                ZEND_NULL_HANDLER,
-               ZEND_IS_IDENTICAL_SPEC_TMP_CV_HANDLER,
-               ZEND_IS_IDENTICAL_SPEC_VAR_CONST_HANDLER,
-               ZEND_IS_IDENTICAL_SPEC_VAR_TMP_HANDLER,
-               ZEND_IS_IDENTICAL_SPEC_VAR_VAR_HANDLER,
+               ZEND_UNSET_DIM_SPEC_UNUSED_CV_HANDLER,
+               ZEND_UNSET_DIM_SPEC_CV_CONST_HANDLER,
+               ZEND_UNSET_DIM_SPEC_CV_TMPVAR_HANDLER,
+               ZEND_UNSET_DIM_SPEC_CV_TMPVAR_HANDLER,
                ZEND_NULL_HANDLER,
-               ZEND_IS_IDENTICAL_SPEC_VAR_CV_HANDLER,
+               ZEND_UNSET_DIM_SPEC_CV_CV_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
-               ZEND_IS_IDENTICAL_SPEC_CV_CONST_HANDLER,
-               ZEND_IS_IDENTICAL_SPEC_CV_TMP_HANDLER,
-               ZEND_IS_IDENTICAL_SPEC_CV_VAR_HANDLER,
                ZEND_NULL_HANDLER,
-               ZEND_IS_IDENTICAL_SPEC_CV_CV_HANDLER,
-               ZEND_IS_NOT_IDENTICAL_SPEC_CONST_CONST_HANDLER,
-               ZEND_IS_NOT_IDENTICAL_SPEC_CONST_TMP_HANDLER,
-               ZEND_IS_NOT_IDENTICAL_SPEC_CONST_VAR_HANDLER,
                ZEND_NULL_HANDLER,
-               ZEND_IS_NOT_IDENTICAL_SPEC_CONST_CV_HANDLER,
-               ZEND_IS_NOT_IDENTICAL_SPEC_TMP_CONST_HANDLER,
-               ZEND_IS_NOT_IDENTICAL_SPEC_TMP_TMP_HANDLER,
-               ZEND_IS_NOT_IDENTICAL_SPEC_TMP_VAR_HANDLER,
                ZEND_NULL_HANDLER,
-               ZEND_IS_NOT_IDENTICAL_SPEC_TMP_CV_HANDLER,
-               ZEND_IS_NOT_IDENTICAL_SPEC_VAR_CONST_HANDLER,
-               ZEND_IS_NOT_IDENTICAL_SPEC_VAR_TMP_HANDLER,
-               ZEND_IS_NOT_IDENTICAL_SPEC_VAR_VAR_HANDLER,
                ZEND_NULL_HANDLER,
-               ZEND_IS_NOT_IDENTICAL_SPEC_VAR_CV_HANDLER,
                ZEND_NULL_HANDLER,
+               ZEND_UNSET_OBJ_SPEC_VAR_CONST_HANDLER,
+               ZEND_UNSET_OBJ_SPEC_VAR_TMPVAR_HANDLER,
+               ZEND_UNSET_OBJ_SPEC_VAR_TMPVAR_HANDLER,
                ZEND_NULL_HANDLER,
+               ZEND_UNSET_OBJ_SPEC_VAR_CV_HANDLER,
+               ZEND_UNSET_OBJ_SPEC_UNUSED_CONST_HANDLER,
+               ZEND_UNSET_OBJ_SPEC_UNUSED_TMPVAR_HANDLER,
+               ZEND_UNSET_OBJ_SPEC_UNUSED_TMPVAR_HANDLER,
                ZEND_NULL_HANDLER,
+               ZEND_UNSET_OBJ_SPEC_UNUSED_CV_HANDLER,
+               ZEND_UNSET_OBJ_SPEC_CV_CONST_HANDLER,
+               ZEND_UNSET_OBJ_SPEC_CV_TMPVAR_HANDLER,
+               ZEND_UNSET_OBJ_SPEC_CV_TMPVAR_HANDLER,
                ZEND_NULL_HANDLER,
+               ZEND_UNSET_OBJ_SPEC_CV_CV_HANDLER,
+               ZEND_FE_RESET_R_SPEC_CONST_HANDLER,
+               ZEND_FE_RESET_R_SPEC_TMP_HANDLER,
+               ZEND_FE_RESET_R_SPEC_VAR_HANDLER,
                ZEND_NULL_HANDLER,
-               ZEND_IS_NOT_IDENTICAL_SPEC_CV_CONST_HANDLER,
-               ZEND_IS_NOT_IDENTICAL_SPEC_CV_TMP_HANDLER,
-               ZEND_IS_NOT_IDENTICAL_SPEC_CV_VAR_HANDLER,
+               ZEND_FE_RESET_R_SPEC_CV_HANDLER,
                ZEND_NULL_HANDLER,
-               ZEND_IS_NOT_IDENTICAL_SPEC_CV_CV_HANDLER,
-               ZEND_IS_EQUAL_SPEC_CONST_CONST_HANDLER,
-               ZEND_IS_EQUAL_SPEC_CONST_TMPVAR_HANDLER,
-               ZEND_IS_EQUAL_SPEC_CONST_TMPVAR_HANDLER,
                ZEND_NULL_HANDLER,
-               ZEND_IS_EQUAL_SPEC_CONST_CV_HANDLER,
-               ZEND_IS_EQUAL_SPEC_TMPVAR_CONST_HANDLER,
-               ZEND_IS_EQUAL_SPEC_TMPVAR_TMPVAR_HANDLER,
-               ZEND_IS_EQUAL_SPEC_TMPVAR_TMPVAR_HANDLER,
+               ZEND_FE_FETCH_R_SPEC_VAR_HANDLER,
                ZEND_NULL_HANDLER,
-               ZEND_IS_EQUAL_SPEC_TMPVAR_CV_HANDLER,
-               ZEND_IS_EQUAL_SPEC_TMPVAR_CONST_HANDLER,
-               ZEND_IS_EQUAL_SPEC_TMPVAR_TMPVAR_HANDLER,
-               ZEND_IS_EQUAL_SPEC_TMPVAR_TMPVAR_HANDLER,
                ZEND_NULL_HANDLER,
-               ZEND_IS_EQUAL_SPEC_TMPVAR_CV_HANDLER,
+               ZEND_EXIT_SPEC_CONST_HANDLER,
+               ZEND_EXIT_SPEC_TMPVAR_HANDLER,
+               ZEND_EXIT_SPEC_TMPVAR_HANDLER,
+               ZEND_EXIT_SPEC_UNUSED_HANDLER,
+               ZEND_EXIT_SPEC_CV_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
+               ZEND_FETCH_R_SPEC_CONST_UNUSED_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
-               ZEND_IS_EQUAL_SPEC_CV_CONST_HANDLER,
-               ZEND_IS_EQUAL_SPEC_CV_TMPVAR_HANDLER,
-               ZEND_IS_EQUAL_SPEC_CV_TMPVAR_HANDLER,
                ZEND_NULL_HANDLER,
-               ZEND_IS_EQUAL_SPEC_CV_CV_HANDLER,
-               ZEND_IS_NOT_EQUAL_SPEC_CONST_CONST_HANDLER,
-               ZEND_IS_NOT_EQUAL_SPEC_CONST_TMPVAR_HANDLER,
-               ZEND_IS_NOT_EQUAL_SPEC_CONST_TMPVAR_HANDLER,
                ZEND_NULL_HANDLER,
-               ZEND_IS_NOT_EQUAL_SPEC_CONST_CV_HANDLER,
-               ZEND_IS_NOT_EQUAL_SPEC_TMPVAR_CONST_HANDLER,
-               ZEND_IS_NOT_EQUAL_SPEC_TMPVAR_TMPVAR_HANDLER,
-               ZEND_IS_NOT_EQUAL_SPEC_TMPVAR_TMPVAR_HANDLER,
+               ZEND_FETCH_R_SPEC_TMPVAR_UNUSED_HANDLER,
                ZEND_NULL_HANDLER,
-               ZEND_IS_NOT_EQUAL_SPEC_TMPVAR_CV_HANDLER,
-               ZEND_IS_NOT_EQUAL_SPEC_TMPVAR_CONST_HANDLER,
-               ZEND_IS_NOT_EQUAL_SPEC_TMPVAR_TMPVAR_HANDLER,
-               ZEND_IS_NOT_EQUAL_SPEC_TMPVAR_TMPVAR_HANDLER,
                ZEND_NULL_HANDLER,
-               ZEND_IS_NOT_EQUAL_SPEC_TMPVAR_CV_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
+               ZEND_FETCH_R_SPEC_TMPVAR_UNUSED_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
-               ZEND_IS_NOT_EQUAL_SPEC_CV_CONST_HANDLER,
-               ZEND_IS_NOT_EQUAL_SPEC_CV_TMPVAR_HANDLER,
-               ZEND_IS_NOT_EQUAL_SPEC_CV_TMPVAR_HANDLER,
                ZEND_NULL_HANDLER,
-               ZEND_IS_NOT_EQUAL_SPEC_CV_CV_HANDLER,
-               ZEND_IS_SMALLER_SPEC_CONST_CONST_HANDLER,
-               ZEND_IS_SMALLER_SPEC_CONST_TMPVAR_HANDLER,
-               ZEND_IS_SMALLER_SPEC_CONST_TMPVAR_HANDLER,
                ZEND_NULL_HANDLER,
-               ZEND_IS_SMALLER_SPEC_CONST_CV_HANDLER,
-               ZEND_IS_SMALLER_SPEC_TMPVAR_CONST_HANDLER,
-               ZEND_IS_SMALLER_SPEC_TMPVAR_TMPVAR_HANDLER,
-               ZEND_IS_SMALLER_SPEC_TMPVAR_TMPVAR_HANDLER,
                ZEND_NULL_HANDLER,
-               ZEND_IS_SMALLER_SPEC_TMPVAR_CV_HANDLER,
-               ZEND_IS_SMALLER_SPEC_TMPVAR_CONST_HANDLER,
-               ZEND_IS_SMALLER_SPEC_TMPVAR_TMPVAR_HANDLER,
-               ZEND_IS_SMALLER_SPEC_TMPVAR_TMPVAR_HANDLER,
                ZEND_NULL_HANDLER,
-               ZEND_IS_SMALLER_SPEC_TMPVAR_CV_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
+               ZEND_FETCH_R_SPEC_CV_UNUSED_HANDLER,
                ZEND_NULL_HANDLER,
+               ZEND_FETCH_DIM_R_SPEC_CONST_CONST_HANDLER,
+               ZEND_FETCH_DIM_R_SPEC_CONST_TMPVAR_HANDLER,
+               ZEND_FETCH_DIM_R_SPEC_CONST_TMPVAR_HANDLER,
                ZEND_NULL_HANDLER,
+               ZEND_FETCH_DIM_R_SPEC_CONST_CV_HANDLER,
+               ZEND_FETCH_DIM_R_SPEC_TMPVAR_CONST_HANDLER,
+               ZEND_FETCH_DIM_R_SPEC_TMPVAR_TMPVAR_HANDLER,
+               ZEND_FETCH_DIM_R_SPEC_TMPVAR_TMPVAR_HANDLER,
                ZEND_NULL_HANDLER,
-               ZEND_IS_SMALLER_SPEC_CV_CONST_HANDLER,
-               ZEND_IS_SMALLER_SPEC_CV_TMPVAR_HANDLER,
-               ZEND_IS_SMALLER_SPEC_CV_TMPVAR_HANDLER,
+               ZEND_FETCH_DIM_R_SPEC_TMPVAR_CV_HANDLER,
+               ZEND_FETCH_DIM_R_SPEC_TMPVAR_CONST_HANDLER,
+               ZEND_FETCH_DIM_R_SPEC_TMPVAR_TMPVAR_HANDLER,
+               ZEND_FETCH_DIM_R_SPEC_TMPVAR_TMPVAR_HANDLER,
                ZEND_NULL_HANDLER,
-               ZEND_IS_SMALLER_SPEC_CV_CV_HANDLER,
-               ZEND_IS_SMALLER_OR_EQUAL_SPEC_CONST_CONST_HANDLER,
-               ZEND_IS_SMALLER_OR_EQUAL_SPEC_CONST_TMPVAR_HANDLER,
-               ZEND_IS_SMALLER_OR_EQUAL_SPEC_CONST_TMPVAR_HANDLER,
+               ZEND_FETCH_DIM_R_SPEC_TMPVAR_CV_HANDLER,
                ZEND_NULL_HANDLER,
-               ZEND_IS_SMALLER_OR_EQUAL_SPEC_CONST_CV_HANDLER,
-               ZEND_IS_SMALLER_OR_EQUAL_SPEC_TMPVAR_CONST_HANDLER,
-               ZEND_IS_SMALLER_OR_EQUAL_SPEC_TMPVAR_TMPVAR_HANDLER,
-               ZEND_IS_SMALLER_OR_EQUAL_SPEC_TMPVAR_TMPVAR_HANDLER,
                ZEND_NULL_HANDLER,
-               ZEND_IS_SMALLER_OR_EQUAL_SPEC_TMPVAR_CV_HANDLER,
-               ZEND_IS_SMALLER_OR_EQUAL_SPEC_TMPVAR_CONST_HANDLER,
-               ZEND_IS_SMALLER_OR_EQUAL_SPEC_TMPVAR_TMPVAR_HANDLER,
-               ZEND_IS_SMALLER_OR_EQUAL_SPEC_TMPVAR_TMPVAR_HANDLER,
                ZEND_NULL_HANDLER,
-               ZEND_IS_SMALLER_OR_EQUAL_SPEC_TMPVAR_CV_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
+               ZEND_FETCH_DIM_R_SPEC_CV_CONST_HANDLER,
+               ZEND_FETCH_DIM_R_SPEC_CV_TMPVAR_HANDLER,
+               ZEND_FETCH_DIM_R_SPEC_CV_TMPVAR_HANDLER,
                ZEND_NULL_HANDLER,
+               ZEND_FETCH_DIM_R_SPEC_CV_CV_HANDLER,
+               ZEND_FETCH_OBJ_R_SPEC_CONST_CONST_HANDLER,
+               ZEND_FETCH_OBJ_R_SPEC_CONST_TMPVAR_HANDLER,
+               ZEND_FETCH_OBJ_R_SPEC_CONST_TMPVAR_HANDLER,
                ZEND_NULL_HANDLER,
+               ZEND_FETCH_OBJ_R_SPEC_CONST_CV_HANDLER,
+               ZEND_FETCH_OBJ_R_SPEC_TMP_CONST_HANDLER,
+               ZEND_FETCH_OBJ_R_SPEC_TMP_TMPVAR_HANDLER,
+               ZEND_FETCH_OBJ_R_SPEC_TMP_TMPVAR_HANDLER,
                ZEND_NULL_HANDLER,
-               ZEND_IS_SMALLER_OR_EQUAL_SPEC_CV_CONST_HANDLER,
-               ZEND_IS_SMALLER_OR_EQUAL_SPEC_CV_TMPVAR_HANDLER,
-               ZEND_IS_SMALLER_OR_EQUAL_SPEC_CV_TMPVAR_HANDLER,
+               ZEND_FETCH_OBJ_R_SPEC_TMP_CV_HANDLER,
+               ZEND_FETCH_OBJ_R_SPEC_VAR_CONST_HANDLER,
+               ZEND_FETCH_OBJ_R_SPEC_VAR_TMPVAR_HANDLER,
+               ZEND_FETCH_OBJ_R_SPEC_VAR_TMPVAR_HANDLER,
                ZEND_NULL_HANDLER,
-               ZEND_IS_SMALLER_OR_EQUAL_SPEC_CV_CV_HANDLER,
-               ZEND_CAST_SPEC_CONST_HANDLER,
-               ZEND_CAST_SPEC_TMP_HANDLER,
-               ZEND_CAST_SPEC_VAR_HANDLER,
+               ZEND_FETCH_OBJ_R_SPEC_VAR_CV_HANDLER,
+               ZEND_FETCH_OBJ_R_SPEC_UNUSED_CONST_HANDLER,
+               ZEND_FETCH_OBJ_R_SPEC_UNUSED_TMPVAR_HANDLER,
+               ZEND_FETCH_OBJ_R_SPEC_UNUSED_TMPVAR_HANDLER,
                ZEND_NULL_HANDLER,
-               ZEND_CAST_SPEC_CV_HANDLER,
-               ZEND_QM_ASSIGN_SPEC_CONST_HANDLER,
-               ZEND_QM_ASSIGN_SPEC_TMP_HANDLER,
-               ZEND_QM_ASSIGN_SPEC_VAR_HANDLER,
+               ZEND_FETCH_OBJ_R_SPEC_UNUSED_CV_HANDLER,
+               ZEND_FETCH_OBJ_R_SPEC_CV_CONST_HANDLER,
+               ZEND_FETCH_OBJ_R_SPEC_CV_TMPVAR_HANDLER,
+               ZEND_FETCH_OBJ_R_SPEC_CV_TMPVAR_HANDLER,
                ZEND_NULL_HANDLER,
-               ZEND_QM_ASSIGN_SPEC_CV_HANDLER,
+               ZEND_FETCH_OBJ_R_SPEC_CV_CV_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
+               ZEND_FETCH_W_SPEC_CONST_UNUSED_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
+               ZEND_FETCH_W_SPEC_TMPVAR_UNUSED_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
-               ZEND_ASSIGN_ADD_SPEC_VAR_CONST_HANDLER,
-               ZEND_ASSIGN_ADD_SPEC_VAR_TMPVAR_HANDLER,
-               ZEND_ASSIGN_ADD_SPEC_VAR_TMPVAR_HANDLER,
-               ZEND_ASSIGN_ADD_SPEC_VAR_UNUSED_HANDLER,
-               ZEND_ASSIGN_ADD_SPEC_VAR_CV_HANDLER,
-               ZEND_ASSIGN_ADD_SPEC_UNUSED_CONST_HANDLER,
-               ZEND_ASSIGN_ADD_SPEC_UNUSED_TMPVAR_HANDLER,
-               ZEND_ASSIGN_ADD_SPEC_UNUSED_TMPVAR_HANDLER,
-               ZEND_ASSIGN_ADD_SPEC_UNUSED_UNUSED_HANDLER,
-               ZEND_ASSIGN_ADD_SPEC_UNUSED_CV_HANDLER,
-               ZEND_ASSIGN_ADD_SPEC_CV_CONST_HANDLER,
-               ZEND_ASSIGN_ADD_SPEC_CV_TMPVAR_HANDLER,
-               ZEND_ASSIGN_ADD_SPEC_CV_TMPVAR_HANDLER,
-               ZEND_ASSIGN_ADD_SPEC_CV_UNUSED_HANDLER,
-               ZEND_ASSIGN_ADD_SPEC_CV_CV_HANDLER,
                ZEND_NULL_HANDLER,
+               ZEND_FETCH_W_SPEC_TMPVAR_UNUSED_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
@@ -54942,21 +57120,7 @@ void zend_init_opcodes_handlers(void)
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
-               ZEND_ASSIGN_SUB_SPEC_VAR_CONST_HANDLER,
-               ZEND_ASSIGN_SUB_SPEC_VAR_TMPVAR_HANDLER,
-               ZEND_ASSIGN_SUB_SPEC_VAR_TMPVAR_HANDLER,
-               ZEND_ASSIGN_SUB_SPEC_VAR_UNUSED_HANDLER,
-               ZEND_ASSIGN_SUB_SPEC_VAR_CV_HANDLER,
-               ZEND_ASSIGN_SUB_SPEC_UNUSED_CONST_HANDLER,
-               ZEND_ASSIGN_SUB_SPEC_UNUSED_TMPVAR_HANDLER,
-               ZEND_ASSIGN_SUB_SPEC_UNUSED_TMPVAR_HANDLER,
-               ZEND_ASSIGN_SUB_SPEC_UNUSED_UNUSED_HANDLER,
-               ZEND_ASSIGN_SUB_SPEC_UNUSED_CV_HANDLER,
-               ZEND_ASSIGN_SUB_SPEC_CV_CONST_HANDLER,
-               ZEND_ASSIGN_SUB_SPEC_CV_TMPVAR_HANDLER,
-               ZEND_ASSIGN_SUB_SPEC_CV_TMPVAR_HANDLER,
-               ZEND_ASSIGN_SUB_SPEC_CV_UNUSED_HANDLER,
-               ZEND_ASSIGN_SUB_SPEC_CV_CV_HANDLER,
+               ZEND_FETCH_W_SPEC_CV_UNUSED_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
@@ -54967,96 +57131,62 @@ void zend_init_opcodes_handlers(void)
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
-               ZEND_ASSIGN_MUL_SPEC_VAR_CONST_HANDLER,
-               ZEND_ASSIGN_MUL_SPEC_VAR_TMPVAR_HANDLER,
-               ZEND_ASSIGN_MUL_SPEC_VAR_TMPVAR_HANDLER,
-               ZEND_ASSIGN_MUL_SPEC_VAR_UNUSED_HANDLER,
-               ZEND_ASSIGN_MUL_SPEC_VAR_CV_HANDLER,
-               ZEND_ASSIGN_MUL_SPEC_UNUSED_CONST_HANDLER,
-               ZEND_ASSIGN_MUL_SPEC_UNUSED_TMPVAR_HANDLER,
-               ZEND_ASSIGN_MUL_SPEC_UNUSED_TMPVAR_HANDLER,
-               ZEND_ASSIGN_MUL_SPEC_UNUSED_UNUSED_HANDLER,
-               ZEND_ASSIGN_MUL_SPEC_UNUSED_CV_HANDLER,
-               ZEND_ASSIGN_MUL_SPEC_CV_CONST_HANDLER,
-               ZEND_ASSIGN_MUL_SPEC_CV_TMPVAR_HANDLER,
-               ZEND_ASSIGN_MUL_SPEC_CV_TMPVAR_HANDLER,
-               ZEND_ASSIGN_MUL_SPEC_CV_UNUSED_HANDLER,
-               ZEND_ASSIGN_MUL_SPEC_CV_CV_HANDLER,
+               ZEND_NULL_HANDLER,
+               ZEND_FETCH_DIM_W_SPEC_VAR_CONST_HANDLER,
+               ZEND_FETCH_DIM_W_SPEC_VAR_TMPVAR_HANDLER,
+               ZEND_FETCH_DIM_W_SPEC_VAR_TMPVAR_HANDLER,
+               ZEND_FETCH_DIM_W_SPEC_VAR_UNUSED_HANDLER,
+               ZEND_FETCH_DIM_W_SPEC_VAR_CV_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
+               ZEND_FETCH_DIM_W_SPEC_CV_CONST_HANDLER,
+               ZEND_FETCH_DIM_W_SPEC_CV_TMPVAR_HANDLER,
+               ZEND_FETCH_DIM_W_SPEC_CV_TMPVAR_HANDLER,
+               ZEND_FETCH_DIM_W_SPEC_CV_UNUSED_HANDLER,
+               ZEND_FETCH_DIM_W_SPEC_CV_CV_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
-               ZEND_ASSIGN_DIV_SPEC_VAR_CONST_HANDLER,
-               ZEND_ASSIGN_DIV_SPEC_VAR_TMPVAR_HANDLER,
-               ZEND_ASSIGN_DIV_SPEC_VAR_TMPVAR_HANDLER,
-               ZEND_ASSIGN_DIV_SPEC_VAR_UNUSED_HANDLER,
-               ZEND_ASSIGN_DIV_SPEC_VAR_CV_HANDLER,
-               ZEND_ASSIGN_DIV_SPEC_UNUSED_CONST_HANDLER,
-               ZEND_ASSIGN_DIV_SPEC_UNUSED_TMPVAR_HANDLER,
-               ZEND_ASSIGN_DIV_SPEC_UNUSED_TMPVAR_HANDLER,
-               ZEND_ASSIGN_DIV_SPEC_UNUSED_UNUSED_HANDLER,
-               ZEND_ASSIGN_DIV_SPEC_UNUSED_CV_HANDLER,
-               ZEND_ASSIGN_DIV_SPEC_CV_CONST_HANDLER,
-               ZEND_ASSIGN_DIV_SPEC_CV_TMPVAR_HANDLER,
-               ZEND_ASSIGN_DIV_SPEC_CV_TMPVAR_HANDLER,
-               ZEND_ASSIGN_DIV_SPEC_CV_UNUSED_HANDLER,
-               ZEND_ASSIGN_DIV_SPEC_CV_CV_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
+               ZEND_FETCH_OBJ_W_SPEC_VAR_CONST_HANDLER,
+               ZEND_FETCH_OBJ_W_SPEC_VAR_TMPVAR_HANDLER,
+               ZEND_FETCH_OBJ_W_SPEC_VAR_TMPVAR_HANDLER,
                ZEND_NULL_HANDLER,
+               ZEND_FETCH_OBJ_W_SPEC_VAR_CV_HANDLER,
+               ZEND_FETCH_OBJ_W_SPEC_UNUSED_CONST_HANDLER,
+               ZEND_FETCH_OBJ_W_SPEC_UNUSED_TMPVAR_HANDLER,
+               ZEND_FETCH_OBJ_W_SPEC_UNUSED_TMPVAR_HANDLER,
                ZEND_NULL_HANDLER,
+               ZEND_FETCH_OBJ_W_SPEC_UNUSED_CV_HANDLER,
+               ZEND_FETCH_OBJ_W_SPEC_CV_CONST_HANDLER,
+               ZEND_FETCH_OBJ_W_SPEC_CV_TMPVAR_HANDLER,
+               ZEND_FETCH_OBJ_W_SPEC_CV_TMPVAR_HANDLER,
                ZEND_NULL_HANDLER,
+               ZEND_FETCH_OBJ_W_SPEC_CV_CV_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
-               ZEND_ASSIGN_MOD_SPEC_VAR_CONST_HANDLER,
-               ZEND_ASSIGN_MOD_SPEC_VAR_TMPVAR_HANDLER,
-               ZEND_ASSIGN_MOD_SPEC_VAR_TMPVAR_HANDLER,
-               ZEND_ASSIGN_MOD_SPEC_VAR_UNUSED_HANDLER,
-               ZEND_ASSIGN_MOD_SPEC_VAR_CV_HANDLER,
-               ZEND_ASSIGN_MOD_SPEC_UNUSED_CONST_HANDLER,
-               ZEND_ASSIGN_MOD_SPEC_UNUSED_TMPVAR_HANDLER,
-               ZEND_ASSIGN_MOD_SPEC_UNUSED_TMPVAR_HANDLER,
-               ZEND_ASSIGN_MOD_SPEC_UNUSED_UNUSED_HANDLER,
-               ZEND_ASSIGN_MOD_SPEC_UNUSED_CV_HANDLER,
-               ZEND_ASSIGN_MOD_SPEC_CV_CONST_HANDLER,
-               ZEND_ASSIGN_MOD_SPEC_CV_TMPVAR_HANDLER,
-               ZEND_ASSIGN_MOD_SPEC_CV_TMPVAR_HANDLER,
-               ZEND_ASSIGN_MOD_SPEC_CV_UNUSED_HANDLER,
-               ZEND_ASSIGN_MOD_SPEC_CV_CV_HANDLER,
                ZEND_NULL_HANDLER,
+               ZEND_FETCH_RW_SPEC_CONST_UNUSED_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
+               ZEND_FETCH_RW_SPEC_TMPVAR_UNUSED_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
+               ZEND_FETCH_RW_SPEC_TMPVAR_UNUSED_HANDLER,
                ZEND_NULL_HANDLER,
-               ZEND_ASSIGN_SL_SPEC_VAR_CONST_HANDLER,
-               ZEND_ASSIGN_SL_SPEC_VAR_TMPVAR_HANDLER,
-               ZEND_ASSIGN_SL_SPEC_VAR_TMPVAR_HANDLER,
-               ZEND_ASSIGN_SL_SPEC_VAR_UNUSED_HANDLER,
-               ZEND_ASSIGN_SL_SPEC_VAR_CV_HANDLER,
-               ZEND_ASSIGN_SL_SPEC_UNUSED_CONST_HANDLER,
-               ZEND_ASSIGN_SL_SPEC_UNUSED_TMPVAR_HANDLER,
-               ZEND_ASSIGN_SL_SPEC_UNUSED_TMPVAR_HANDLER,
-               ZEND_ASSIGN_SL_SPEC_UNUSED_UNUSED_HANDLER,
-               ZEND_ASSIGN_SL_SPEC_UNUSED_CV_HANDLER,
-               ZEND_ASSIGN_SL_SPEC_CV_CONST_HANDLER,
-               ZEND_ASSIGN_SL_SPEC_CV_TMPVAR_HANDLER,
-               ZEND_ASSIGN_SL_SPEC_CV_TMPVAR_HANDLER,
-               ZEND_ASSIGN_SL_SPEC_CV_UNUSED_HANDLER,
-               ZEND_ASSIGN_SL_SPEC_CV_CV_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
@@ -55065,23 +57195,9 @@ void zend_init_opcodes_handlers(void)
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
+               ZEND_FETCH_RW_SPEC_CV_UNUSED_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
-               ZEND_ASSIGN_SR_SPEC_VAR_CONST_HANDLER,
-               ZEND_ASSIGN_SR_SPEC_VAR_TMPVAR_HANDLER,
-               ZEND_ASSIGN_SR_SPEC_VAR_TMPVAR_HANDLER,
-               ZEND_ASSIGN_SR_SPEC_VAR_UNUSED_HANDLER,
-               ZEND_ASSIGN_SR_SPEC_VAR_CV_HANDLER,
-               ZEND_ASSIGN_SR_SPEC_UNUSED_CONST_HANDLER,
-               ZEND_ASSIGN_SR_SPEC_UNUSED_TMPVAR_HANDLER,
-               ZEND_ASSIGN_SR_SPEC_UNUSED_TMPVAR_HANDLER,
-               ZEND_ASSIGN_SR_SPEC_UNUSED_UNUSED_HANDLER,
-               ZEND_ASSIGN_SR_SPEC_UNUSED_CV_HANDLER,
-               ZEND_ASSIGN_SR_SPEC_CV_CONST_HANDLER,
-               ZEND_ASSIGN_SR_SPEC_CV_TMPVAR_HANDLER,
-               ZEND_ASSIGN_SR_SPEC_CV_TMPVAR_HANDLER,
-               ZEND_ASSIGN_SR_SPEC_CV_UNUSED_HANDLER,
-               ZEND_ASSIGN_SR_SPEC_CV_CV_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
@@ -55091,192 +57207,211 @@ void zend_init_opcodes_handlers(void)
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
+               ZEND_FETCH_DIM_RW_SPEC_VAR_CONST_HANDLER,
+               ZEND_FETCH_DIM_RW_SPEC_VAR_TMPVAR_HANDLER,
+               ZEND_FETCH_DIM_RW_SPEC_VAR_TMPVAR_HANDLER,
+               ZEND_FETCH_DIM_RW_SPEC_VAR_UNUSED_HANDLER,
+               ZEND_FETCH_DIM_RW_SPEC_VAR_CV_HANDLER,
                ZEND_NULL_HANDLER,
-               ZEND_ASSIGN_CONCAT_SPEC_VAR_CONST_HANDLER,
-               ZEND_ASSIGN_CONCAT_SPEC_VAR_TMPVAR_HANDLER,
-               ZEND_ASSIGN_CONCAT_SPEC_VAR_TMPVAR_HANDLER,
-               ZEND_ASSIGN_CONCAT_SPEC_VAR_UNUSED_HANDLER,
-               ZEND_ASSIGN_CONCAT_SPEC_VAR_CV_HANDLER,
-               ZEND_ASSIGN_CONCAT_SPEC_UNUSED_CONST_HANDLER,
-               ZEND_ASSIGN_CONCAT_SPEC_UNUSED_TMPVAR_HANDLER,
-               ZEND_ASSIGN_CONCAT_SPEC_UNUSED_TMPVAR_HANDLER,
-               ZEND_ASSIGN_CONCAT_SPEC_UNUSED_UNUSED_HANDLER,
-               ZEND_ASSIGN_CONCAT_SPEC_UNUSED_CV_HANDLER,
-               ZEND_ASSIGN_CONCAT_SPEC_CV_CONST_HANDLER,
-               ZEND_ASSIGN_CONCAT_SPEC_CV_TMPVAR_HANDLER,
-               ZEND_ASSIGN_CONCAT_SPEC_CV_TMPVAR_HANDLER,
-               ZEND_ASSIGN_CONCAT_SPEC_CV_UNUSED_HANDLER,
-               ZEND_ASSIGN_CONCAT_SPEC_CV_CV_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
+               ZEND_FETCH_DIM_RW_SPEC_CV_CONST_HANDLER,
+               ZEND_FETCH_DIM_RW_SPEC_CV_TMPVAR_HANDLER,
+               ZEND_FETCH_DIM_RW_SPEC_CV_TMPVAR_HANDLER,
+               ZEND_FETCH_DIM_RW_SPEC_CV_UNUSED_HANDLER,
+               ZEND_FETCH_DIM_RW_SPEC_CV_CV_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
-               ZEND_ASSIGN_BW_OR_SPEC_VAR_CONST_HANDLER,
-               ZEND_ASSIGN_BW_OR_SPEC_VAR_TMPVAR_HANDLER,
-               ZEND_ASSIGN_BW_OR_SPEC_VAR_TMPVAR_HANDLER,
-               ZEND_ASSIGN_BW_OR_SPEC_VAR_UNUSED_HANDLER,
-               ZEND_ASSIGN_BW_OR_SPEC_VAR_CV_HANDLER,
-               ZEND_ASSIGN_BW_OR_SPEC_UNUSED_CONST_HANDLER,
-               ZEND_ASSIGN_BW_OR_SPEC_UNUSED_TMPVAR_HANDLER,
-               ZEND_ASSIGN_BW_OR_SPEC_UNUSED_TMPVAR_HANDLER,
-               ZEND_ASSIGN_BW_OR_SPEC_UNUSED_UNUSED_HANDLER,
-               ZEND_ASSIGN_BW_OR_SPEC_UNUSED_CV_HANDLER,
-               ZEND_ASSIGN_BW_OR_SPEC_CV_CONST_HANDLER,
-               ZEND_ASSIGN_BW_OR_SPEC_CV_TMPVAR_HANDLER,
-               ZEND_ASSIGN_BW_OR_SPEC_CV_TMPVAR_HANDLER,
-               ZEND_ASSIGN_BW_OR_SPEC_CV_UNUSED_HANDLER,
-               ZEND_ASSIGN_BW_OR_SPEC_CV_CV_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
+               ZEND_FETCH_OBJ_RW_SPEC_VAR_CONST_HANDLER,
+               ZEND_FETCH_OBJ_RW_SPEC_VAR_TMPVAR_HANDLER,
+               ZEND_FETCH_OBJ_RW_SPEC_VAR_TMPVAR_HANDLER,
                ZEND_NULL_HANDLER,
+               ZEND_FETCH_OBJ_RW_SPEC_VAR_CV_HANDLER,
+               ZEND_FETCH_OBJ_RW_SPEC_UNUSED_CONST_HANDLER,
+               ZEND_FETCH_OBJ_RW_SPEC_UNUSED_TMPVAR_HANDLER,
+               ZEND_FETCH_OBJ_RW_SPEC_UNUSED_TMPVAR_HANDLER,
                ZEND_NULL_HANDLER,
+               ZEND_FETCH_OBJ_RW_SPEC_UNUSED_CV_HANDLER,
+               ZEND_FETCH_OBJ_RW_SPEC_CV_CONST_HANDLER,
+               ZEND_FETCH_OBJ_RW_SPEC_CV_TMPVAR_HANDLER,
+               ZEND_FETCH_OBJ_RW_SPEC_CV_TMPVAR_HANDLER,
                ZEND_NULL_HANDLER,
+               ZEND_FETCH_OBJ_RW_SPEC_CV_CV_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
-               ZEND_ASSIGN_BW_AND_SPEC_VAR_CONST_HANDLER,
-               ZEND_ASSIGN_BW_AND_SPEC_VAR_TMPVAR_HANDLER,
-               ZEND_ASSIGN_BW_AND_SPEC_VAR_TMPVAR_HANDLER,
-               ZEND_ASSIGN_BW_AND_SPEC_VAR_UNUSED_HANDLER,
-               ZEND_ASSIGN_BW_AND_SPEC_VAR_CV_HANDLER,
-               ZEND_ASSIGN_BW_AND_SPEC_UNUSED_CONST_HANDLER,
-               ZEND_ASSIGN_BW_AND_SPEC_UNUSED_TMPVAR_HANDLER,
-               ZEND_ASSIGN_BW_AND_SPEC_UNUSED_TMPVAR_HANDLER,
-               ZEND_ASSIGN_BW_AND_SPEC_UNUSED_UNUSED_HANDLER,
-               ZEND_ASSIGN_BW_AND_SPEC_UNUSED_CV_HANDLER,
-               ZEND_ASSIGN_BW_AND_SPEC_CV_CONST_HANDLER,
-               ZEND_ASSIGN_BW_AND_SPEC_CV_TMPVAR_HANDLER,
-               ZEND_ASSIGN_BW_AND_SPEC_CV_TMPVAR_HANDLER,
-               ZEND_ASSIGN_BW_AND_SPEC_CV_UNUSED_HANDLER,
-               ZEND_ASSIGN_BW_AND_SPEC_CV_CV_HANDLER,
+               ZEND_FETCH_IS_SPEC_CONST_UNUSED_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
+               ZEND_FETCH_IS_SPEC_TMPVAR_UNUSED_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
+               ZEND_FETCH_IS_SPEC_TMPVAR_UNUSED_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
-               ZEND_ASSIGN_BW_XOR_SPEC_VAR_CONST_HANDLER,
-               ZEND_ASSIGN_BW_XOR_SPEC_VAR_TMPVAR_HANDLER,
-               ZEND_ASSIGN_BW_XOR_SPEC_VAR_TMPVAR_HANDLER,
-               ZEND_ASSIGN_BW_XOR_SPEC_VAR_UNUSED_HANDLER,
-               ZEND_ASSIGN_BW_XOR_SPEC_VAR_CV_HANDLER,
-               ZEND_ASSIGN_BW_XOR_SPEC_UNUSED_CONST_HANDLER,
-               ZEND_ASSIGN_BW_XOR_SPEC_UNUSED_TMPVAR_HANDLER,
-               ZEND_ASSIGN_BW_XOR_SPEC_UNUSED_TMPVAR_HANDLER,
-               ZEND_ASSIGN_BW_XOR_SPEC_UNUSED_UNUSED_HANDLER,
-               ZEND_ASSIGN_BW_XOR_SPEC_UNUSED_CV_HANDLER,
-               ZEND_ASSIGN_BW_XOR_SPEC_CV_CONST_HANDLER,
-               ZEND_ASSIGN_BW_XOR_SPEC_CV_TMPVAR_HANDLER,
-               ZEND_ASSIGN_BW_XOR_SPEC_CV_TMPVAR_HANDLER,
-               ZEND_ASSIGN_BW_XOR_SPEC_CV_UNUSED_HANDLER,
-               ZEND_ASSIGN_BW_XOR_SPEC_CV_CV_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
-               ZEND_PRE_INC_SPEC_VAR_RETVAL_UNUSED_HANDLER,
-               ZEND_PRE_INC_SPEC_VAR_RETVAL_USED_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
-               ZEND_PRE_INC_SPEC_CV_RETVAL_UNUSED_HANDLER,
-               ZEND_PRE_INC_SPEC_CV_RETVAL_USED_HANDLER,
                ZEND_NULL_HANDLER,
+               ZEND_FETCH_IS_SPEC_CV_UNUSED_HANDLER,
                ZEND_NULL_HANDLER,
+               ZEND_FETCH_DIM_IS_SPEC_CONST_CONST_HANDLER,
+               ZEND_FETCH_DIM_IS_SPEC_CONST_TMPVAR_HANDLER,
+               ZEND_FETCH_DIM_IS_SPEC_CONST_TMPVAR_HANDLER,
                ZEND_NULL_HANDLER,
+               ZEND_FETCH_DIM_IS_SPEC_CONST_CV_HANDLER,
+               ZEND_FETCH_DIM_IS_SPEC_TMPVAR_CONST_HANDLER,
+               ZEND_FETCH_DIM_IS_SPEC_TMPVAR_TMPVAR_HANDLER,
+               ZEND_FETCH_DIM_IS_SPEC_TMPVAR_TMPVAR_HANDLER,
                ZEND_NULL_HANDLER,
-               ZEND_PRE_DEC_SPEC_VAR_RETVAL_UNUSED_HANDLER,
-               ZEND_PRE_DEC_SPEC_VAR_RETVAL_USED_HANDLER,
+               ZEND_FETCH_DIM_IS_SPEC_TMPVAR_CV_HANDLER,
+               ZEND_FETCH_DIM_IS_SPEC_TMPVAR_CONST_HANDLER,
+               ZEND_FETCH_DIM_IS_SPEC_TMPVAR_TMPVAR_HANDLER,
+               ZEND_FETCH_DIM_IS_SPEC_TMPVAR_TMPVAR_HANDLER,
                ZEND_NULL_HANDLER,
+               ZEND_FETCH_DIM_IS_SPEC_TMPVAR_CV_HANDLER,
                ZEND_NULL_HANDLER,
-               ZEND_PRE_DEC_SPEC_CV_RETVAL_UNUSED_HANDLER,
-               ZEND_PRE_DEC_SPEC_CV_RETVAL_USED_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
-               ZEND_POST_INC_SPEC_VAR_HANDLER,
                ZEND_NULL_HANDLER,
-               ZEND_POST_INC_SPEC_CV_HANDLER,
                ZEND_NULL_HANDLER,
+               ZEND_FETCH_DIM_IS_SPEC_CV_CONST_HANDLER,
+               ZEND_FETCH_DIM_IS_SPEC_CV_TMPVAR_HANDLER,
+               ZEND_FETCH_DIM_IS_SPEC_CV_TMPVAR_HANDLER,
                ZEND_NULL_HANDLER,
-               ZEND_POST_DEC_SPEC_VAR_HANDLER,
+               ZEND_FETCH_DIM_IS_SPEC_CV_CV_HANDLER,
+               ZEND_FETCH_OBJ_IS_SPEC_CONST_CONST_HANDLER,
+               ZEND_FETCH_OBJ_IS_SPEC_CONST_TMPVAR_HANDLER,
+               ZEND_FETCH_OBJ_IS_SPEC_CONST_TMPVAR_HANDLER,
                ZEND_NULL_HANDLER,
-               ZEND_POST_DEC_SPEC_CV_HANDLER,
+               ZEND_FETCH_OBJ_IS_SPEC_CONST_CV_HANDLER,
+               ZEND_FETCH_OBJ_IS_SPEC_TMPVAR_CONST_HANDLER,
+               ZEND_FETCH_OBJ_IS_SPEC_TMPVAR_TMPVAR_HANDLER,
+               ZEND_FETCH_OBJ_IS_SPEC_TMPVAR_TMPVAR_HANDLER,
                ZEND_NULL_HANDLER,
+               ZEND_FETCH_OBJ_IS_SPEC_TMPVAR_CV_HANDLER,
+               ZEND_FETCH_OBJ_IS_SPEC_TMPVAR_CONST_HANDLER,
+               ZEND_FETCH_OBJ_IS_SPEC_TMPVAR_TMPVAR_HANDLER,
+               ZEND_FETCH_OBJ_IS_SPEC_TMPVAR_TMPVAR_HANDLER,
                ZEND_NULL_HANDLER,
+               ZEND_FETCH_OBJ_IS_SPEC_TMPVAR_CV_HANDLER,
+               ZEND_FETCH_OBJ_IS_SPEC_UNUSED_CONST_HANDLER,
+               ZEND_FETCH_OBJ_IS_SPEC_UNUSED_TMPVAR_HANDLER,
+               ZEND_FETCH_OBJ_IS_SPEC_UNUSED_TMPVAR_HANDLER,
                ZEND_NULL_HANDLER,
+               ZEND_FETCH_OBJ_IS_SPEC_UNUSED_CV_HANDLER,
+               ZEND_FETCH_OBJ_IS_SPEC_CV_CONST_HANDLER,
+               ZEND_FETCH_OBJ_IS_SPEC_CV_TMPVAR_HANDLER,
+               ZEND_FETCH_OBJ_IS_SPEC_CV_TMPVAR_HANDLER,
                ZEND_NULL_HANDLER,
+               ZEND_FETCH_OBJ_IS_SPEC_CV_CV_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
+               ZEND_FETCH_FUNC_ARG_SPEC_CONST_UNUSED_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
+               ZEND_FETCH_FUNC_ARG_SPEC_TMPVAR_UNUSED_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
+               ZEND_FETCH_FUNC_ARG_SPEC_TMPVAR_UNUSED_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
-               ZEND_ASSIGN_SPEC_VAR_CONST_RETVAL_UNUSED_HANDLER,
-               ZEND_ASSIGN_SPEC_VAR_CONST_RETVAL_USED_HANDLER,
-               ZEND_ASSIGN_SPEC_VAR_TMP_RETVAL_UNUSED_HANDLER,
-               ZEND_ASSIGN_SPEC_VAR_TMP_RETVAL_USED_HANDLER,
-               ZEND_ASSIGN_SPEC_VAR_VAR_RETVAL_UNUSED_HANDLER,
-               ZEND_ASSIGN_SPEC_VAR_VAR_RETVAL_USED_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
-               ZEND_ASSIGN_SPEC_VAR_CV_RETVAL_UNUSED_HANDLER,
-               ZEND_ASSIGN_SPEC_VAR_CV_RETVAL_USED_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
+               ZEND_FETCH_FUNC_ARG_SPEC_CV_UNUSED_HANDLER,
                ZEND_NULL_HANDLER,
+               ZEND_FETCH_DIM_FUNC_ARG_SPEC_CONST_CONST_HANDLER,
+               ZEND_FETCH_DIM_FUNC_ARG_SPEC_CONST_TMPVAR_HANDLER,
+               ZEND_FETCH_DIM_FUNC_ARG_SPEC_CONST_TMPVAR_HANDLER,
+               ZEND_FETCH_DIM_FUNC_ARG_SPEC_CONST_UNUSED_HANDLER,
+               ZEND_FETCH_DIM_FUNC_ARG_SPEC_CONST_CV_HANDLER,
+               ZEND_FETCH_DIM_FUNC_ARG_SPEC_TMP_CONST_HANDLER,
+               ZEND_FETCH_DIM_FUNC_ARG_SPEC_TMP_TMPVAR_HANDLER,
+               ZEND_FETCH_DIM_FUNC_ARG_SPEC_TMP_TMPVAR_HANDLER,
+               ZEND_FETCH_DIM_FUNC_ARG_SPEC_TMP_UNUSED_HANDLER,
+               ZEND_FETCH_DIM_FUNC_ARG_SPEC_TMP_CV_HANDLER,
+               ZEND_FETCH_DIM_FUNC_ARG_SPEC_VAR_CONST_HANDLER,
+               ZEND_FETCH_DIM_FUNC_ARG_SPEC_VAR_TMPVAR_HANDLER,
+               ZEND_FETCH_DIM_FUNC_ARG_SPEC_VAR_TMPVAR_HANDLER,
+               ZEND_FETCH_DIM_FUNC_ARG_SPEC_VAR_UNUSED_HANDLER,
+               ZEND_FETCH_DIM_FUNC_ARG_SPEC_VAR_CV_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
+               ZEND_FETCH_DIM_FUNC_ARG_SPEC_CV_CONST_HANDLER,
+               ZEND_FETCH_DIM_FUNC_ARG_SPEC_CV_TMPVAR_HANDLER,
+               ZEND_FETCH_DIM_FUNC_ARG_SPEC_CV_TMPVAR_HANDLER,
+               ZEND_FETCH_DIM_FUNC_ARG_SPEC_CV_UNUSED_HANDLER,
+               ZEND_FETCH_DIM_FUNC_ARG_SPEC_CV_CV_HANDLER,
+               ZEND_FETCH_OBJ_FUNC_ARG_SPEC_CONST_CONST_HANDLER,
+               ZEND_FETCH_OBJ_FUNC_ARG_SPEC_CONST_TMPVAR_HANDLER,
+               ZEND_FETCH_OBJ_FUNC_ARG_SPEC_CONST_TMPVAR_HANDLER,
                ZEND_NULL_HANDLER,
+               ZEND_FETCH_OBJ_FUNC_ARG_SPEC_CONST_CV_HANDLER,
+               ZEND_FETCH_OBJ_FUNC_ARG_SPEC_TMP_CONST_HANDLER,
+               ZEND_FETCH_OBJ_FUNC_ARG_SPEC_TMP_TMPVAR_HANDLER,
+               ZEND_FETCH_OBJ_FUNC_ARG_SPEC_TMP_TMPVAR_HANDLER,
                ZEND_NULL_HANDLER,
-               ZEND_ASSIGN_SPEC_CV_CONST_RETVAL_UNUSED_HANDLER,
-               ZEND_ASSIGN_SPEC_CV_CONST_RETVAL_USED_HANDLER,
-               ZEND_ASSIGN_SPEC_CV_TMP_RETVAL_UNUSED_HANDLER,
-               ZEND_ASSIGN_SPEC_CV_TMP_RETVAL_USED_HANDLER,
-               ZEND_ASSIGN_SPEC_CV_VAR_RETVAL_UNUSED_HANDLER,
-               ZEND_ASSIGN_SPEC_CV_VAR_RETVAL_USED_HANDLER,
+               ZEND_FETCH_OBJ_FUNC_ARG_SPEC_TMP_CV_HANDLER,
+               ZEND_FETCH_OBJ_FUNC_ARG_SPEC_VAR_CONST_HANDLER,
+               ZEND_FETCH_OBJ_FUNC_ARG_SPEC_VAR_TMPVAR_HANDLER,
+               ZEND_FETCH_OBJ_FUNC_ARG_SPEC_VAR_TMPVAR_HANDLER,
                ZEND_NULL_HANDLER,
+               ZEND_FETCH_OBJ_FUNC_ARG_SPEC_VAR_CV_HANDLER,
+               ZEND_FETCH_OBJ_FUNC_ARG_SPEC_UNUSED_CONST_HANDLER,
+               ZEND_FETCH_OBJ_FUNC_ARG_SPEC_UNUSED_TMPVAR_HANDLER,
+               ZEND_FETCH_OBJ_FUNC_ARG_SPEC_UNUSED_TMPVAR_HANDLER,
                ZEND_NULL_HANDLER,
-               ZEND_ASSIGN_SPEC_CV_CV_RETVAL_UNUSED_HANDLER,
-               ZEND_ASSIGN_SPEC_CV_CV_RETVAL_USED_HANDLER,
+               ZEND_FETCH_OBJ_FUNC_ARG_SPEC_UNUSED_CV_HANDLER,
+               ZEND_FETCH_OBJ_FUNC_ARG_SPEC_CV_CONST_HANDLER,
+               ZEND_FETCH_OBJ_FUNC_ARG_SPEC_CV_TMPVAR_HANDLER,
+               ZEND_FETCH_OBJ_FUNC_ARG_SPEC_CV_TMPVAR_HANDLER,
                ZEND_NULL_HANDLER,
+               ZEND_FETCH_OBJ_FUNC_ARG_SPEC_CV_CV_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
+               ZEND_FETCH_UNSET_SPEC_CONST_UNUSED_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
+               ZEND_FETCH_UNSET_SPEC_TMPVAR_UNUSED_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
-               ZEND_ASSIGN_REF_SPEC_VAR_VAR_HANDLER,
+               ZEND_FETCH_UNSET_SPEC_TMPVAR_UNUSED_HANDLER,
                ZEND_NULL_HANDLER,
-               ZEND_ASSIGN_REF_SPEC_VAR_CV_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
@@ -55284,130 +57419,86 @@ void zend_init_opcodes_handlers(void)
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
-               ZEND_ASSIGN_REF_SPEC_CV_VAR_HANDLER,
                ZEND_NULL_HANDLER,
-               ZEND_ASSIGN_REF_SPEC_CV_CV_HANDLER,
-               ZEND_ECHO_SPEC_CONST_HANDLER,
-               ZEND_ECHO_SPEC_TMPVAR_HANDLER,
-               ZEND_ECHO_SPEC_TMPVAR_HANDLER,
+               ZEND_FETCH_UNSET_SPEC_CV_UNUSED_HANDLER,
                ZEND_NULL_HANDLER,
-               ZEND_ECHO_SPEC_CV_HANDLER,
-               ZEND_JMP_SPEC_HANDLER,
-               ZEND_JMPZ_SPEC_CONST_HANDLER,
-               ZEND_JMPZ_SPEC_TMPVAR_HANDLER,
-               ZEND_JMPZ_SPEC_TMPVAR_HANDLER,
                ZEND_NULL_HANDLER,
-               ZEND_JMPZ_SPEC_CV_HANDLER,
-               ZEND_JMPNZ_SPEC_CONST_HANDLER,
-               ZEND_JMPNZ_SPEC_TMPVAR_HANDLER,
-               ZEND_JMPNZ_SPEC_TMPVAR_HANDLER,
                ZEND_NULL_HANDLER,
-               ZEND_JMPNZ_SPEC_CV_HANDLER,
-               ZEND_JMPZNZ_SPEC_CONST_HANDLER,
-               ZEND_JMPZNZ_SPEC_TMPVAR_HANDLER,
-               ZEND_JMPZNZ_SPEC_TMPVAR_HANDLER,
                ZEND_NULL_HANDLER,
-               ZEND_JMPZNZ_SPEC_CV_HANDLER,
-               ZEND_JMPZ_EX_SPEC_CONST_HANDLER,
-               ZEND_JMPZ_EX_SPEC_TMPVAR_HANDLER,
-               ZEND_JMPZ_EX_SPEC_TMPVAR_HANDLER,
                ZEND_NULL_HANDLER,
-               ZEND_JMPZ_EX_SPEC_CV_HANDLER,
-               ZEND_JMPNZ_EX_SPEC_CONST_HANDLER,
-               ZEND_JMPNZ_EX_SPEC_TMPVAR_HANDLER,
-               ZEND_JMPNZ_EX_SPEC_TMPVAR_HANDLER,
                ZEND_NULL_HANDLER,
-               ZEND_JMPNZ_EX_SPEC_CV_HANDLER,
-               ZEND_CASE_SPEC_CONST_CONST_HANDLER,
-               ZEND_CASE_SPEC_CONST_TMPVAR_HANDLER,
-               ZEND_CASE_SPEC_CONST_TMPVAR_HANDLER,
                ZEND_NULL_HANDLER,
-               ZEND_CASE_SPEC_CONST_CV_HANDLER,
-               ZEND_CASE_SPEC_TMPVAR_CONST_HANDLER,
-               ZEND_CASE_SPEC_TMPVAR_TMPVAR_HANDLER,
-               ZEND_CASE_SPEC_TMPVAR_TMPVAR_HANDLER,
                ZEND_NULL_HANDLER,
-               ZEND_CASE_SPEC_TMPVAR_CV_HANDLER,
-               ZEND_CASE_SPEC_TMPVAR_CONST_HANDLER,
-               ZEND_CASE_SPEC_TMPVAR_TMPVAR_HANDLER,
-               ZEND_CASE_SPEC_TMPVAR_TMPVAR_HANDLER,
                ZEND_NULL_HANDLER,
-               ZEND_CASE_SPEC_TMPVAR_CV_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
+               ZEND_FETCH_DIM_UNSET_SPEC_VAR_CONST_HANDLER,
+               ZEND_FETCH_DIM_UNSET_SPEC_VAR_TMPVAR_HANDLER,
+               ZEND_FETCH_DIM_UNSET_SPEC_VAR_TMPVAR_HANDLER,
                ZEND_NULL_HANDLER,
+               ZEND_FETCH_DIM_UNSET_SPEC_VAR_CV_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
-               ZEND_CASE_SPEC_CV_CONST_HANDLER,
-               ZEND_CASE_SPEC_CV_TMPVAR_HANDLER,
-               ZEND_CASE_SPEC_CV_TMPVAR_HANDLER,
                ZEND_NULL_HANDLER,
-               ZEND_CASE_SPEC_CV_CV_HANDLER,
-               ZEND_BOOL_SPEC_CONST_HANDLER,
-               ZEND_BOOL_SPEC_TMPVAR_HANDLER,
-               ZEND_BOOL_SPEC_TMPVAR_HANDLER,
                ZEND_NULL_HANDLER,
-               ZEND_BOOL_SPEC_CV_HANDLER,
-               ZEND_FAST_CONCAT_SPEC_CONST_CONST_HANDLER,
-               ZEND_FAST_CONCAT_SPEC_CONST_TMPVAR_HANDLER,
-               ZEND_FAST_CONCAT_SPEC_CONST_TMPVAR_HANDLER,
                ZEND_NULL_HANDLER,
-               ZEND_FAST_CONCAT_SPEC_CONST_CV_HANDLER,
-               ZEND_FAST_CONCAT_SPEC_TMPVAR_CONST_HANDLER,
-               ZEND_FAST_CONCAT_SPEC_TMPVAR_TMPVAR_HANDLER,
-               ZEND_FAST_CONCAT_SPEC_TMPVAR_TMPVAR_HANDLER,
+               ZEND_FETCH_DIM_UNSET_SPEC_CV_CONST_HANDLER,
+               ZEND_FETCH_DIM_UNSET_SPEC_CV_TMPVAR_HANDLER,
+               ZEND_FETCH_DIM_UNSET_SPEC_CV_TMPVAR_HANDLER,
+               ZEND_NULL_HANDLER,
+               ZEND_FETCH_DIM_UNSET_SPEC_CV_CV_HANDLER,
                ZEND_NULL_HANDLER,
-               ZEND_FAST_CONCAT_SPEC_TMPVAR_CV_HANDLER,
-               ZEND_FAST_CONCAT_SPEC_TMPVAR_CONST_HANDLER,
-               ZEND_FAST_CONCAT_SPEC_TMPVAR_TMPVAR_HANDLER,
-               ZEND_FAST_CONCAT_SPEC_TMPVAR_TMPVAR_HANDLER,
                ZEND_NULL_HANDLER,
-               ZEND_FAST_CONCAT_SPEC_TMPVAR_CV_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
-               ZEND_FAST_CONCAT_SPEC_CV_CONST_HANDLER,
-               ZEND_FAST_CONCAT_SPEC_CV_TMPVAR_HANDLER,
-               ZEND_FAST_CONCAT_SPEC_CV_TMPVAR_HANDLER,
                ZEND_NULL_HANDLER,
-               ZEND_FAST_CONCAT_SPEC_CV_CV_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
+               ZEND_FETCH_OBJ_UNSET_SPEC_VAR_CONST_HANDLER,
+               ZEND_FETCH_OBJ_UNSET_SPEC_VAR_TMPVAR_HANDLER,
+               ZEND_FETCH_OBJ_UNSET_SPEC_VAR_TMPVAR_HANDLER,
+               ZEND_NULL_HANDLER,
+               ZEND_FETCH_OBJ_UNSET_SPEC_VAR_CV_HANDLER,
+               ZEND_FETCH_OBJ_UNSET_SPEC_UNUSED_CONST_HANDLER,
+               ZEND_FETCH_OBJ_UNSET_SPEC_UNUSED_TMPVAR_HANDLER,
+               ZEND_FETCH_OBJ_UNSET_SPEC_UNUSED_TMPVAR_HANDLER,
                ZEND_NULL_HANDLER,
+               ZEND_FETCH_OBJ_UNSET_SPEC_UNUSED_CV_HANDLER,
+               ZEND_FETCH_OBJ_UNSET_SPEC_CV_CONST_HANDLER,
+               ZEND_FETCH_OBJ_UNSET_SPEC_CV_TMPVAR_HANDLER,
+               ZEND_FETCH_OBJ_UNSET_SPEC_CV_TMPVAR_HANDLER,
                ZEND_NULL_HANDLER,
+               ZEND_FETCH_OBJ_UNSET_SPEC_CV_CV_HANDLER,
+               ZEND_FETCH_LIST_SPEC_CONST_CONST_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
+               ZEND_FETCH_LIST_SPEC_TMPVAR_CONST_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
+               ZEND_FETCH_LIST_SPEC_TMPVAR_CONST_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
-               ZEND_ROPE_INIT_SPEC_UNUSED_CONST_HANDLER,
-               ZEND_ROPE_INIT_SPEC_UNUSED_TMPVAR_HANDLER,
-               ZEND_ROPE_INIT_SPEC_UNUSED_TMPVAR_HANDLER,
                ZEND_NULL_HANDLER,
-               ZEND_ROPE_INIT_SPEC_UNUSED_CV_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
+               ZEND_FETCH_LIST_SPEC_CV_CONST_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
-               ZEND_ROPE_ADD_SPEC_TMP_CONST_HANDLER,
-               ZEND_ROPE_ADD_SPEC_TMP_TMPVAR_HANDLER,
-               ZEND_ROPE_ADD_SPEC_TMP_TMPVAR_HANDLER,
                ZEND_NULL_HANDLER,
-               ZEND_ROPE_ADD_SPEC_TMP_CV_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
@@ -55421,6 +57512,7 @@ void zend_init_opcodes_handlers(void)
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
+               ZEND_FETCH_CONSTANT_SPEC_UNUSED_CONST_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
@@ -55428,161 +57520,167 @@ void zend_init_opcodes_handlers(void)
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
-               ZEND_ROPE_END_SPEC_TMP_CONST_HANDLER,
-               ZEND_ROPE_END_SPEC_TMP_TMPVAR_HANDLER,
-               ZEND_ROPE_END_SPEC_TMP_TMPVAR_HANDLER,
                ZEND_NULL_HANDLER,
-               ZEND_ROPE_END_SPEC_TMP_CV_HANDLER,
                ZEND_NULL_HANDLER,
+               ZEND_EXT_STMT_SPEC_HANDLER,
+               ZEND_EXT_FCALL_BEGIN_SPEC_HANDLER,
+               ZEND_EXT_FCALL_END_SPEC_HANDLER,
+               ZEND_EXT_NOP_SPEC_HANDLER,
+               ZEND_TICKS_SPEC_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
+               ZEND_SEND_VAR_NO_REF_SPEC_VAR_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
+               ZEND_CATCH_SPEC_CONST_CV_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
-               ZEND_BEGIN_SILENCE_SPEC_HANDLER,
                ZEND_NULL_HANDLER,
-               ZEND_END_SILENCE_SPEC_TMP_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
-               ZEND_INIT_FCALL_BY_NAME_SPEC_CONST_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
-               ZEND_DO_FCALL_SPEC_RETVAL_UNUSED_HANDLER,
-               ZEND_DO_FCALL_SPEC_RETVAL_USED_HANDLER,
-               ZEND_INIT_FCALL_SPEC_CONST_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
-               ZEND_RETURN_SPEC_CONST_HANDLER,
-               ZEND_RETURN_SPEC_TMP_HANDLER,
-               ZEND_RETURN_SPEC_VAR_HANDLER,
                ZEND_NULL_HANDLER,
-               ZEND_RETURN_SPEC_CV_HANDLER,
-               ZEND_RECV_SPEC_HANDLER,
-               ZEND_RECV_INIT_SPEC_CONST_HANDLER,
                ZEND_NULL_HANDLER,
+               ZEND_THROW_SPEC_CONST_HANDLER,
+               ZEND_THROW_SPEC_TMP_HANDLER,
+               ZEND_THROW_SPEC_VAR_HANDLER,
                ZEND_NULL_HANDLER,
+               ZEND_THROW_SPEC_CV_HANDLER,
+               ZEND_FETCH_CLASS_SPEC_CONST_HANDLER,
+               ZEND_FETCH_CLASS_SPEC_TMPVAR_HANDLER,
+               ZEND_FETCH_CLASS_SPEC_TMPVAR_HANDLER,
+               ZEND_FETCH_CLASS_SPEC_UNUSED_HANDLER,
+               ZEND_FETCH_CLASS_SPEC_CV_HANDLER,
+               ZEND_CLONE_SPEC_CONST_HANDLER,
+               ZEND_CLONE_SPEC_TMPVAR_HANDLER,
+               ZEND_CLONE_SPEC_TMPVAR_HANDLER,
+               ZEND_CLONE_SPEC_UNUSED_HANDLER,
+               ZEND_CLONE_SPEC_CV_HANDLER,
+               ZEND_RETURN_BY_REF_SPEC_CONST_HANDLER,
+               ZEND_RETURN_BY_REF_SPEC_TMP_HANDLER,
+               ZEND_RETURN_BY_REF_SPEC_VAR_HANDLER,
                ZEND_NULL_HANDLER,
+               ZEND_RETURN_BY_REF_SPEC_CV_HANDLER,
+               ZEND_INIT_METHOD_CALL_SPEC_CONST_CONST_HANDLER,
+               ZEND_INIT_METHOD_CALL_SPEC_CONST_TMPVAR_HANDLER,
+               ZEND_INIT_METHOD_CALL_SPEC_CONST_TMPVAR_HANDLER,
                ZEND_NULL_HANDLER,
-               ZEND_SEND_VAL_SPEC_CONST_HANDLER,
-               ZEND_SEND_VAL_SPEC_TMP_HANDLER,
+               ZEND_INIT_METHOD_CALL_SPEC_CONST_CV_HANDLER,
+               ZEND_INIT_METHOD_CALL_SPEC_TMPVAR_CONST_HANDLER,
+               ZEND_INIT_METHOD_CALL_SPEC_TMPVAR_TMPVAR_HANDLER,
+               ZEND_INIT_METHOD_CALL_SPEC_TMPVAR_TMPVAR_HANDLER,
                ZEND_NULL_HANDLER,
+               ZEND_INIT_METHOD_CALL_SPEC_TMPVAR_CV_HANDLER,
+               ZEND_INIT_METHOD_CALL_SPEC_TMPVAR_CONST_HANDLER,
+               ZEND_INIT_METHOD_CALL_SPEC_TMPVAR_TMPVAR_HANDLER,
+               ZEND_INIT_METHOD_CALL_SPEC_TMPVAR_TMPVAR_HANDLER,
                ZEND_NULL_HANDLER,
+               ZEND_INIT_METHOD_CALL_SPEC_TMPVAR_CV_HANDLER,
+               ZEND_INIT_METHOD_CALL_SPEC_UNUSED_CONST_HANDLER,
+               ZEND_INIT_METHOD_CALL_SPEC_UNUSED_TMPVAR_HANDLER,
+               ZEND_INIT_METHOD_CALL_SPEC_UNUSED_TMPVAR_HANDLER,
                ZEND_NULL_HANDLER,
+               ZEND_INIT_METHOD_CALL_SPEC_UNUSED_CV_HANDLER,
+               ZEND_INIT_METHOD_CALL_SPEC_CV_CONST_HANDLER,
+               ZEND_INIT_METHOD_CALL_SPEC_CV_TMPVAR_HANDLER,
+               ZEND_INIT_METHOD_CALL_SPEC_CV_TMPVAR_HANDLER,
                ZEND_NULL_HANDLER,
+               ZEND_INIT_METHOD_CALL_SPEC_CV_CV_HANDLER,
+               ZEND_INIT_STATIC_METHOD_CALL_SPEC_CONST_CONST_HANDLER,
+               ZEND_INIT_STATIC_METHOD_CALL_SPEC_CONST_TMPVAR_HANDLER,
+               ZEND_INIT_STATIC_METHOD_CALL_SPEC_CONST_TMPVAR_HANDLER,
+               ZEND_INIT_STATIC_METHOD_CALL_SPEC_CONST_UNUSED_HANDLER,
+               ZEND_INIT_STATIC_METHOD_CALL_SPEC_CONST_CV_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
-               ZEND_SEND_VAR_EX_SPEC_VAR_HANDLER,
-               ZEND_SEND_VAR_EX_SPEC_VAR_QUICK_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
-               ZEND_SEND_VAR_EX_SPEC_CV_HANDLER,
-               ZEND_SEND_VAR_EX_SPEC_CV_QUICK_HANDLER,
+               ZEND_INIT_STATIC_METHOD_CALL_SPEC_VAR_CONST_HANDLER,
+               ZEND_INIT_STATIC_METHOD_CALL_SPEC_VAR_TMPVAR_HANDLER,
+               ZEND_INIT_STATIC_METHOD_CALL_SPEC_VAR_TMPVAR_HANDLER,
+               ZEND_INIT_STATIC_METHOD_CALL_SPEC_VAR_UNUSED_HANDLER,
+               ZEND_INIT_STATIC_METHOD_CALL_SPEC_VAR_CV_HANDLER,
+               ZEND_INIT_STATIC_METHOD_CALL_SPEC_UNUSED_CONST_HANDLER,
+               ZEND_INIT_STATIC_METHOD_CALL_SPEC_UNUSED_TMPVAR_HANDLER,
+               ZEND_INIT_STATIC_METHOD_CALL_SPEC_UNUSED_TMPVAR_HANDLER,
+               ZEND_INIT_STATIC_METHOD_CALL_SPEC_UNUSED_UNUSED_HANDLER,
+               ZEND_INIT_STATIC_METHOD_CALL_SPEC_UNUSED_CV_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
-               ZEND_SEND_REF_SPEC_VAR_HANDLER,
                ZEND_NULL_HANDLER,
-               ZEND_SEND_REF_SPEC_CV_HANDLER,
-               ZEND_NEW_SPEC_CONST_HANDLER,
                ZEND_NULL_HANDLER,
-               ZEND_NEW_SPEC_VAR_HANDLER,
-               ZEND_NEW_SPEC_UNUSED_HANDLER,
                ZEND_NULL_HANDLER,
-               ZEND_INIT_NS_FCALL_BY_NAME_SPEC_CONST_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
+               ZEND_ISSET_ISEMPTY_VAR_SPEC_CONST_UNUSED_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
-               ZEND_FREE_SPEC_TMPVAR_HANDLER,
-               ZEND_FREE_SPEC_TMPVAR_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
-               ZEND_INIT_ARRAY_SPEC_CONST_CONST_HANDLER,
-               ZEND_INIT_ARRAY_SPEC_CONST_TMPVAR_HANDLER,
-               ZEND_INIT_ARRAY_SPEC_CONST_TMPVAR_HANDLER,
-               ZEND_INIT_ARRAY_SPEC_CONST_UNUSED_HANDLER,
-               ZEND_INIT_ARRAY_SPEC_CONST_CV_HANDLER,
-               ZEND_INIT_ARRAY_SPEC_TMP_CONST_HANDLER,
-               ZEND_INIT_ARRAY_SPEC_TMP_TMPVAR_HANDLER,
-               ZEND_INIT_ARRAY_SPEC_TMP_TMPVAR_HANDLER,
-               ZEND_INIT_ARRAY_SPEC_TMP_UNUSED_HANDLER,
-               ZEND_INIT_ARRAY_SPEC_TMP_CV_HANDLER,
-               ZEND_INIT_ARRAY_SPEC_VAR_CONST_HANDLER,
-               ZEND_INIT_ARRAY_SPEC_VAR_TMPVAR_HANDLER,
-               ZEND_INIT_ARRAY_SPEC_VAR_TMPVAR_HANDLER,
-               ZEND_INIT_ARRAY_SPEC_VAR_UNUSED_HANDLER,
-               ZEND_INIT_ARRAY_SPEC_VAR_CV_HANDLER,
-               ZEND_INIT_ARRAY_SPEC_UNUSED_CONST_HANDLER,
-               ZEND_INIT_ARRAY_SPEC_UNUSED_TMPVAR_HANDLER,
-               ZEND_INIT_ARRAY_SPEC_UNUSED_TMPVAR_HANDLER,
-               ZEND_INIT_ARRAY_SPEC_UNUSED_UNUSED_HANDLER,
-               ZEND_INIT_ARRAY_SPEC_UNUSED_CV_HANDLER,
-               ZEND_INIT_ARRAY_SPEC_CV_CONST_HANDLER,
-               ZEND_INIT_ARRAY_SPEC_CV_TMPVAR_HANDLER,
-               ZEND_INIT_ARRAY_SPEC_CV_TMPVAR_HANDLER,
-               ZEND_INIT_ARRAY_SPEC_CV_UNUSED_HANDLER,
-               ZEND_INIT_ARRAY_SPEC_CV_CV_HANDLER,
-               ZEND_ADD_ARRAY_ELEMENT_SPEC_CONST_CONST_HANDLER,
-               ZEND_ADD_ARRAY_ELEMENT_SPEC_CONST_TMPVAR_HANDLER,
-               ZEND_ADD_ARRAY_ELEMENT_SPEC_CONST_TMPVAR_HANDLER,
-               ZEND_ADD_ARRAY_ELEMENT_SPEC_CONST_UNUSED_HANDLER,
-               ZEND_ADD_ARRAY_ELEMENT_SPEC_CONST_CV_HANDLER,
-               ZEND_ADD_ARRAY_ELEMENT_SPEC_TMP_CONST_HANDLER,
-               ZEND_ADD_ARRAY_ELEMENT_SPEC_TMP_TMPVAR_HANDLER,
-               ZEND_ADD_ARRAY_ELEMENT_SPEC_TMP_TMPVAR_HANDLER,
-               ZEND_ADD_ARRAY_ELEMENT_SPEC_TMP_UNUSED_HANDLER,
-               ZEND_ADD_ARRAY_ELEMENT_SPEC_TMP_CV_HANDLER,
-               ZEND_ADD_ARRAY_ELEMENT_SPEC_VAR_CONST_HANDLER,
-               ZEND_ADD_ARRAY_ELEMENT_SPEC_VAR_TMPVAR_HANDLER,
-               ZEND_ADD_ARRAY_ELEMENT_SPEC_VAR_TMPVAR_HANDLER,
-               ZEND_ADD_ARRAY_ELEMENT_SPEC_VAR_UNUSED_HANDLER,
-               ZEND_ADD_ARRAY_ELEMENT_SPEC_VAR_CV_HANDLER,
+               ZEND_ISSET_ISEMPTY_VAR_SPEC_TMPVAR_UNUSED_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
+               ZEND_ISSET_ISEMPTY_VAR_SPEC_TMPVAR_UNUSED_HANDLER,
                ZEND_NULL_HANDLER,
-               ZEND_ADD_ARRAY_ELEMENT_SPEC_CV_CONST_HANDLER,
-               ZEND_ADD_ARRAY_ELEMENT_SPEC_CV_TMPVAR_HANDLER,
-               ZEND_ADD_ARRAY_ELEMENT_SPEC_CV_TMPVAR_HANDLER,
-               ZEND_ADD_ARRAY_ELEMENT_SPEC_CV_UNUSED_HANDLER,
-               ZEND_ADD_ARRAY_ELEMENT_SPEC_CV_CV_HANDLER,
-               ZEND_INCLUDE_OR_EVAL_SPEC_CONST_HANDLER,
-               ZEND_INCLUDE_OR_EVAL_SPEC_TMPVAR_HANDLER,
-               ZEND_INCLUDE_OR_EVAL_SPEC_TMPVAR_HANDLER,
                ZEND_NULL_HANDLER,
-               ZEND_INCLUDE_OR_EVAL_SPEC_CV_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
-               ZEND_UNSET_VAR_SPEC_CONST_UNUSED_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
-               ZEND_UNSET_VAR_SPEC_TMPVAR_UNUSED_HANDLER,
+               ZEND_ISSET_ISEMPTY_VAR_SPEC_CV_UNUSED_HANDLER,
                ZEND_NULL_HANDLER,
+               ZEND_ISSET_ISEMPTY_DIM_OBJ_SPEC_CONST_CONST_HANDLER,
+               ZEND_ISSET_ISEMPTY_DIM_OBJ_SPEC_CONST_TMPVAR_HANDLER,
+               ZEND_ISSET_ISEMPTY_DIM_OBJ_SPEC_CONST_TMPVAR_HANDLER,
                ZEND_NULL_HANDLER,
+               ZEND_ISSET_ISEMPTY_DIM_OBJ_SPEC_CONST_CV_HANDLER,
+               ZEND_ISSET_ISEMPTY_DIM_OBJ_SPEC_TMPVAR_CONST_HANDLER,
+               ZEND_ISSET_ISEMPTY_DIM_OBJ_SPEC_TMPVAR_TMPVAR_HANDLER,
+               ZEND_ISSET_ISEMPTY_DIM_OBJ_SPEC_TMPVAR_TMPVAR_HANDLER,
                ZEND_NULL_HANDLER,
+               ZEND_ISSET_ISEMPTY_DIM_OBJ_SPEC_TMPVAR_CV_HANDLER,
+               ZEND_ISSET_ISEMPTY_DIM_OBJ_SPEC_TMPVAR_CONST_HANDLER,
+               ZEND_ISSET_ISEMPTY_DIM_OBJ_SPEC_TMPVAR_TMPVAR_HANDLER,
+               ZEND_ISSET_ISEMPTY_DIM_OBJ_SPEC_TMPVAR_TMPVAR_HANDLER,
                ZEND_NULL_HANDLER,
-               ZEND_UNSET_VAR_SPEC_TMPVAR_UNUSED_HANDLER,
+               ZEND_ISSET_ISEMPTY_DIM_OBJ_SPEC_TMPVAR_CV_HANDLER,
+               ZEND_ISSET_ISEMPTY_DIM_OBJ_SPEC_UNUSED_CONST_HANDLER,
+               ZEND_ISSET_ISEMPTY_DIM_OBJ_SPEC_UNUSED_TMPVAR_HANDLER,
+               ZEND_ISSET_ISEMPTY_DIM_OBJ_SPEC_UNUSED_TMPVAR_HANDLER,
                ZEND_NULL_HANDLER,
+               ZEND_ISSET_ISEMPTY_DIM_OBJ_SPEC_UNUSED_CV_HANDLER,
+               ZEND_ISSET_ISEMPTY_DIM_OBJ_SPEC_CV_CONST_HANDLER,
+               ZEND_ISSET_ISEMPTY_DIM_OBJ_SPEC_CV_TMPVAR_HANDLER,
+               ZEND_ISSET_ISEMPTY_DIM_OBJ_SPEC_CV_TMPVAR_HANDLER,
                ZEND_NULL_HANDLER,
+               ZEND_ISSET_ISEMPTY_DIM_OBJ_SPEC_CV_CV_HANDLER,
+               ZEND_SEND_VAL_EX_SPEC_CONST_HANDLER,
+               ZEND_SEND_VAL_EX_SPEC_CONST_QUICK_HANDLER,
+               ZEND_SEND_VAL_EX_SPEC_TMP_HANDLER,
+               ZEND_SEND_VAL_EX_SPEC_TMP_QUICK_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
@@ -55590,10 +57688,15 @@ void zend_init_opcodes_handlers(void)
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
-               ZEND_UNSET_VAR_SPEC_CV_UNUSED_HANDLER,
                ZEND_NULL_HANDLER,
+               ZEND_SEND_VAR_SPEC_VAR_HANDLER,
                ZEND_NULL_HANDLER,
+               ZEND_SEND_VAR_SPEC_CV_HANDLER,
+               ZEND_INIT_USER_CALL_SPEC_CONST_CONST_HANDLER,
+               ZEND_INIT_USER_CALL_SPEC_CONST_TMPVAR_HANDLER,
+               ZEND_INIT_USER_CALL_SPEC_CONST_TMPVAR_HANDLER,
                ZEND_NULL_HANDLER,
+               ZEND_INIT_USER_CALL_SPEC_CONST_CV_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
@@ -55602,21 +57705,9 @@ void zend_init_opcodes_handlers(void)
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
-               ZEND_UNSET_DIM_SPEC_VAR_CONST_HANDLER,
-               ZEND_UNSET_DIM_SPEC_VAR_TMPVAR_HANDLER,
-               ZEND_UNSET_DIM_SPEC_VAR_TMPVAR_HANDLER,
                ZEND_NULL_HANDLER,
-               ZEND_UNSET_DIM_SPEC_VAR_CV_HANDLER,
-               ZEND_UNSET_DIM_SPEC_UNUSED_CONST_HANDLER,
-               ZEND_UNSET_DIM_SPEC_UNUSED_TMPVAR_HANDLER,
-               ZEND_UNSET_DIM_SPEC_UNUSED_TMPVAR_HANDLER,
                ZEND_NULL_HANDLER,
-               ZEND_UNSET_DIM_SPEC_UNUSED_CV_HANDLER,
-               ZEND_UNSET_DIM_SPEC_CV_CONST_HANDLER,
-               ZEND_UNSET_DIM_SPEC_CV_TMPVAR_HANDLER,
-               ZEND_UNSET_DIM_SPEC_CV_TMPVAR_HANDLER,
                ZEND_NULL_HANDLER,
-               ZEND_UNSET_DIM_SPEC_CV_CV_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
@@ -55626,136 +57717,128 @@ void zend_init_opcodes_handlers(void)
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
+               ZEND_SEND_ARRAY_SPEC_HANDLER,
                ZEND_NULL_HANDLER,
-               ZEND_UNSET_OBJ_SPEC_VAR_CONST_HANDLER,
-               ZEND_UNSET_OBJ_SPEC_VAR_TMPVAR_HANDLER,
-               ZEND_UNSET_OBJ_SPEC_VAR_TMPVAR_HANDLER,
                ZEND_NULL_HANDLER,
-               ZEND_UNSET_OBJ_SPEC_VAR_CV_HANDLER,
-               ZEND_UNSET_OBJ_SPEC_UNUSED_CONST_HANDLER,
-               ZEND_UNSET_OBJ_SPEC_UNUSED_TMPVAR_HANDLER,
-               ZEND_UNSET_OBJ_SPEC_UNUSED_TMPVAR_HANDLER,
+               ZEND_SEND_USER_SPEC_VAR_HANDLER,
                ZEND_NULL_HANDLER,
-               ZEND_UNSET_OBJ_SPEC_UNUSED_CV_HANDLER,
-               ZEND_UNSET_OBJ_SPEC_CV_CONST_HANDLER,
-               ZEND_UNSET_OBJ_SPEC_CV_TMPVAR_HANDLER,
-               ZEND_UNSET_OBJ_SPEC_CV_TMPVAR_HANDLER,
+               ZEND_SEND_USER_SPEC_CV_HANDLER,
+               ZEND_STRLEN_SPEC_CONST_HANDLER,
+               ZEND_STRLEN_SPEC_TMPVAR_HANDLER,
+               ZEND_STRLEN_SPEC_TMPVAR_HANDLER,
                ZEND_NULL_HANDLER,
-               ZEND_UNSET_OBJ_SPEC_CV_CV_HANDLER,
-               ZEND_FE_RESET_R_SPEC_CONST_HANDLER,
-               ZEND_FE_RESET_R_SPEC_TMP_HANDLER,
-               ZEND_FE_RESET_R_SPEC_VAR_HANDLER,
+               ZEND_STRLEN_SPEC_CV_HANDLER,
+               ZEND_DEFINED_SPEC_CONST_HANDLER,
                ZEND_NULL_HANDLER,
-               ZEND_FE_RESET_R_SPEC_CV_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
-               ZEND_FE_FETCH_R_SPEC_VAR_HANDLER,
                ZEND_NULL_HANDLER,
+               ZEND_TYPE_CHECK_SPEC_CONST_HANDLER,
+               ZEND_TYPE_CHECK_SPEC_TMP_HANDLER,
+               ZEND_TYPE_CHECK_SPEC_VAR_HANDLER,
                ZEND_NULL_HANDLER,
-               ZEND_EXIT_SPEC_CONST_HANDLER,
-               ZEND_EXIT_SPEC_TMPVAR_HANDLER,
-               ZEND_EXIT_SPEC_TMPVAR_HANDLER,
-               ZEND_EXIT_SPEC_UNUSED_HANDLER,
-               ZEND_EXIT_SPEC_CV_HANDLER,
+               ZEND_TYPE_CHECK_SPEC_CV_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
-               ZEND_FETCH_R_SPEC_CONST_UNUSED_HANDLER,
+               ZEND_VERIFY_RETURN_TYPE_SPEC_CONST_UNUSED_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
-               ZEND_FETCH_R_SPEC_TMPVAR_UNUSED_HANDLER,
+               ZEND_VERIFY_RETURN_TYPE_SPEC_TMP_UNUSED_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
-               ZEND_FETCH_R_SPEC_TMPVAR_UNUSED_HANDLER,
+               ZEND_VERIFY_RETURN_TYPE_SPEC_VAR_UNUSED_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
+               ZEND_VERIFY_RETURN_TYPE_SPEC_UNUSED_UNUSED_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
+               ZEND_VERIFY_RETURN_TYPE_SPEC_CV_UNUSED_HANDLER,
                ZEND_NULL_HANDLER,
-               ZEND_FETCH_R_SPEC_CV_UNUSED_HANDLER,
+               ZEND_FE_RESET_RW_SPEC_CONST_HANDLER,
+               ZEND_FE_RESET_RW_SPEC_TMP_HANDLER,
+               ZEND_FE_RESET_RW_SPEC_VAR_HANDLER,
                ZEND_NULL_HANDLER,
-               ZEND_FETCH_DIM_R_SPEC_CONST_CONST_HANDLER,
-               ZEND_FETCH_DIM_R_SPEC_CONST_TMPVAR_HANDLER,
-               ZEND_FETCH_DIM_R_SPEC_CONST_TMPVAR_HANDLER,
+               ZEND_FE_RESET_RW_SPEC_CV_HANDLER,
                ZEND_NULL_HANDLER,
-               ZEND_FETCH_DIM_R_SPEC_CONST_CV_HANDLER,
-               ZEND_FETCH_DIM_R_SPEC_TMPVAR_CONST_HANDLER,
-               ZEND_FETCH_DIM_R_SPEC_TMPVAR_TMPVAR_HANDLER,
-               ZEND_FETCH_DIM_R_SPEC_TMPVAR_TMPVAR_HANDLER,
                ZEND_NULL_HANDLER,
-               ZEND_FETCH_DIM_R_SPEC_TMPVAR_CV_HANDLER,
-               ZEND_FETCH_DIM_R_SPEC_TMPVAR_CONST_HANDLER,
-               ZEND_FETCH_DIM_R_SPEC_TMPVAR_TMPVAR_HANDLER,
-               ZEND_FETCH_DIM_R_SPEC_TMPVAR_TMPVAR_HANDLER,
+               ZEND_FE_FETCH_RW_SPEC_VAR_HANDLER,
                ZEND_NULL_HANDLER,
-               ZEND_FETCH_DIM_R_SPEC_TMPVAR_CV_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
+               ZEND_FE_FREE_SPEC_TMPVAR_HANDLER,
+               ZEND_FE_FREE_SPEC_TMPVAR_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
+               ZEND_INIT_DYNAMIC_CALL_SPEC_CONST_HANDLER,
+               ZEND_INIT_DYNAMIC_CALL_SPEC_TMPVAR_HANDLER,
+               ZEND_INIT_DYNAMIC_CALL_SPEC_TMPVAR_HANDLER,
                ZEND_NULL_HANDLER,
-               ZEND_FETCH_DIM_R_SPEC_CV_CONST_HANDLER,
-               ZEND_FETCH_DIM_R_SPEC_CV_TMPVAR_HANDLER,
-               ZEND_FETCH_DIM_R_SPEC_CV_TMPVAR_HANDLER,
+               ZEND_INIT_DYNAMIC_CALL_SPEC_CV_HANDLER,
+               ZEND_DO_ICALL_SPEC_RETVAL_UNUSED_HANDLER,
+               ZEND_DO_ICALL_SPEC_RETVAL_USED_HANDLER,
+               ZEND_DO_UCALL_SPEC_RETVAL_UNUSED_HANDLER,
+               ZEND_DO_UCALL_SPEC_RETVAL_USED_HANDLER,
+               ZEND_DO_FCALL_BY_NAME_SPEC_RETVAL_UNUSED_HANDLER,
+               ZEND_DO_FCALL_BY_NAME_SPEC_RETVAL_USED_HANDLER,
                ZEND_NULL_HANDLER,
-               ZEND_FETCH_DIM_R_SPEC_CV_CV_HANDLER,
-               ZEND_FETCH_OBJ_R_SPEC_CONST_CONST_HANDLER,
-               ZEND_FETCH_OBJ_R_SPEC_CONST_TMPVAR_HANDLER,
-               ZEND_FETCH_OBJ_R_SPEC_CONST_TMPVAR_HANDLER,
                ZEND_NULL_HANDLER,
-               ZEND_FETCH_OBJ_R_SPEC_CONST_CV_HANDLER,
-               ZEND_FETCH_OBJ_R_SPEC_TMP_CONST_HANDLER,
-               ZEND_FETCH_OBJ_R_SPEC_TMP_TMPVAR_HANDLER,
-               ZEND_FETCH_OBJ_R_SPEC_TMP_TMPVAR_HANDLER,
                ZEND_NULL_HANDLER,
-               ZEND_FETCH_OBJ_R_SPEC_TMP_CV_HANDLER,
-               ZEND_FETCH_OBJ_R_SPEC_VAR_CONST_HANDLER,
-               ZEND_FETCH_OBJ_R_SPEC_VAR_TMPVAR_HANDLER,
-               ZEND_FETCH_OBJ_R_SPEC_VAR_TMPVAR_HANDLER,
                ZEND_NULL_HANDLER,
-               ZEND_FETCH_OBJ_R_SPEC_VAR_CV_HANDLER,
-               ZEND_FETCH_OBJ_R_SPEC_UNUSED_CONST_HANDLER,
-               ZEND_FETCH_OBJ_R_SPEC_UNUSED_TMPVAR_HANDLER,
-               ZEND_FETCH_OBJ_R_SPEC_UNUSED_TMPVAR_HANDLER,
                ZEND_NULL_HANDLER,
-               ZEND_FETCH_OBJ_R_SPEC_UNUSED_CV_HANDLER,
-               ZEND_FETCH_OBJ_R_SPEC_CV_CONST_HANDLER,
-               ZEND_FETCH_OBJ_R_SPEC_CV_TMPVAR_HANDLER,
-               ZEND_FETCH_OBJ_R_SPEC_CV_TMPVAR_HANDLER,
                ZEND_NULL_HANDLER,
-               ZEND_FETCH_OBJ_R_SPEC_CV_CV_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
-               ZEND_FETCH_W_SPEC_CONST_UNUSED_HANDLER,
                ZEND_NULL_HANDLER,
+               ZEND_PRE_INC_OBJ_SPEC_VAR_CONST_HANDLER,
+               ZEND_PRE_INC_OBJ_SPEC_VAR_TMPVAR_HANDLER,
+               ZEND_PRE_INC_OBJ_SPEC_VAR_TMPVAR_HANDLER,
                ZEND_NULL_HANDLER,
+               ZEND_PRE_INC_OBJ_SPEC_VAR_CV_HANDLER,
+               ZEND_PRE_INC_OBJ_SPEC_UNUSED_CONST_HANDLER,
+               ZEND_PRE_INC_OBJ_SPEC_UNUSED_TMPVAR_HANDLER,
+               ZEND_PRE_INC_OBJ_SPEC_UNUSED_TMPVAR_HANDLER,
                ZEND_NULL_HANDLER,
+               ZEND_PRE_INC_OBJ_SPEC_UNUSED_CV_HANDLER,
+               ZEND_PRE_INC_OBJ_SPEC_CV_CONST_HANDLER,
+               ZEND_PRE_INC_OBJ_SPEC_CV_TMPVAR_HANDLER,
+               ZEND_PRE_INC_OBJ_SPEC_CV_TMPVAR_HANDLER,
                ZEND_NULL_HANDLER,
-               ZEND_FETCH_W_SPEC_TMPVAR_UNUSED_HANDLER,
+               ZEND_PRE_INC_OBJ_SPEC_CV_CV_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
-               ZEND_FETCH_W_SPEC_TMPVAR_UNUSED_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
+               ZEND_PRE_DEC_OBJ_SPEC_VAR_CONST_HANDLER,
+               ZEND_PRE_DEC_OBJ_SPEC_VAR_TMPVAR_HANDLER,
+               ZEND_PRE_DEC_OBJ_SPEC_VAR_TMPVAR_HANDLER,
                ZEND_NULL_HANDLER,
+               ZEND_PRE_DEC_OBJ_SPEC_VAR_CV_HANDLER,
+               ZEND_PRE_DEC_OBJ_SPEC_UNUSED_CONST_HANDLER,
+               ZEND_PRE_DEC_OBJ_SPEC_UNUSED_TMPVAR_HANDLER,
+               ZEND_PRE_DEC_OBJ_SPEC_UNUSED_TMPVAR_HANDLER,
                ZEND_NULL_HANDLER,
+               ZEND_PRE_DEC_OBJ_SPEC_UNUSED_CV_HANDLER,
+               ZEND_PRE_DEC_OBJ_SPEC_CV_CONST_HANDLER,
+               ZEND_PRE_DEC_OBJ_SPEC_CV_TMPVAR_HANDLER,
+               ZEND_PRE_DEC_OBJ_SPEC_CV_TMPVAR_HANDLER,
                ZEND_NULL_HANDLER,
-               ZEND_FETCH_W_SPEC_CV_UNUSED_HANDLER,
+               ZEND_PRE_DEC_OBJ_SPEC_CV_CV_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
@@ -55766,22 +57849,24 @@ void zend_init_opcodes_handlers(void)
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
+               ZEND_POST_INC_OBJ_SPEC_VAR_CONST_HANDLER,
+               ZEND_POST_INC_OBJ_SPEC_VAR_TMPVAR_HANDLER,
+               ZEND_POST_INC_OBJ_SPEC_VAR_TMPVAR_HANDLER,
                ZEND_NULL_HANDLER,
-               ZEND_FETCH_DIM_W_SPEC_VAR_CONST_HANDLER,
-               ZEND_FETCH_DIM_W_SPEC_VAR_TMPVAR_HANDLER,
-               ZEND_FETCH_DIM_W_SPEC_VAR_TMPVAR_HANDLER,
-               ZEND_FETCH_DIM_W_SPEC_VAR_UNUSED_HANDLER,
-               ZEND_FETCH_DIM_W_SPEC_VAR_CV_HANDLER,
+               ZEND_POST_INC_OBJ_SPEC_VAR_CV_HANDLER,
+               ZEND_POST_INC_OBJ_SPEC_UNUSED_CONST_HANDLER,
+               ZEND_POST_INC_OBJ_SPEC_UNUSED_TMPVAR_HANDLER,
+               ZEND_POST_INC_OBJ_SPEC_UNUSED_TMPVAR_HANDLER,
                ZEND_NULL_HANDLER,
+               ZEND_POST_INC_OBJ_SPEC_UNUSED_CV_HANDLER,
+               ZEND_POST_INC_OBJ_SPEC_CV_CONST_HANDLER,
+               ZEND_POST_INC_OBJ_SPEC_CV_TMPVAR_HANDLER,
+               ZEND_POST_INC_OBJ_SPEC_CV_TMPVAR_HANDLER,
                ZEND_NULL_HANDLER,
+               ZEND_POST_INC_OBJ_SPEC_CV_CV_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
-               ZEND_FETCH_DIM_W_SPEC_CV_CONST_HANDLER,
-               ZEND_FETCH_DIM_W_SPEC_CV_TMPVAR_HANDLER,
-               ZEND_FETCH_DIM_W_SPEC_CV_TMPVAR_HANDLER,
-               ZEND_FETCH_DIM_W_SPEC_CV_UNUSED_HANDLER,
-               ZEND_FETCH_DIM_W_SPEC_CV_CV_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
@@ -55789,38 +57874,35 @@ void zend_init_opcodes_handlers(void)
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
+               ZEND_POST_DEC_OBJ_SPEC_VAR_CONST_HANDLER,
+               ZEND_POST_DEC_OBJ_SPEC_VAR_TMPVAR_HANDLER,
+               ZEND_POST_DEC_OBJ_SPEC_VAR_TMPVAR_HANDLER,
                ZEND_NULL_HANDLER,
+               ZEND_POST_DEC_OBJ_SPEC_VAR_CV_HANDLER,
+               ZEND_POST_DEC_OBJ_SPEC_UNUSED_CONST_HANDLER,
+               ZEND_POST_DEC_OBJ_SPEC_UNUSED_TMPVAR_HANDLER,
+               ZEND_POST_DEC_OBJ_SPEC_UNUSED_TMPVAR_HANDLER,
                ZEND_NULL_HANDLER,
+               ZEND_POST_DEC_OBJ_SPEC_UNUSED_CV_HANDLER,
+               ZEND_POST_DEC_OBJ_SPEC_CV_CONST_HANDLER,
+               ZEND_POST_DEC_OBJ_SPEC_CV_TMPVAR_HANDLER,
+               ZEND_POST_DEC_OBJ_SPEC_CV_TMPVAR_HANDLER,
                ZEND_NULL_HANDLER,
-               ZEND_FETCH_OBJ_W_SPEC_VAR_CONST_HANDLER,
-               ZEND_FETCH_OBJ_W_SPEC_VAR_TMPVAR_HANDLER,
-               ZEND_FETCH_OBJ_W_SPEC_VAR_TMPVAR_HANDLER,
+               ZEND_POST_DEC_OBJ_SPEC_CV_CV_HANDLER,
                ZEND_NULL_HANDLER,
-               ZEND_FETCH_OBJ_W_SPEC_VAR_CV_HANDLER,
-               ZEND_FETCH_OBJ_W_SPEC_UNUSED_CONST_HANDLER,
-               ZEND_FETCH_OBJ_W_SPEC_UNUSED_TMPVAR_HANDLER,
-               ZEND_FETCH_OBJ_W_SPEC_UNUSED_TMPVAR_HANDLER,
                ZEND_NULL_HANDLER,
-               ZEND_FETCH_OBJ_W_SPEC_UNUSED_CV_HANDLER,
-               ZEND_FETCH_OBJ_W_SPEC_CV_CONST_HANDLER,
-               ZEND_FETCH_OBJ_W_SPEC_CV_TMPVAR_HANDLER,
-               ZEND_FETCH_OBJ_W_SPEC_CV_TMPVAR_HANDLER,
                ZEND_NULL_HANDLER,
-               ZEND_FETCH_OBJ_W_SPEC_CV_CV_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
-               ZEND_FETCH_RW_SPEC_CONST_UNUSED_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
-               ZEND_FETCH_RW_SPEC_TMPVAR_UNUSED_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
-               ZEND_FETCH_RW_SPEC_TMPVAR_UNUSED_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
@@ -55830,7 +57912,6 @@ void zend_init_opcodes_handlers(void)
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
-               ZEND_FETCH_RW_SPEC_CV_UNUSED_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
@@ -55842,21 +57923,11 @@ void zend_init_opcodes_handlers(void)
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
-               ZEND_FETCH_DIM_RW_SPEC_VAR_CONST_HANDLER,
-               ZEND_FETCH_DIM_RW_SPEC_VAR_TMPVAR_HANDLER,
-               ZEND_FETCH_DIM_RW_SPEC_VAR_TMPVAR_HANDLER,
-               ZEND_FETCH_DIM_RW_SPEC_VAR_UNUSED_HANDLER,
-               ZEND_FETCH_DIM_RW_SPEC_VAR_CV_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
-               ZEND_FETCH_DIM_RW_SPEC_CV_CONST_HANDLER,
-               ZEND_FETCH_DIM_RW_SPEC_CV_TMPVAR_HANDLER,
-               ZEND_FETCH_DIM_RW_SPEC_CV_TMPVAR_HANDLER,
-               ZEND_FETCH_DIM_RW_SPEC_CV_UNUSED_HANDLER,
-               ZEND_FETCH_DIM_RW_SPEC_CV_CV_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
@@ -55867,111 +57938,121 @@ void zend_init_opcodes_handlers(void)
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
-               ZEND_FETCH_OBJ_RW_SPEC_VAR_CONST_HANDLER,
-               ZEND_FETCH_OBJ_RW_SPEC_VAR_TMPVAR_HANDLER,
-               ZEND_FETCH_OBJ_RW_SPEC_VAR_TMPVAR_HANDLER,
                ZEND_NULL_HANDLER,
-               ZEND_FETCH_OBJ_RW_SPEC_VAR_CV_HANDLER,
-               ZEND_FETCH_OBJ_RW_SPEC_UNUSED_CONST_HANDLER,
-               ZEND_FETCH_OBJ_RW_SPEC_UNUSED_TMPVAR_HANDLER,
-               ZEND_FETCH_OBJ_RW_SPEC_UNUSED_TMPVAR_HANDLER,
+               ZEND_ASSIGN_OBJ_SPEC_VAR_CONST_OP_DATA_CONST_HANDLER,
+               ZEND_ASSIGN_OBJ_SPEC_VAR_CONST_OP_DATA_TMP_HANDLER,
+               ZEND_ASSIGN_OBJ_SPEC_VAR_CONST_OP_DATA_VAR_HANDLER,
                ZEND_NULL_HANDLER,
-               ZEND_FETCH_OBJ_RW_SPEC_UNUSED_CV_HANDLER,
-               ZEND_FETCH_OBJ_RW_SPEC_CV_CONST_HANDLER,
-               ZEND_FETCH_OBJ_RW_SPEC_CV_TMPVAR_HANDLER,
-               ZEND_FETCH_OBJ_RW_SPEC_CV_TMPVAR_HANDLER,
+               ZEND_ASSIGN_OBJ_SPEC_VAR_CONST_OP_DATA_CV_HANDLER,
+               ZEND_ASSIGN_OBJ_SPEC_VAR_TMPVAR_OP_DATA_CONST_HANDLER,
+               ZEND_ASSIGN_OBJ_SPEC_VAR_TMPVAR_OP_DATA_TMP_HANDLER,
+               ZEND_ASSIGN_OBJ_SPEC_VAR_TMPVAR_OP_DATA_VAR_HANDLER,
                ZEND_NULL_HANDLER,
-               ZEND_FETCH_OBJ_RW_SPEC_CV_CV_HANDLER,
+               ZEND_ASSIGN_OBJ_SPEC_VAR_TMPVAR_OP_DATA_CV_HANDLER,
+               ZEND_ASSIGN_OBJ_SPEC_VAR_TMPVAR_OP_DATA_CONST_HANDLER,
+               ZEND_ASSIGN_OBJ_SPEC_VAR_TMPVAR_OP_DATA_TMP_HANDLER,
+               ZEND_ASSIGN_OBJ_SPEC_VAR_TMPVAR_OP_DATA_VAR_HANDLER,
                ZEND_NULL_HANDLER,
+               ZEND_ASSIGN_OBJ_SPEC_VAR_TMPVAR_OP_DATA_CV_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
-               ZEND_FETCH_IS_SPEC_CONST_UNUSED_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
+               ZEND_ASSIGN_OBJ_SPEC_VAR_CV_OP_DATA_CONST_HANDLER,
+               ZEND_ASSIGN_OBJ_SPEC_VAR_CV_OP_DATA_TMP_HANDLER,
+               ZEND_ASSIGN_OBJ_SPEC_VAR_CV_OP_DATA_VAR_HANDLER,
                ZEND_NULL_HANDLER,
-               ZEND_FETCH_IS_SPEC_TMPVAR_UNUSED_HANDLER,
+               ZEND_ASSIGN_OBJ_SPEC_VAR_CV_OP_DATA_CV_HANDLER,
+               ZEND_ASSIGN_OBJ_SPEC_UNUSED_CONST_OP_DATA_CONST_HANDLER,
+               ZEND_ASSIGN_OBJ_SPEC_UNUSED_CONST_OP_DATA_TMP_HANDLER,
+               ZEND_ASSIGN_OBJ_SPEC_UNUSED_CONST_OP_DATA_VAR_HANDLER,
                ZEND_NULL_HANDLER,
+               ZEND_ASSIGN_OBJ_SPEC_UNUSED_CONST_OP_DATA_CV_HANDLER,
+               ZEND_ASSIGN_OBJ_SPEC_UNUSED_TMPVAR_OP_DATA_CONST_HANDLER,
+               ZEND_ASSIGN_OBJ_SPEC_UNUSED_TMPVAR_OP_DATA_TMP_HANDLER,
+               ZEND_ASSIGN_OBJ_SPEC_UNUSED_TMPVAR_OP_DATA_VAR_HANDLER,
                ZEND_NULL_HANDLER,
+               ZEND_ASSIGN_OBJ_SPEC_UNUSED_TMPVAR_OP_DATA_CV_HANDLER,
+               ZEND_ASSIGN_OBJ_SPEC_UNUSED_TMPVAR_OP_DATA_CONST_HANDLER,
+               ZEND_ASSIGN_OBJ_SPEC_UNUSED_TMPVAR_OP_DATA_TMP_HANDLER,
+               ZEND_ASSIGN_OBJ_SPEC_UNUSED_TMPVAR_OP_DATA_VAR_HANDLER,
                ZEND_NULL_HANDLER,
+               ZEND_ASSIGN_OBJ_SPEC_UNUSED_TMPVAR_OP_DATA_CV_HANDLER,
                ZEND_NULL_HANDLER,
-               ZEND_FETCH_IS_SPEC_TMPVAR_UNUSED_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
+               ZEND_ASSIGN_OBJ_SPEC_UNUSED_CV_OP_DATA_CONST_HANDLER,
+               ZEND_ASSIGN_OBJ_SPEC_UNUSED_CV_OP_DATA_TMP_HANDLER,
+               ZEND_ASSIGN_OBJ_SPEC_UNUSED_CV_OP_DATA_VAR_HANDLER,
                ZEND_NULL_HANDLER,
+               ZEND_ASSIGN_OBJ_SPEC_UNUSED_CV_OP_DATA_CV_HANDLER,
+               ZEND_ASSIGN_OBJ_SPEC_CV_CONST_OP_DATA_CONST_HANDLER,
+               ZEND_ASSIGN_OBJ_SPEC_CV_CONST_OP_DATA_TMP_HANDLER,
+               ZEND_ASSIGN_OBJ_SPEC_CV_CONST_OP_DATA_VAR_HANDLER,
                ZEND_NULL_HANDLER,
+               ZEND_ASSIGN_OBJ_SPEC_CV_CONST_OP_DATA_CV_HANDLER,
+               ZEND_ASSIGN_OBJ_SPEC_CV_TMPVAR_OP_DATA_CONST_HANDLER,
+               ZEND_ASSIGN_OBJ_SPEC_CV_TMPVAR_OP_DATA_TMP_HANDLER,
+               ZEND_ASSIGN_OBJ_SPEC_CV_TMPVAR_OP_DATA_VAR_HANDLER,
                ZEND_NULL_HANDLER,
+               ZEND_ASSIGN_OBJ_SPEC_CV_TMPVAR_OP_DATA_CV_HANDLER,
+               ZEND_ASSIGN_OBJ_SPEC_CV_TMPVAR_OP_DATA_CONST_HANDLER,
+               ZEND_ASSIGN_OBJ_SPEC_CV_TMPVAR_OP_DATA_TMP_HANDLER,
+               ZEND_ASSIGN_OBJ_SPEC_CV_TMPVAR_OP_DATA_VAR_HANDLER,
                ZEND_NULL_HANDLER,
+               ZEND_ASSIGN_OBJ_SPEC_CV_TMPVAR_OP_DATA_CV_HANDLER,
                ZEND_NULL_HANDLER,
-               ZEND_FETCH_IS_SPEC_CV_UNUSED_HANDLER,
                ZEND_NULL_HANDLER,
-               ZEND_FETCH_DIM_IS_SPEC_CONST_CONST_HANDLER,
-               ZEND_FETCH_DIM_IS_SPEC_CONST_TMPVAR_HANDLER,
-               ZEND_FETCH_DIM_IS_SPEC_CONST_TMPVAR_HANDLER,
                ZEND_NULL_HANDLER,
-               ZEND_FETCH_DIM_IS_SPEC_CONST_CV_HANDLER,
-               ZEND_FETCH_DIM_IS_SPEC_TMPVAR_CONST_HANDLER,
-               ZEND_FETCH_DIM_IS_SPEC_TMPVAR_TMPVAR_HANDLER,
-               ZEND_FETCH_DIM_IS_SPEC_TMPVAR_TMPVAR_HANDLER,
                ZEND_NULL_HANDLER,
-               ZEND_FETCH_DIM_IS_SPEC_TMPVAR_CV_HANDLER,
-               ZEND_FETCH_DIM_IS_SPEC_TMPVAR_CONST_HANDLER,
-               ZEND_FETCH_DIM_IS_SPEC_TMPVAR_TMPVAR_HANDLER,
-               ZEND_FETCH_DIM_IS_SPEC_TMPVAR_TMPVAR_HANDLER,
                ZEND_NULL_HANDLER,
-               ZEND_FETCH_DIM_IS_SPEC_TMPVAR_CV_HANDLER,
+               ZEND_ASSIGN_OBJ_SPEC_CV_CV_OP_DATA_CONST_HANDLER,
+               ZEND_ASSIGN_OBJ_SPEC_CV_CV_OP_DATA_TMP_HANDLER,
+               ZEND_ASSIGN_OBJ_SPEC_CV_CV_OP_DATA_VAR_HANDLER,
                ZEND_NULL_HANDLER,
+               ZEND_ASSIGN_OBJ_SPEC_CV_CV_OP_DATA_CV_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
-               ZEND_FETCH_DIM_IS_SPEC_CV_CONST_HANDLER,
-               ZEND_FETCH_DIM_IS_SPEC_CV_TMPVAR_HANDLER,
-               ZEND_FETCH_DIM_IS_SPEC_CV_TMPVAR_HANDLER,
                ZEND_NULL_HANDLER,
-               ZEND_FETCH_DIM_IS_SPEC_CV_CV_HANDLER,
-               ZEND_FETCH_OBJ_IS_SPEC_CONST_CONST_HANDLER,
-               ZEND_FETCH_OBJ_IS_SPEC_CONST_TMPVAR_HANDLER,
-               ZEND_FETCH_OBJ_IS_SPEC_CONST_TMPVAR_HANDLER,
                ZEND_NULL_HANDLER,
-               ZEND_FETCH_OBJ_IS_SPEC_CONST_CV_HANDLER,
-               ZEND_FETCH_OBJ_IS_SPEC_TMPVAR_CONST_HANDLER,
-               ZEND_FETCH_OBJ_IS_SPEC_TMPVAR_TMPVAR_HANDLER,
-               ZEND_FETCH_OBJ_IS_SPEC_TMPVAR_TMPVAR_HANDLER,
+               ZEND_INSTANCEOF_SPEC_TMPVAR_CONST_HANDLER,
                ZEND_NULL_HANDLER,
-               ZEND_FETCH_OBJ_IS_SPEC_TMPVAR_CV_HANDLER,
-               ZEND_FETCH_OBJ_IS_SPEC_TMPVAR_CONST_HANDLER,
-               ZEND_FETCH_OBJ_IS_SPEC_TMPVAR_TMPVAR_HANDLER,
-               ZEND_FETCH_OBJ_IS_SPEC_TMPVAR_TMPVAR_HANDLER,
+               ZEND_INSTANCEOF_SPEC_TMPVAR_VAR_HANDLER,
+               ZEND_INSTANCEOF_SPEC_TMPVAR_UNUSED_HANDLER,
                ZEND_NULL_HANDLER,
-               ZEND_FETCH_OBJ_IS_SPEC_TMPVAR_CV_HANDLER,
-               ZEND_FETCH_OBJ_IS_SPEC_UNUSED_CONST_HANDLER,
-               ZEND_FETCH_OBJ_IS_SPEC_UNUSED_TMPVAR_HANDLER,
-               ZEND_FETCH_OBJ_IS_SPEC_UNUSED_TMPVAR_HANDLER,
+               ZEND_INSTANCEOF_SPEC_TMPVAR_CONST_HANDLER,
                ZEND_NULL_HANDLER,
-               ZEND_FETCH_OBJ_IS_SPEC_UNUSED_CV_HANDLER,
-               ZEND_FETCH_OBJ_IS_SPEC_CV_CONST_HANDLER,
-               ZEND_FETCH_OBJ_IS_SPEC_CV_TMPVAR_HANDLER,
-               ZEND_FETCH_OBJ_IS_SPEC_CV_TMPVAR_HANDLER,
+               ZEND_INSTANCEOF_SPEC_TMPVAR_VAR_HANDLER,
+               ZEND_INSTANCEOF_SPEC_TMPVAR_UNUSED_HANDLER,
                ZEND_NULL_HANDLER,
-               ZEND_FETCH_OBJ_IS_SPEC_CV_CV_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
-               ZEND_FETCH_FUNC_ARG_SPEC_CONST_UNUSED_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
+               ZEND_INSTANCEOF_SPEC_CV_CONST_HANDLER,
                ZEND_NULL_HANDLER,
+               ZEND_INSTANCEOF_SPEC_CV_VAR_HANDLER,
+               ZEND_INSTANCEOF_SPEC_CV_UNUSED_HANDLER,
                ZEND_NULL_HANDLER,
-               ZEND_FETCH_FUNC_ARG_SPEC_TMPVAR_UNUSED_HANDLER,
+               ZEND_DECLARE_CLASS_SPEC_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
+               ZEND_DECLARE_INHERITED_CLASS_SPEC_VAR_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
-               ZEND_FETCH_FUNC_ARG_SPEC_TMPVAR_UNUSED_HANDLER,
+               ZEND_DECLARE_FUNCTION_SPEC_HANDLER,
+               ZEND_YIELD_FROM_SPEC_CONST_HANDLER,
+               ZEND_YIELD_FROM_SPEC_TMP_HANDLER,
+               ZEND_YIELD_FROM_SPEC_VAR_HANDLER,
                ZEND_NULL_HANDLER,
+               ZEND_YIELD_FROM_SPEC_CV_HANDLER,
+               ZEND_DECLARE_CONST_SPEC_CONST_CONST_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
@@ -55980,74 +58061,33 @@ void zend_init_opcodes_handlers(void)
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
-               ZEND_FETCH_FUNC_ARG_SPEC_CV_UNUSED_HANDLER,
                ZEND_NULL_HANDLER,
-               ZEND_FETCH_DIM_FUNC_ARG_SPEC_CONST_CONST_HANDLER,
-               ZEND_FETCH_DIM_FUNC_ARG_SPEC_CONST_TMPVAR_HANDLER,
-               ZEND_FETCH_DIM_FUNC_ARG_SPEC_CONST_TMPVAR_HANDLER,
-               ZEND_FETCH_DIM_FUNC_ARG_SPEC_CONST_UNUSED_HANDLER,
-               ZEND_FETCH_DIM_FUNC_ARG_SPEC_CONST_CV_HANDLER,
-               ZEND_FETCH_DIM_FUNC_ARG_SPEC_TMP_CONST_HANDLER,
-               ZEND_FETCH_DIM_FUNC_ARG_SPEC_TMP_TMPVAR_HANDLER,
-               ZEND_FETCH_DIM_FUNC_ARG_SPEC_TMP_TMPVAR_HANDLER,
-               ZEND_FETCH_DIM_FUNC_ARG_SPEC_TMP_UNUSED_HANDLER,
-               ZEND_FETCH_DIM_FUNC_ARG_SPEC_TMP_CV_HANDLER,
-               ZEND_FETCH_DIM_FUNC_ARG_SPEC_VAR_CONST_HANDLER,
-               ZEND_FETCH_DIM_FUNC_ARG_SPEC_VAR_TMPVAR_HANDLER,
-               ZEND_FETCH_DIM_FUNC_ARG_SPEC_VAR_TMPVAR_HANDLER,
-               ZEND_FETCH_DIM_FUNC_ARG_SPEC_VAR_UNUSED_HANDLER,
-               ZEND_FETCH_DIM_FUNC_ARG_SPEC_VAR_CV_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
-               ZEND_FETCH_DIM_FUNC_ARG_SPEC_CV_CONST_HANDLER,
-               ZEND_FETCH_DIM_FUNC_ARG_SPEC_CV_TMPVAR_HANDLER,
-               ZEND_FETCH_DIM_FUNC_ARG_SPEC_CV_TMPVAR_HANDLER,
-               ZEND_FETCH_DIM_FUNC_ARG_SPEC_CV_UNUSED_HANDLER,
-               ZEND_FETCH_DIM_FUNC_ARG_SPEC_CV_CV_HANDLER,
-               ZEND_FETCH_OBJ_FUNC_ARG_SPEC_CONST_CONST_HANDLER,
-               ZEND_FETCH_OBJ_FUNC_ARG_SPEC_CONST_TMPVAR_HANDLER,
-               ZEND_FETCH_OBJ_FUNC_ARG_SPEC_CONST_TMPVAR_HANDLER,
                ZEND_NULL_HANDLER,
-               ZEND_FETCH_OBJ_FUNC_ARG_SPEC_CONST_CV_HANDLER,
-               ZEND_FETCH_OBJ_FUNC_ARG_SPEC_TMP_CONST_HANDLER,
-               ZEND_FETCH_OBJ_FUNC_ARG_SPEC_TMP_TMPVAR_HANDLER,
-               ZEND_FETCH_OBJ_FUNC_ARG_SPEC_TMP_TMPVAR_HANDLER,
                ZEND_NULL_HANDLER,
-               ZEND_FETCH_OBJ_FUNC_ARG_SPEC_TMP_CV_HANDLER,
-               ZEND_FETCH_OBJ_FUNC_ARG_SPEC_VAR_CONST_HANDLER,
-               ZEND_FETCH_OBJ_FUNC_ARG_SPEC_VAR_TMPVAR_HANDLER,
-               ZEND_FETCH_OBJ_FUNC_ARG_SPEC_VAR_TMPVAR_HANDLER,
                ZEND_NULL_HANDLER,
-               ZEND_FETCH_OBJ_FUNC_ARG_SPEC_VAR_CV_HANDLER,
-               ZEND_FETCH_OBJ_FUNC_ARG_SPEC_UNUSED_CONST_HANDLER,
-               ZEND_FETCH_OBJ_FUNC_ARG_SPEC_UNUSED_TMPVAR_HANDLER,
-               ZEND_FETCH_OBJ_FUNC_ARG_SPEC_UNUSED_TMPVAR_HANDLER,
                ZEND_NULL_HANDLER,
-               ZEND_FETCH_OBJ_FUNC_ARG_SPEC_UNUSED_CV_HANDLER,
-               ZEND_FETCH_OBJ_FUNC_ARG_SPEC_CV_CONST_HANDLER,
-               ZEND_FETCH_OBJ_FUNC_ARG_SPEC_CV_TMPVAR_HANDLER,
-               ZEND_FETCH_OBJ_FUNC_ARG_SPEC_CV_TMPVAR_HANDLER,
                ZEND_NULL_HANDLER,
-               ZEND_FETCH_OBJ_FUNC_ARG_SPEC_CV_CV_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
-               ZEND_FETCH_UNSET_SPEC_CONST_UNUSED_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
+               ZEND_ADD_INTERFACE_SPEC_CONST_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
-               ZEND_FETCH_UNSET_SPEC_TMPVAR_UNUSED_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
-               ZEND_FETCH_UNSET_SPEC_TMPVAR_UNUSED_HANDLER,
+               ZEND_DECLARE_INHERITED_CLASS_DELAYED_SPEC_VAR_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
+               ZEND_VERIFY_ABSTRACT_CLASS_SPEC_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
@@ -56055,7 +58095,6 @@ void zend_init_opcodes_handlers(void)
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
-               ZEND_FETCH_UNSET_SPEC_CV_UNUSED_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
@@ -56067,21 +58106,13 @@ void zend_init_opcodes_handlers(void)
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
-               ZEND_FETCH_DIM_UNSET_SPEC_VAR_CONST_HANDLER,
-               ZEND_FETCH_DIM_UNSET_SPEC_VAR_TMPVAR_HANDLER,
-               ZEND_FETCH_DIM_UNSET_SPEC_VAR_TMPVAR_HANDLER,
                ZEND_NULL_HANDLER,
-               ZEND_FETCH_DIM_UNSET_SPEC_VAR_CV_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
-               ZEND_FETCH_DIM_UNSET_SPEC_CV_CONST_HANDLER,
-               ZEND_FETCH_DIM_UNSET_SPEC_CV_TMPVAR_HANDLER,
-               ZEND_FETCH_DIM_UNSET_SPEC_CV_TMPVAR_HANDLER,
                ZEND_NULL_HANDLER,
-               ZEND_FETCH_DIM_UNSET_SPEC_CV_CV_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
@@ -56092,42 +58123,53 @@ void zend_init_opcodes_handlers(void)
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
-               ZEND_FETCH_OBJ_UNSET_SPEC_VAR_CONST_HANDLER,
-               ZEND_FETCH_OBJ_UNSET_SPEC_VAR_TMPVAR_HANDLER,
-               ZEND_FETCH_OBJ_UNSET_SPEC_VAR_TMPVAR_HANDLER,
                ZEND_NULL_HANDLER,
-               ZEND_FETCH_OBJ_UNSET_SPEC_VAR_CV_HANDLER,
-               ZEND_FETCH_OBJ_UNSET_SPEC_UNUSED_CONST_HANDLER,
-               ZEND_FETCH_OBJ_UNSET_SPEC_UNUSED_TMPVAR_HANDLER,
-               ZEND_FETCH_OBJ_UNSET_SPEC_UNUSED_TMPVAR_HANDLER,
                ZEND_NULL_HANDLER,
-               ZEND_FETCH_OBJ_UNSET_SPEC_UNUSED_CV_HANDLER,
-               ZEND_FETCH_OBJ_UNSET_SPEC_CV_CONST_HANDLER,
-               ZEND_FETCH_OBJ_UNSET_SPEC_CV_TMPVAR_HANDLER,
-               ZEND_FETCH_OBJ_UNSET_SPEC_CV_TMPVAR_HANDLER,
                ZEND_NULL_HANDLER,
-               ZEND_FETCH_OBJ_UNSET_SPEC_CV_CV_HANDLER,
-               ZEND_FETCH_LIST_SPEC_CONST_CONST_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
-               ZEND_FETCH_LIST_SPEC_TMPVAR_CONST_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
-               ZEND_FETCH_LIST_SPEC_TMPVAR_CONST_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
+               ZEND_ASSIGN_DIM_SPEC_VAR_CONST_OP_DATA_CONST_HANDLER,
+               ZEND_ASSIGN_DIM_SPEC_VAR_CONST_OP_DATA_TMP_HANDLER,
+               ZEND_ASSIGN_DIM_SPEC_VAR_CONST_OP_DATA_VAR_HANDLER,
+               ZEND_NULL_HANDLER,
+               ZEND_ASSIGN_DIM_SPEC_VAR_CONST_OP_DATA_CV_HANDLER,
+               ZEND_ASSIGN_DIM_SPEC_VAR_TMPVAR_OP_DATA_CONST_HANDLER,
+               ZEND_ASSIGN_DIM_SPEC_VAR_TMPVAR_OP_DATA_TMP_HANDLER,
+               ZEND_ASSIGN_DIM_SPEC_VAR_TMPVAR_OP_DATA_VAR_HANDLER,
+               ZEND_NULL_HANDLER,
+               ZEND_ASSIGN_DIM_SPEC_VAR_TMPVAR_OP_DATA_CV_HANDLER,
+               ZEND_ASSIGN_DIM_SPEC_VAR_TMPVAR_OP_DATA_CONST_HANDLER,
+               ZEND_ASSIGN_DIM_SPEC_VAR_TMPVAR_OP_DATA_TMP_HANDLER,
+               ZEND_ASSIGN_DIM_SPEC_VAR_TMPVAR_OP_DATA_VAR_HANDLER,
+               ZEND_NULL_HANDLER,
+               ZEND_ASSIGN_DIM_SPEC_VAR_TMPVAR_OP_DATA_CV_HANDLER,
+               ZEND_ASSIGN_DIM_SPEC_VAR_UNUSED_OP_DATA_CONST_HANDLER,
+               ZEND_ASSIGN_DIM_SPEC_VAR_UNUSED_OP_DATA_TMP_HANDLER,
+               ZEND_ASSIGN_DIM_SPEC_VAR_UNUSED_OP_DATA_VAR_HANDLER,
+               ZEND_NULL_HANDLER,
+               ZEND_ASSIGN_DIM_SPEC_VAR_UNUSED_OP_DATA_CV_HANDLER,
+               ZEND_ASSIGN_DIM_SPEC_VAR_CV_OP_DATA_CONST_HANDLER,
+               ZEND_ASSIGN_DIM_SPEC_VAR_CV_OP_DATA_TMP_HANDLER,
+               ZEND_ASSIGN_DIM_SPEC_VAR_CV_OP_DATA_VAR_HANDLER,
+               ZEND_NULL_HANDLER,
+               ZEND_ASSIGN_DIM_SPEC_VAR_CV_OP_DATA_CV_HANDLER,
+               ZEND_NULL_HANDLER,
+               ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
-               ZEND_FETCH_LIST_SPEC_CV_CONST_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
@@ -56146,32 +58188,81 @@ void zend_init_opcodes_handlers(void)
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
+               ZEND_ASSIGN_DIM_SPEC_CV_CONST_OP_DATA_CONST_HANDLER,
+               ZEND_ASSIGN_DIM_SPEC_CV_CONST_OP_DATA_TMP_HANDLER,
+               ZEND_ASSIGN_DIM_SPEC_CV_CONST_OP_DATA_VAR_HANDLER,
                ZEND_NULL_HANDLER,
-               ZEND_FETCH_CONSTANT_SPEC_UNUSED_CONST_HANDLER,
+               ZEND_ASSIGN_DIM_SPEC_CV_CONST_OP_DATA_CV_HANDLER,
+               ZEND_ASSIGN_DIM_SPEC_CV_TMPVAR_OP_DATA_CONST_HANDLER,
+               ZEND_ASSIGN_DIM_SPEC_CV_TMPVAR_OP_DATA_TMP_HANDLER,
+               ZEND_ASSIGN_DIM_SPEC_CV_TMPVAR_OP_DATA_VAR_HANDLER,
+               ZEND_NULL_HANDLER,
+               ZEND_ASSIGN_DIM_SPEC_CV_TMPVAR_OP_DATA_CV_HANDLER,
+               ZEND_ASSIGN_DIM_SPEC_CV_TMPVAR_OP_DATA_CONST_HANDLER,
+               ZEND_ASSIGN_DIM_SPEC_CV_TMPVAR_OP_DATA_TMP_HANDLER,
+               ZEND_ASSIGN_DIM_SPEC_CV_TMPVAR_OP_DATA_VAR_HANDLER,
+               ZEND_NULL_HANDLER,
+               ZEND_ASSIGN_DIM_SPEC_CV_TMPVAR_OP_DATA_CV_HANDLER,
+               ZEND_ASSIGN_DIM_SPEC_CV_UNUSED_OP_DATA_CONST_HANDLER,
+               ZEND_ASSIGN_DIM_SPEC_CV_UNUSED_OP_DATA_TMP_HANDLER,
+               ZEND_ASSIGN_DIM_SPEC_CV_UNUSED_OP_DATA_VAR_HANDLER,
+               ZEND_NULL_HANDLER,
+               ZEND_ASSIGN_DIM_SPEC_CV_UNUSED_OP_DATA_CV_HANDLER,
+               ZEND_ASSIGN_DIM_SPEC_CV_CV_OP_DATA_CONST_HANDLER,
+               ZEND_ASSIGN_DIM_SPEC_CV_CV_OP_DATA_TMP_HANDLER,
+               ZEND_ASSIGN_DIM_SPEC_CV_CV_OP_DATA_VAR_HANDLER,
+               ZEND_NULL_HANDLER,
+               ZEND_ASSIGN_DIM_SPEC_CV_CV_OP_DATA_CV_HANDLER,
+               ZEND_ISSET_ISEMPTY_PROP_OBJ_SPEC_CONST_CONST_HANDLER,
+               ZEND_ISSET_ISEMPTY_PROP_OBJ_SPEC_CONST_TMPVAR_HANDLER,
+               ZEND_ISSET_ISEMPTY_PROP_OBJ_SPEC_CONST_TMPVAR_HANDLER,
+               ZEND_NULL_HANDLER,
+               ZEND_ISSET_ISEMPTY_PROP_OBJ_SPEC_CONST_CV_HANDLER,
+               ZEND_ISSET_ISEMPTY_PROP_OBJ_SPEC_TMPVAR_CONST_HANDLER,
+               ZEND_ISSET_ISEMPTY_PROP_OBJ_SPEC_TMPVAR_TMPVAR_HANDLER,
+               ZEND_ISSET_ISEMPTY_PROP_OBJ_SPEC_TMPVAR_TMPVAR_HANDLER,
+               ZEND_NULL_HANDLER,
+               ZEND_ISSET_ISEMPTY_PROP_OBJ_SPEC_TMPVAR_CV_HANDLER,
+               ZEND_ISSET_ISEMPTY_PROP_OBJ_SPEC_TMPVAR_CONST_HANDLER,
+               ZEND_ISSET_ISEMPTY_PROP_OBJ_SPEC_TMPVAR_TMPVAR_HANDLER,
+               ZEND_ISSET_ISEMPTY_PROP_OBJ_SPEC_TMPVAR_TMPVAR_HANDLER,
+               ZEND_NULL_HANDLER,
+               ZEND_ISSET_ISEMPTY_PROP_OBJ_SPEC_TMPVAR_CV_HANDLER,
+               ZEND_ISSET_ISEMPTY_PROP_OBJ_SPEC_UNUSED_CONST_HANDLER,
+               ZEND_ISSET_ISEMPTY_PROP_OBJ_SPEC_UNUSED_TMPVAR_HANDLER,
+               ZEND_ISSET_ISEMPTY_PROP_OBJ_SPEC_UNUSED_TMPVAR_HANDLER,
+               ZEND_NULL_HANDLER,
+               ZEND_ISSET_ISEMPTY_PROP_OBJ_SPEC_UNUSED_CV_HANDLER,
+               ZEND_ISSET_ISEMPTY_PROP_OBJ_SPEC_CV_CONST_HANDLER,
+               ZEND_ISSET_ISEMPTY_PROP_OBJ_SPEC_CV_TMPVAR_HANDLER,
+               ZEND_ISSET_ISEMPTY_PROP_OBJ_SPEC_CV_TMPVAR_HANDLER,
+               ZEND_NULL_HANDLER,
+               ZEND_ISSET_ISEMPTY_PROP_OBJ_SPEC_CV_CV_HANDLER,
+               ZEND_HANDLE_EXCEPTION_SPEC_HANDLER,
+               ZEND_USER_OPCODE_SPEC_HANDLER,
+               ZEND_ASSERT_CHECK_SPEC_HANDLER,
+               ZEND_JMP_SET_SPEC_CONST_HANDLER,
+               ZEND_JMP_SET_SPEC_TMP_HANDLER,
+               ZEND_JMP_SET_SPEC_VAR_HANDLER,
                ZEND_NULL_HANDLER,
+               ZEND_JMP_SET_SPEC_CV_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
+               ZEND_DECLARE_LAMBDA_FUNCTION_SPEC_CONST_UNUSED_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
-               ZEND_EXT_STMT_SPEC_HANDLER,
-               ZEND_EXT_FCALL_BEGIN_SPEC_HANDLER,
-               ZEND_EXT_FCALL_END_SPEC_HANDLER,
-               ZEND_EXT_NOP_SPEC_HANDLER,
-               ZEND_TICKS_SPEC_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
-               ZEND_SEND_VAR_NO_REF_SPEC_VAR_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
-               ZEND_CATCH_SPEC_CONST_CV_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
@@ -56180,6 +58271,8 @@ void zend_init_opcodes_handlers(void)
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
+               ZEND_ADD_TRAIT_SPEC_HANDLER,
+               ZEND_BIND_TRAITS_SPEC_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
@@ -56192,130 +58285,117 @@ void zend_init_opcodes_handlers(void)
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
-               ZEND_THROW_SPEC_CONST_HANDLER,
-               ZEND_THROW_SPEC_TMP_HANDLER,
-               ZEND_THROW_SPEC_VAR_HANDLER,
                ZEND_NULL_HANDLER,
-               ZEND_THROW_SPEC_CV_HANDLER,
-               ZEND_FETCH_CLASS_SPEC_CONST_HANDLER,
-               ZEND_FETCH_CLASS_SPEC_TMPVAR_HANDLER,
-               ZEND_FETCH_CLASS_SPEC_TMPVAR_HANDLER,
-               ZEND_FETCH_CLASS_SPEC_UNUSED_HANDLER,
-               ZEND_FETCH_CLASS_SPEC_CV_HANDLER,
-               ZEND_CLONE_SPEC_CONST_HANDLER,
-               ZEND_CLONE_SPEC_TMPVAR_HANDLER,
-               ZEND_CLONE_SPEC_TMPVAR_HANDLER,
-               ZEND_CLONE_SPEC_UNUSED_HANDLER,
-               ZEND_CLONE_SPEC_CV_HANDLER,
-               ZEND_RETURN_BY_REF_SPEC_CONST_HANDLER,
-               ZEND_RETURN_BY_REF_SPEC_TMP_HANDLER,
-               ZEND_RETURN_BY_REF_SPEC_VAR_HANDLER,
+               ZEND_SEPARATE_SPEC_VAR_UNUSED_HANDLER,
                ZEND_NULL_HANDLER,
-               ZEND_RETURN_BY_REF_SPEC_CV_HANDLER,
-               ZEND_INIT_METHOD_CALL_SPEC_CONST_CONST_HANDLER,
-               ZEND_INIT_METHOD_CALL_SPEC_CONST_TMPVAR_HANDLER,
-               ZEND_INIT_METHOD_CALL_SPEC_CONST_TMPVAR_HANDLER,
                ZEND_NULL_HANDLER,
-               ZEND_INIT_METHOD_CALL_SPEC_CONST_CV_HANDLER,
-               ZEND_INIT_METHOD_CALL_SPEC_TMPVAR_CONST_HANDLER,
-               ZEND_INIT_METHOD_CALL_SPEC_TMPVAR_TMPVAR_HANDLER,
-               ZEND_INIT_METHOD_CALL_SPEC_TMPVAR_TMPVAR_HANDLER,
                ZEND_NULL_HANDLER,
-               ZEND_INIT_METHOD_CALL_SPEC_TMPVAR_CV_HANDLER,
-               ZEND_INIT_METHOD_CALL_SPEC_TMPVAR_CONST_HANDLER,
-               ZEND_INIT_METHOD_CALL_SPEC_TMPVAR_TMPVAR_HANDLER,
-               ZEND_INIT_METHOD_CALL_SPEC_TMPVAR_TMPVAR_HANDLER,
                ZEND_NULL_HANDLER,
-               ZEND_INIT_METHOD_CALL_SPEC_TMPVAR_CV_HANDLER,
-               ZEND_INIT_METHOD_CALL_SPEC_UNUSED_CONST_HANDLER,
-               ZEND_INIT_METHOD_CALL_SPEC_UNUSED_TMPVAR_HANDLER,
-               ZEND_INIT_METHOD_CALL_SPEC_UNUSED_TMPVAR_HANDLER,
                ZEND_NULL_HANDLER,
-               ZEND_INIT_METHOD_CALL_SPEC_UNUSED_CV_HANDLER,
-               ZEND_INIT_METHOD_CALL_SPEC_CV_CONST_HANDLER,
-               ZEND_INIT_METHOD_CALL_SPEC_CV_TMPVAR_HANDLER,
-               ZEND_INIT_METHOD_CALL_SPEC_CV_TMPVAR_HANDLER,
                ZEND_NULL_HANDLER,
-               ZEND_INIT_METHOD_CALL_SPEC_CV_CV_HANDLER,
-               ZEND_INIT_STATIC_METHOD_CALL_SPEC_CONST_CONST_HANDLER,
-               ZEND_INIT_STATIC_METHOD_CALL_SPEC_CONST_TMPVAR_HANDLER,
-               ZEND_INIT_STATIC_METHOD_CALL_SPEC_CONST_TMPVAR_HANDLER,
-               ZEND_INIT_STATIC_METHOD_CALL_SPEC_CONST_UNUSED_HANDLER,
-               ZEND_INIT_STATIC_METHOD_CALL_SPEC_CONST_CV_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
-               ZEND_INIT_STATIC_METHOD_CALL_SPEC_VAR_CONST_HANDLER,
-               ZEND_INIT_STATIC_METHOD_CALL_SPEC_VAR_TMPVAR_HANDLER,
-               ZEND_INIT_STATIC_METHOD_CALL_SPEC_VAR_TMPVAR_HANDLER,
-               ZEND_INIT_STATIC_METHOD_CALL_SPEC_VAR_UNUSED_HANDLER,
-               ZEND_INIT_STATIC_METHOD_CALL_SPEC_VAR_CV_HANDLER,
-               ZEND_INIT_STATIC_METHOD_CALL_SPEC_UNUSED_CONST_HANDLER,
-               ZEND_INIT_STATIC_METHOD_CALL_SPEC_UNUSED_TMPVAR_HANDLER,
-               ZEND_INIT_STATIC_METHOD_CALL_SPEC_UNUSED_TMPVAR_HANDLER,
-               ZEND_INIT_STATIC_METHOD_CALL_SPEC_UNUSED_UNUSED_HANDLER,
-               ZEND_INIT_STATIC_METHOD_CALL_SPEC_UNUSED_CV_HANDLER,
+               ZEND_FETCH_CLASS_NAME_SPEC_HANDLER,
+               ZEND_CALL_TRAMPOLINE_SPEC_HANDLER,
+               ZEND_DISCARD_EXCEPTION_SPEC_HANDLER,
+               ZEND_YIELD_SPEC_CONST_CONST_HANDLER,
+               ZEND_YIELD_SPEC_CONST_TMP_HANDLER,
+               ZEND_YIELD_SPEC_CONST_VAR_HANDLER,
+               ZEND_YIELD_SPEC_CONST_UNUSED_HANDLER,
+               ZEND_YIELD_SPEC_CONST_CV_HANDLER,
+               ZEND_YIELD_SPEC_TMP_CONST_HANDLER,
+               ZEND_YIELD_SPEC_TMP_TMP_HANDLER,
+               ZEND_YIELD_SPEC_TMP_VAR_HANDLER,
+               ZEND_YIELD_SPEC_TMP_UNUSED_HANDLER,
+               ZEND_YIELD_SPEC_TMP_CV_HANDLER,
+               ZEND_YIELD_SPEC_VAR_CONST_HANDLER,
+               ZEND_YIELD_SPEC_VAR_TMP_HANDLER,
+               ZEND_YIELD_SPEC_VAR_VAR_HANDLER,
+               ZEND_YIELD_SPEC_VAR_UNUSED_HANDLER,
+               ZEND_YIELD_SPEC_VAR_CV_HANDLER,
+               ZEND_YIELD_SPEC_UNUSED_CONST_HANDLER,
+               ZEND_YIELD_SPEC_UNUSED_TMP_HANDLER,
+               ZEND_YIELD_SPEC_UNUSED_VAR_HANDLER,
+               ZEND_YIELD_SPEC_UNUSED_UNUSED_HANDLER,
+               ZEND_YIELD_SPEC_UNUSED_CV_HANDLER,
+               ZEND_YIELD_SPEC_CV_CONST_HANDLER,
+               ZEND_YIELD_SPEC_CV_TMP_HANDLER,
+               ZEND_YIELD_SPEC_CV_VAR_HANDLER,
+               ZEND_YIELD_SPEC_CV_UNUSED_HANDLER,
+               ZEND_YIELD_SPEC_CV_CV_HANDLER,
+               ZEND_GENERATOR_RETURN_SPEC_CONST_HANDLER,
+               ZEND_GENERATOR_RETURN_SPEC_TMP_HANDLER,
+               ZEND_GENERATOR_RETURN_SPEC_VAR_HANDLER,
                ZEND_NULL_HANDLER,
+               ZEND_GENERATOR_RETURN_SPEC_CV_HANDLER,
+               ZEND_FAST_CALL_SPEC_HANDLER,
+               ZEND_FAST_RET_SPEC_HANDLER,
+               ZEND_RECV_VARIADIC_SPEC_HANDLER,
+               ZEND_SEND_UNPACK_SPEC_HANDLER,
+               ZEND_POW_SPEC_CONST_CONST_HANDLER,
+               ZEND_POW_SPEC_CONST_TMPVAR_HANDLER,
+               ZEND_POW_SPEC_CONST_TMPVAR_HANDLER,
                ZEND_NULL_HANDLER,
+               ZEND_POW_SPEC_CONST_CV_HANDLER,
+               ZEND_POW_SPEC_TMPVAR_CONST_HANDLER,
+               ZEND_POW_SPEC_TMPVAR_TMPVAR_HANDLER,
+               ZEND_POW_SPEC_TMPVAR_TMPVAR_HANDLER,
                ZEND_NULL_HANDLER,
+               ZEND_POW_SPEC_TMPVAR_CV_HANDLER,
+               ZEND_POW_SPEC_TMPVAR_CONST_HANDLER,
+               ZEND_POW_SPEC_TMPVAR_TMPVAR_HANDLER,
+               ZEND_POW_SPEC_TMPVAR_TMPVAR_HANDLER,
                ZEND_NULL_HANDLER,
+               ZEND_POW_SPEC_TMPVAR_CV_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
-               ZEND_ISSET_ISEMPTY_VAR_SPEC_CONST_UNUSED_HANDLER,
                ZEND_NULL_HANDLER,
+               ZEND_POW_SPEC_CV_CONST_HANDLER,
+               ZEND_POW_SPEC_CV_TMPVAR_HANDLER,
+               ZEND_POW_SPEC_CV_TMPVAR_HANDLER,
                ZEND_NULL_HANDLER,
+               ZEND_POW_SPEC_CV_CV_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
-               ZEND_ISSET_ISEMPTY_VAR_SPEC_TMPVAR_UNUSED_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
-               ZEND_ISSET_ISEMPTY_VAR_SPEC_TMPVAR_UNUSED_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
+               ZEND_ASSIGN_POW_SPEC_VAR_CONST_HANDLER,
+               ZEND_ASSIGN_POW_SPEC_VAR_TMPVAR_HANDLER,
+               ZEND_ASSIGN_POW_SPEC_VAR_TMPVAR_HANDLER,
+               ZEND_ASSIGN_POW_SPEC_VAR_UNUSED_HANDLER,
+               ZEND_ASSIGN_POW_SPEC_VAR_CV_HANDLER,
+               ZEND_ASSIGN_POW_SPEC_UNUSED_CONST_HANDLER,
+               ZEND_ASSIGN_POW_SPEC_UNUSED_TMPVAR_HANDLER,
+               ZEND_ASSIGN_POW_SPEC_UNUSED_TMPVAR_HANDLER,
+               ZEND_ASSIGN_POW_SPEC_UNUSED_UNUSED_HANDLER,
+               ZEND_ASSIGN_POW_SPEC_UNUSED_CV_HANDLER,
+               ZEND_ASSIGN_POW_SPEC_CV_CONST_HANDLER,
+               ZEND_ASSIGN_POW_SPEC_CV_TMPVAR_HANDLER,
+               ZEND_ASSIGN_POW_SPEC_CV_TMPVAR_HANDLER,
+               ZEND_ASSIGN_POW_SPEC_CV_UNUSED_HANDLER,
+               ZEND_ASSIGN_POW_SPEC_CV_CV_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
-               ZEND_ISSET_ISEMPTY_VAR_SPEC_CV_UNUSED_HANDLER,
                ZEND_NULL_HANDLER,
-               ZEND_ISSET_ISEMPTY_DIM_OBJ_SPEC_CONST_CONST_HANDLER,
-               ZEND_ISSET_ISEMPTY_DIM_OBJ_SPEC_CONST_TMPVAR_HANDLER,
-               ZEND_ISSET_ISEMPTY_DIM_OBJ_SPEC_CONST_TMPVAR_HANDLER,
                ZEND_NULL_HANDLER,
-               ZEND_ISSET_ISEMPTY_DIM_OBJ_SPEC_CONST_CV_HANDLER,
-               ZEND_ISSET_ISEMPTY_DIM_OBJ_SPEC_TMPVAR_CONST_HANDLER,
-               ZEND_ISSET_ISEMPTY_DIM_OBJ_SPEC_TMPVAR_TMPVAR_HANDLER,
-               ZEND_ISSET_ISEMPTY_DIM_OBJ_SPEC_TMPVAR_TMPVAR_HANDLER,
                ZEND_NULL_HANDLER,
-               ZEND_ISSET_ISEMPTY_DIM_OBJ_SPEC_TMPVAR_CV_HANDLER,
-               ZEND_ISSET_ISEMPTY_DIM_OBJ_SPEC_TMPVAR_CONST_HANDLER,
-               ZEND_ISSET_ISEMPTY_DIM_OBJ_SPEC_TMPVAR_TMPVAR_HANDLER,
-               ZEND_ISSET_ISEMPTY_DIM_OBJ_SPEC_TMPVAR_TMPVAR_HANDLER,
                ZEND_NULL_HANDLER,
-               ZEND_ISSET_ISEMPTY_DIM_OBJ_SPEC_TMPVAR_CV_HANDLER,
-               ZEND_ISSET_ISEMPTY_DIM_OBJ_SPEC_UNUSED_CONST_HANDLER,
-               ZEND_ISSET_ISEMPTY_DIM_OBJ_SPEC_UNUSED_TMPVAR_HANDLER,
-               ZEND_ISSET_ISEMPTY_DIM_OBJ_SPEC_UNUSED_TMPVAR_HANDLER,
                ZEND_NULL_HANDLER,
-               ZEND_ISSET_ISEMPTY_DIM_OBJ_SPEC_UNUSED_CV_HANDLER,
-               ZEND_ISSET_ISEMPTY_DIM_OBJ_SPEC_CV_CONST_HANDLER,
-               ZEND_ISSET_ISEMPTY_DIM_OBJ_SPEC_CV_TMPVAR_HANDLER,
-               ZEND_ISSET_ISEMPTY_DIM_OBJ_SPEC_CV_TMPVAR_HANDLER,
                ZEND_NULL_HANDLER,
-               ZEND_ISSET_ISEMPTY_DIM_OBJ_SPEC_CV_CV_HANDLER,
-               ZEND_SEND_VAL_EX_SPEC_CONST_HANDLER,
-               ZEND_SEND_VAL_EX_SPEC_CONST_QUICK_HANDLER,
-               ZEND_SEND_VAL_EX_SPEC_TMP_HANDLER,
-               ZEND_SEND_VAL_EX_SPEC_TMP_QUICK_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
@@ -56324,217 +58404,249 @@ void zend_init_opcodes_handlers(void)
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
-               ZEND_SEND_VAR_SPEC_VAR_HANDLER,
                ZEND_NULL_HANDLER,
-               ZEND_SEND_VAR_SPEC_CV_HANDLER,
-               ZEND_INIT_USER_CALL_SPEC_CONST_CONST_HANDLER,
-               ZEND_INIT_USER_CALL_SPEC_CONST_TMPVAR_HANDLER,
-               ZEND_INIT_USER_CALL_SPEC_CONST_TMPVAR_HANDLER,
+               ZEND_BIND_GLOBAL_SPEC_CV_CONST_HANDLER,
                ZEND_NULL_HANDLER,
-               ZEND_INIT_USER_CALL_SPEC_CONST_CV_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
+               ZEND_COALESCE_SPEC_CONST_HANDLER,
+               ZEND_COALESCE_SPEC_TMP_HANDLER,
+               ZEND_COALESCE_SPEC_VAR_HANDLER,
                ZEND_NULL_HANDLER,
+               ZEND_COALESCE_SPEC_CV_HANDLER,
+               ZEND_SPACESHIP_SPEC_CONST_CONST_HANDLER,
+               ZEND_SPACESHIP_SPEC_CONST_TMPVAR_HANDLER,
+               ZEND_SPACESHIP_SPEC_CONST_TMPVAR_HANDLER,
                ZEND_NULL_HANDLER,
+               ZEND_SPACESHIP_SPEC_CONST_CV_HANDLER,
+               ZEND_SPACESHIP_SPEC_TMPVAR_CONST_HANDLER,
+               ZEND_SPACESHIP_SPEC_TMPVAR_TMPVAR_HANDLER,
+               ZEND_SPACESHIP_SPEC_TMPVAR_TMPVAR_HANDLER,
                ZEND_NULL_HANDLER,
+               ZEND_SPACESHIP_SPEC_TMPVAR_CV_HANDLER,
+               ZEND_SPACESHIP_SPEC_TMPVAR_CONST_HANDLER,
+               ZEND_SPACESHIP_SPEC_TMPVAR_TMPVAR_HANDLER,
+               ZEND_SPACESHIP_SPEC_TMPVAR_TMPVAR_HANDLER,
                ZEND_NULL_HANDLER,
+               ZEND_SPACESHIP_SPEC_TMPVAR_CV_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
+               ZEND_SPACESHIP_SPEC_CV_CONST_HANDLER,
+               ZEND_SPACESHIP_SPEC_CV_TMPVAR_HANDLER,
+               ZEND_SPACESHIP_SPEC_CV_TMPVAR_HANDLER,
                ZEND_NULL_HANDLER,
+               ZEND_SPACESHIP_SPEC_CV_CV_HANDLER,
+               ZEND_DECLARE_ANON_CLASS_SPEC_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
+               ZEND_DECLARE_ANON_INHERITED_CLASS_SPEC_VAR_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
+               ZEND_FETCH_STATIC_PROP_R_SPEC_CONST_CONST_HANDLER,
                ZEND_NULL_HANDLER,
+               ZEND_FETCH_STATIC_PROP_R_SPEC_CONST_VAR_HANDLER,
+               ZEND_FETCH_STATIC_PROP_R_SPEC_CONST_UNUSED_HANDLER,
                ZEND_NULL_HANDLER,
+               ZEND_FETCH_STATIC_PROP_R_SPEC_TMPVAR_CONST_HANDLER,
                ZEND_NULL_HANDLER,
-               ZEND_SEND_ARRAY_SPEC_HANDLER,
+               ZEND_FETCH_STATIC_PROP_R_SPEC_TMPVAR_VAR_HANDLER,
+               ZEND_FETCH_STATIC_PROP_R_SPEC_TMPVAR_UNUSED_HANDLER,
                ZEND_NULL_HANDLER,
+               ZEND_FETCH_STATIC_PROP_R_SPEC_TMPVAR_CONST_HANDLER,
                ZEND_NULL_HANDLER,
-               ZEND_SEND_USER_SPEC_VAR_HANDLER,
+               ZEND_FETCH_STATIC_PROP_R_SPEC_TMPVAR_VAR_HANDLER,
+               ZEND_FETCH_STATIC_PROP_R_SPEC_TMPVAR_UNUSED_HANDLER,
                ZEND_NULL_HANDLER,
-               ZEND_SEND_USER_SPEC_CV_HANDLER,
-               ZEND_STRLEN_SPEC_CONST_HANDLER,
-               ZEND_STRLEN_SPEC_TMPVAR_HANDLER,
-               ZEND_STRLEN_SPEC_TMPVAR_HANDLER,
                ZEND_NULL_HANDLER,
-               ZEND_STRLEN_SPEC_CV_HANDLER,
-               ZEND_DEFINED_SPEC_CONST_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
-               ZEND_TYPE_CHECK_SPEC_CONST_HANDLER,
-               ZEND_TYPE_CHECK_SPEC_TMP_HANDLER,
-               ZEND_TYPE_CHECK_SPEC_VAR_HANDLER,
+               ZEND_FETCH_STATIC_PROP_R_SPEC_CV_CONST_HANDLER,
                ZEND_NULL_HANDLER,
-               ZEND_TYPE_CHECK_SPEC_CV_HANDLER,
+               ZEND_FETCH_STATIC_PROP_R_SPEC_CV_VAR_HANDLER,
+               ZEND_FETCH_STATIC_PROP_R_SPEC_CV_UNUSED_HANDLER,
                ZEND_NULL_HANDLER,
+               ZEND_FETCH_STATIC_PROP_W_SPEC_CONST_CONST_HANDLER,
                ZEND_NULL_HANDLER,
+               ZEND_FETCH_STATIC_PROP_W_SPEC_CONST_VAR_HANDLER,
+               ZEND_FETCH_STATIC_PROP_W_SPEC_CONST_UNUSED_HANDLER,
                ZEND_NULL_HANDLER,
-               ZEND_VERIFY_RETURN_TYPE_SPEC_CONST_UNUSED_HANDLER,
+               ZEND_FETCH_STATIC_PROP_W_SPEC_TMPVAR_CONST_HANDLER,
                ZEND_NULL_HANDLER,
+               ZEND_FETCH_STATIC_PROP_W_SPEC_TMPVAR_VAR_HANDLER,
+               ZEND_FETCH_STATIC_PROP_W_SPEC_TMPVAR_UNUSED_HANDLER,
                ZEND_NULL_HANDLER,
+               ZEND_FETCH_STATIC_PROP_W_SPEC_TMPVAR_CONST_HANDLER,
                ZEND_NULL_HANDLER,
+               ZEND_FETCH_STATIC_PROP_W_SPEC_TMPVAR_VAR_HANDLER,
+               ZEND_FETCH_STATIC_PROP_W_SPEC_TMPVAR_UNUSED_HANDLER,
                ZEND_NULL_HANDLER,
-               ZEND_VERIFY_RETURN_TYPE_SPEC_TMP_UNUSED_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
-               ZEND_VERIFY_RETURN_TYPE_SPEC_VAR_UNUSED_HANDLER,
                ZEND_NULL_HANDLER,
+               ZEND_FETCH_STATIC_PROP_W_SPEC_CV_CONST_HANDLER,
                ZEND_NULL_HANDLER,
+               ZEND_FETCH_STATIC_PROP_W_SPEC_CV_VAR_HANDLER,
+               ZEND_FETCH_STATIC_PROP_W_SPEC_CV_UNUSED_HANDLER,
                ZEND_NULL_HANDLER,
+               ZEND_FETCH_STATIC_PROP_RW_SPEC_CONST_CONST_HANDLER,
                ZEND_NULL_HANDLER,
-               ZEND_VERIFY_RETURN_TYPE_SPEC_UNUSED_UNUSED_HANDLER,
+               ZEND_FETCH_STATIC_PROP_RW_SPEC_CONST_VAR_HANDLER,
+               ZEND_FETCH_STATIC_PROP_RW_SPEC_CONST_UNUSED_HANDLER,
                ZEND_NULL_HANDLER,
+               ZEND_FETCH_STATIC_PROP_RW_SPEC_TMPVAR_CONST_HANDLER,
                ZEND_NULL_HANDLER,
+               ZEND_FETCH_STATIC_PROP_RW_SPEC_TMPVAR_VAR_HANDLER,
+               ZEND_FETCH_STATIC_PROP_RW_SPEC_TMPVAR_UNUSED_HANDLER,
                ZEND_NULL_HANDLER,
+               ZEND_FETCH_STATIC_PROP_RW_SPEC_TMPVAR_CONST_HANDLER,
                ZEND_NULL_HANDLER,
-               ZEND_VERIFY_RETURN_TYPE_SPEC_CV_UNUSED_HANDLER,
+               ZEND_FETCH_STATIC_PROP_RW_SPEC_TMPVAR_VAR_HANDLER,
+               ZEND_FETCH_STATIC_PROP_RW_SPEC_TMPVAR_UNUSED_HANDLER,
                ZEND_NULL_HANDLER,
-               ZEND_FE_RESET_RW_SPEC_CONST_HANDLER,
-               ZEND_FE_RESET_RW_SPEC_TMP_HANDLER,
-               ZEND_FE_RESET_RW_SPEC_VAR_HANDLER,
                ZEND_NULL_HANDLER,
-               ZEND_FE_RESET_RW_SPEC_CV_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
-               ZEND_FE_FETCH_RW_SPEC_VAR_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
+               ZEND_FETCH_STATIC_PROP_RW_SPEC_CV_CONST_HANDLER,
                ZEND_NULL_HANDLER,
-               ZEND_FE_FREE_SPEC_TMPVAR_HANDLER,
-               ZEND_FE_FREE_SPEC_TMPVAR_HANDLER,
+               ZEND_FETCH_STATIC_PROP_RW_SPEC_CV_VAR_HANDLER,
+               ZEND_FETCH_STATIC_PROP_RW_SPEC_CV_UNUSED_HANDLER,
                ZEND_NULL_HANDLER,
+               ZEND_FETCH_STATIC_PROP_IS_SPEC_CONST_CONST_HANDLER,
                ZEND_NULL_HANDLER,
-               ZEND_INIT_DYNAMIC_CALL_SPEC_CONST_HANDLER,
-               ZEND_INIT_DYNAMIC_CALL_SPEC_TMPVAR_HANDLER,
-               ZEND_INIT_DYNAMIC_CALL_SPEC_TMPVAR_HANDLER,
+               ZEND_FETCH_STATIC_PROP_IS_SPEC_CONST_VAR_HANDLER,
+               ZEND_FETCH_STATIC_PROP_IS_SPEC_CONST_UNUSED_HANDLER,
                ZEND_NULL_HANDLER,
-               ZEND_INIT_DYNAMIC_CALL_SPEC_CV_HANDLER,
-               ZEND_DO_ICALL_SPEC_RETVAL_UNUSED_HANDLER,
-               ZEND_DO_ICALL_SPEC_RETVAL_USED_HANDLER,
-               ZEND_DO_UCALL_SPEC_RETVAL_UNUSED_HANDLER,
-               ZEND_DO_UCALL_SPEC_RETVAL_USED_HANDLER,
-               ZEND_DO_FCALL_BY_NAME_SPEC_RETVAL_UNUSED_HANDLER,
-               ZEND_DO_FCALL_BY_NAME_SPEC_RETVAL_USED_HANDLER,
+               ZEND_FETCH_STATIC_PROP_IS_SPEC_TMPVAR_CONST_HANDLER,
                ZEND_NULL_HANDLER,
+               ZEND_FETCH_STATIC_PROP_IS_SPEC_TMPVAR_VAR_HANDLER,
+               ZEND_FETCH_STATIC_PROP_IS_SPEC_TMPVAR_UNUSED_HANDLER,
                ZEND_NULL_HANDLER,
+               ZEND_FETCH_STATIC_PROP_IS_SPEC_TMPVAR_CONST_HANDLER,
                ZEND_NULL_HANDLER,
+               ZEND_FETCH_STATIC_PROP_IS_SPEC_TMPVAR_VAR_HANDLER,
+               ZEND_FETCH_STATIC_PROP_IS_SPEC_TMPVAR_UNUSED_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
+               ZEND_FETCH_STATIC_PROP_IS_SPEC_CV_CONST_HANDLER,
                ZEND_NULL_HANDLER,
-               ZEND_PRE_INC_OBJ_SPEC_VAR_CONST_HANDLER,
-               ZEND_PRE_INC_OBJ_SPEC_VAR_TMPVAR_HANDLER,
-               ZEND_PRE_INC_OBJ_SPEC_VAR_TMPVAR_HANDLER,
+               ZEND_FETCH_STATIC_PROP_IS_SPEC_CV_VAR_HANDLER,
+               ZEND_FETCH_STATIC_PROP_IS_SPEC_CV_UNUSED_HANDLER,
                ZEND_NULL_HANDLER,
-               ZEND_PRE_INC_OBJ_SPEC_VAR_CV_HANDLER,
-               ZEND_PRE_INC_OBJ_SPEC_UNUSED_CONST_HANDLER,
-               ZEND_PRE_INC_OBJ_SPEC_UNUSED_TMPVAR_HANDLER,
-               ZEND_PRE_INC_OBJ_SPEC_UNUSED_TMPVAR_HANDLER,
+               ZEND_FETCH_STATIC_PROP_FUNC_ARG_SPEC_CONST_CONST_HANDLER,
                ZEND_NULL_HANDLER,
-               ZEND_PRE_INC_OBJ_SPEC_UNUSED_CV_HANDLER,
-               ZEND_PRE_INC_OBJ_SPEC_CV_CONST_HANDLER,
-               ZEND_PRE_INC_OBJ_SPEC_CV_TMPVAR_HANDLER,
-               ZEND_PRE_INC_OBJ_SPEC_CV_TMPVAR_HANDLER,
+               ZEND_FETCH_STATIC_PROP_FUNC_ARG_SPEC_CONST_VAR_HANDLER,
+               ZEND_FETCH_STATIC_PROP_FUNC_ARG_SPEC_CONST_UNUSED_HANDLER,
                ZEND_NULL_HANDLER,
-               ZEND_PRE_INC_OBJ_SPEC_CV_CV_HANDLER,
+               ZEND_FETCH_STATIC_PROP_FUNC_ARG_SPEC_TMPVAR_CONST_HANDLER,
                ZEND_NULL_HANDLER,
+               ZEND_FETCH_STATIC_PROP_FUNC_ARG_SPEC_TMPVAR_VAR_HANDLER,
+               ZEND_FETCH_STATIC_PROP_FUNC_ARG_SPEC_TMPVAR_UNUSED_HANDLER,
                ZEND_NULL_HANDLER,
+               ZEND_FETCH_STATIC_PROP_FUNC_ARG_SPEC_TMPVAR_CONST_HANDLER,
                ZEND_NULL_HANDLER,
+               ZEND_FETCH_STATIC_PROP_FUNC_ARG_SPEC_TMPVAR_VAR_HANDLER,
+               ZEND_FETCH_STATIC_PROP_FUNC_ARG_SPEC_TMPVAR_UNUSED_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
+               ZEND_FETCH_STATIC_PROP_FUNC_ARG_SPEC_CV_CONST_HANDLER,
                ZEND_NULL_HANDLER,
-               ZEND_PRE_DEC_OBJ_SPEC_VAR_CONST_HANDLER,
-               ZEND_PRE_DEC_OBJ_SPEC_VAR_TMPVAR_HANDLER,
-               ZEND_PRE_DEC_OBJ_SPEC_VAR_TMPVAR_HANDLER,
+               ZEND_FETCH_STATIC_PROP_FUNC_ARG_SPEC_CV_VAR_HANDLER,
+               ZEND_FETCH_STATIC_PROP_FUNC_ARG_SPEC_CV_UNUSED_HANDLER,
                ZEND_NULL_HANDLER,
-               ZEND_PRE_DEC_OBJ_SPEC_VAR_CV_HANDLER,
-               ZEND_PRE_DEC_OBJ_SPEC_UNUSED_CONST_HANDLER,
-               ZEND_PRE_DEC_OBJ_SPEC_UNUSED_TMPVAR_HANDLER,
-               ZEND_PRE_DEC_OBJ_SPEC_UNUSED_TMPVAR_HANDLER,
+               ZEND_FETCH_STATIC_PROP_UNSET_SPEC_CONST_CONST_HANDLER,
                ZEND_NULL_HANDLER,
-               ZEND_PRE_DEC_OBJ_SPEC_UNUSED_CV_HANDLER,
-               ZEND_PRE_DEC_OBJ_SPEC_CV_CONST_HANDLER,
-               ZEND_PRE_DEC_OBJ_SPEC_CV_TMPVAR_HANDLER,
-               ZEND_PRE_DEC_OBJ_SPEC_CV_TMPVAR_HANDLER,
+               ZEND_FETCH_STATIC_PROP_UNSET_SPEC_CONST_VAR_HANDLER,
+               ZEND_FETCH_STATIC_PROP_UNSET_SPEC_CONST_UNUSED_HANDLER,
                ZEND_NULL_HANDLER,
-               ZEND_PRE_DEC_OBJ_SPEC_CV_CV_HANDLER,
+               ZEND_FETCH_STATIC_PROP_UNSET_SPEC_TMPVAR_CONST_HANDLER,
                ZEND_NULL_HANDLER,
+               ZEND_FETCH_STATIC_PROP_UNSET_SPEC_TMPVAR_VAR_HANDLER,
+               ZEND_FETCH_STATIC_PROP_UNSET_SPEC_TMPVAR_UNUSED_HANDLER,
                ZEND_NULL_HANDLER,
+               ZEND_FETCH_STATIC_PROP_UNSET_SPEC_TMPVAR_CONST_HANDLER,
                ZEND_NULL_HANDLER,
+               ZEND_FETCH_STATIC_PROP_UNSET_SPEC_TMPVAR_VAR_HANDLER,
+               ZEND_FETCH_STATIC_PROP_UNSET_SPEC_TMPVAR_UNUSED_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
+               ZEND_FETCH_STATIC_PROP_UNSET_SPEC_CV_CONST_HANDLER,
                ZEND_NULL_HANDLER,
-               ZEND_POST_INC_OBJ_SPEC_VAR_CONST_HANDLER,
-               ZEND_POST_INC_OBJ_SPEC_VAR_TMPVAR_HANDLER,
-               ZEND_POST_INC_OBJ_SPEC_VAR_TMPVAR_HANDLER,
+               ZEND_FETCH_STATIC_PROP_UNSET_SPEC_CV_VAR_HANDLER,
+               ZEND_FETCH_STATIC_PROP_UNSET_SPEC_CV_UNUSED_HANDLER,
                ZEND_NULL_HANDLER,
-               ZEND_POST_INC_OBJ_SPEC_VAR_CV_HANDLER,
-               ZEND_POST_INC_OBJ_SPEC_UNUSED_CONST_HANDLER,
-               ZEND_POST_INC_OBJ_SPEC_UNUSED_TMPVAR_HANDLER,
-               ZEND_POST_INC_OBJ_SPEC_UNUSED_TMPVAR_HANDLER,
+               ZEND_UNSET_STATIC_PROP_SPEC_CONST_CONST_HANDLER,
                ZEND_NULL_HANDLER,
-               ZEND_POST_INC_OBJ_SPEC_UNUSED_CV_HANDLER,
-               ZEND_POST_INC_OBJ_SPEC_CV_CONST_HANDLER,
-               ZEND_POST_INC_OBJ_SPEC_CV_TMPVAR_HANDLER,
-               ZEND_POST_INC_OBJ_SPEC_CV_TMPVAR_HANDLER,
+               ZEND_UNSET_STATIC_PROP_SPEC_CONST_VAR_HANDLER,
+               ZEND_UNSET_STATIC_PROP_SPEC_CONST_UNUSED_HANDLER,
                ZEND_NULL_HANDLER,
-               ZEND_POST_INC_OBJ_SPEC_CV_CV_HANDLER,
+               ZEND_UNSET_STATIC_PROP_SPEC_TMPVAR_CONST_HANDLER,
                ZEND_NULL_HANDLER,
+               ZEND_UNSET_STATIC_PROP_SPEC_TMPVAR_VAR_HANDLER,
+               ZEND_UNSET_STATIC_PROP_SPEC_TMPVAR_UNUSED_HANDLER,
                ZEND_NULL_HANDLER,
+               ZEND_UNSET_STATIC_PROP_SPEC_TMPVAR_CONST_HANDLER,
                ZEND_NULL_HANDLER,
+               ZEND_UNSET_STATIC_PROP_SPEC_TMPVAR_VAR_HANDLER,
+               ZEND_UNSET_STATIC_PROP_SPEC_TMPVAR_UNUSED_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
+               ZEND_UNSET_STATIC_PROP_SPEC_CV_CONST_HANDLER,
                ZEND_NULL_HANDLER,
-               ZEND_POST_DEC_OBJ_SPEC_VAR_CONST_HANDLER,
-               ZEND_POST_DEC_OBJ_SPEC_VAR_TMPVAR_HANDLER,
-               ZEND_POST_DEC_OBJ_SPEC_VAR_TMPVAR_HANDLER,
+               ZEND_UNSET_STATIC_PROP_SPEC_CV_VAR_HANDLER,
+               ZEND_UNSET_STATIC_PROP_SPEC_CV_UNUSED_HANDLER,
                ZEND_NULL_HANDLER,
-               ZEND_POST_DEC_OBJ_SPEC_VAR_CV_HANDLER,
-               ZEND_POST_DEC_OBJ_SPEC_UNUSED_CONST_HANDLER,
-               ZEND_POST_DEC_OBJ_SPEC_UNUSED_TMPVAR_HANDLER,
-               ZEND_POST_DEC_OBJ_SPEC_UNUSED_TMPVAR_HANDLER,
+               ZEND_ISSET_ISEMPTY_STATIC_PROP_SPEC_CONST_CONST_HANDLER,
                ZEND_NULL_HANDLER,
-               ZEND_POST_DEC_OBJ_SPEC_UNUSED_CV_HANDLER,
-               ZEND_POST_DEC_OBJ_SPEC_CV_CONST_HANDLER,
-               ZEND_POST_DEC_OBJ_SPEC_CV_TMPVAR_HANDLER,
-               ZEND_POST_DEC_OBJ_SPEC_CV_TMPVAR_HANDLER,
+               ZEND_ISSET_ISEMPTY_STATIC_PROP_SPEC_CONST_VAR_HANDLER,
+               ZEND_ISSET_ISEMPTY_STATIC_PROP_SPEC_CONST_UNUSED_HANDLER,
                ZEND_NULL_HANDLER,
-               ZEND_POST_DEC_OBJ_SPEC_CV_CV_HANDLER,
+               ZEND_ISSET_ISEMPTY_STATIC_PROP_SPEC_TMPVAR_CONST_HANDLER,
                ZEND_NULL_HANDLER,
+               ZEND_ISSET_ISEMPTY_STATIC_PROP_SPEC_TMPVAR_VAR_HANDLER,
+               ZEND_ISSET_ISEMPTY_STATIC_PROP_SPEC_TMPVAR_UNUSED_HANDLER,
                ZEND_NULL_HANDLER,
+               ZEND_ISSET_ISEMPTY_STATIC_PROP_SPEC_TMPVAR_CONST_HANDLER,
                ZEND_NULL_HANDLER,
+               ZEND_ISSET_ISEMPTY_STATIC_PROP_SPEC_TMPVAR_VAR_HANDLER,
+               ZEND_ISSET_ISEMPTY_STATIC_PROP_SPEC_TMPVAR_UNUSED_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
+               ZEND_ISSET_ISEMPTY_STATIC_PROP_SPEC_CV_CONST_HANDLER,
                ZEND_NULL_HANDLER,
+               ZEND_ISSET_ISEMPTY_STATIC_PROP_SPEC_CV_VAR_HANDLER,
+               ZEND_ISSET_ISEMPTY_STATIC_PROP_SPEC_CV_UNUSED_HANDLER,
                ZEND_NULL_HANDLER,
+               ZEND_FETCH_CLASS_CONSTANT_SPEC_CONST_CONST_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
@@ -56544,10 +58656,12 @@ void zend_init_opcodes_handlers(void)
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
+               ZEND_FETCH_CLASS_CONSTANT_SPEC_VAR_CONST_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
+               ZEND_FETCH_CLASS_CONSTANT_SPEC_UNUSED_CONST_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
@@ -56566,6 +58680,7 @@ void zend_init_opcodes_handlers(void)
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
+               ZEND_BIND_LEXICAL_SPEC_TMP_CV_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
@@ -56574,340 +58689,383 @@ void zend_init_opcodes_handlers(void)
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
-               ZEND_ASSIGN_OBJ_SPEC_VAR_CONST_OP_DATA_CONST_HANDLER,
-               ZEND_ASSIGN_OBJ_SPEC_VAR_CONST_OP_DATA_TMP_HANDLER,
-               ZEND_ASSIGN_OBJ_SPEC_VAR_CONST_OP_DATA_VAR_HANDLER,
                ZEND_NULL_HANDLER,
-               ZEND_ASSIGN_OBJ_SPEC_VAR_CONST_OP_DATA_CV_HANDLER,
-               ZEND_ASSIGN_OBJ_SPEC_VAR_TMPVAR_OP_DATA_CONST_HANDLER,
-               ZEND_ASSIGN_OBJ_SPEC_VAR_TMPVAR_OP_DATA_TMP_HANDLER,
-               ZEND_ASSIGN_OBJ_SPEC_VAR_TMPVAR_OP_DATA_VAR_HANDLER,
                ZEND_NULL_HANDLER,
-               ZEND_ASSIGN_OBJ_SPEC_VAR_TMPVAR_OP_DATA_CV_HANDLER,
-               ZEND_ASSIGN_OBJ_SPEC_VAR_TMPVAR_OP_DATA_CONST_HANDLER,
-               ZEND_ASSIGN_OBJ_SPEC_VAR_TMPVAR_OP_DATA_TMP_HANDLER,
-               ZEND_ASSIGN_OBJ_SPEC_VAR_TMPVAR_OP_DATA_VAR_HANDLER,
                ZEND_NULL_HANDLER,
-               ZEND_ASSIGN_OBJ_SPEC_VAR_TMPVAR_OP_DATA_CV_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
-               ZEND_ASSIGN_OBJ_SPEC_VAR_CV_OP_DATA_CONST_HANDLER,
-               ZEND_ASSIGN_OBJ_SPEC_VAR_CV_OP_DATA_TMP_HANDLER,
-               ZEND_ASSIGN_OBJ_SPEC_VAR_CV_OP_DATA_VAR_HANDLER,
                ZEND_NULL_HANDLER,
-               ZEND_ASSIGN_OBJ_SPEC_VAR_CV_OP_DATA_CV_HANDLER,
-               ZEND_ASSIGN_OBJ_SPEC_UNUSED_CONST_OP_DATA_CONST_HANDLER,
-               ZEND_ASSIGN_OBJ_SPEC_UNUSED_CONST_OP_DATA_TMP_HANDLER,
-               ZEND_ASSIGN_OBJ_SPEC_UNUSED_CONST_OP_DATA_VAR_HANDLER,
                ZEND_NULL_HANDLER,
-               ZEND_ASSIGN_OBJ_SPEC_UNUSED_CONST_OP_DATA_CV_HANDLER,
-               ZEND_ASSIGN_OBJ_SPEC_UNUSED_TMPVAR_OP_DATA_CONST_HANDLER,
-               ZEND_ASSIGN_OBJ_SPEC_UNUSED_TMPVAR_OP_DATA_TMP_HANDLER,
-               ZEND_ASSIGN_OBJ_SPEC_UNUSED_TMPVAR_OP_DATA_VAR_HANDLER,
                ZEND_NULL_HANDLER,
-               ZEND_ASSIGN_OBJ_SPEC_UNUSED_TMPVAR_OP_DATA_CV_HANDLER,
-               ZEND_ASSIGN_OBJ_SPEC_UNUSED_TMPVAR_OP_DATA_CONST_HANDLER,
-               ZEND_ASSIGN_OBJ_SPEC_UNUSED_TMPVAR_OP_DATA_TMP_HANDLER,
-               ZEND_ASSIGN_OBJ_SPEC_UNUSED_TMPVAR_OP_DATA_VAR_HANDLER,
                ZEND_NULL_HANDLER,
-               ZEND_ASSIGN_OBJ_SPEC_UNUSED_TMPVAR_OP_DATA_CV_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
-               ZEND_ASSIGN_OBJ_SPEC_UNUSED_CV_OP_DATA_CONST_HANDLER,
-               ZEND_ASSIGN_OBJ_SPEC_UNUSED_CV_OP_DATA_TMP_HANDLER,
-               ZEND_ASSIGN_OBJ_SPEC_UNUSED_CV_OP_DATA_VAR_HANDLER,
                ZEND_NULL_HANDLER,
-               ZEND_ASSIGN_OBJ_SPEC_UNUSED_CV_OP_DATA_CV_HANDLER,
-               ZEND_ASSIGN_OBJ_SPEC_CV_CONST_OP_DATA_CONST_HANDLER,
-               ZEND_ASSIGN_OBJ_SPEC_CV_CONST_OP_DATA_TMP_HANDLER,
-               ZEND_ASSIGN_OBJ_SPEC_CV_CONST_OP_DATA_VAR_HANDLER,
                ZEND_NULL_HANDLER,
-               ZEND_ASSIGN_OBJ_SPEC_CV_CONST_OP_DATA_CV_HANDLER,
-               ZEND_ASSIGN_OBJ_SPEC_CV_TMPVAR_OP_DATA_CONST_HANDLER,
-               ZEND_ASSIGN_OBJ_SPEC_CV_TMPVAR_OP_DATA_TMP_HANDLER,
-               ZEND_ASSIGN_OBJ_SPEC_CV_TMPVAR_OP_DATA_VAR_HANDLER,
                ZEND_NULL_HANDLER,
-               ZEND_ASSIGN_OBJ_SPEC_CV_TMPVAR_OP_DATA_CV_HANDLER,
-               ZEND_ASSIGN_OBJ_SPEC_CV_TMPVAR_OP_DATA_CONST_HANDLER,
-               ZEND_ASSIGN_OBJ_SPEC_CV_TMPVAR_OP_DATA_TMP_HANDLER,
-               ZEND_ASSIGN_OBJ_SPEC_CV_TMPVAR_OP_DATA_VAR_HANDLER,
                ZEND_NULL_HANDLER,
-               ZEND_ASSIGN_OBJ_SPEC_CV_TMPVAR_OP_DATA_CV_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
-               ZEND_ASSIGN_OBJ_SPEC_CV_CV_OP_DATA_CONST_HANDLER,
-               ZEND_ASSIGN_OBJ_SPEC_CV_CV_OP_DATA_TMP_HANDLER,
-               ZEND_ASSIGN_OBJ_SPEC_CV_CV_OP_DATA_VAR_HANDLER,
                ZEND_NULL_HANDLER,
-               ZEND_ASSIGN_OBJ_SPEC_CV_CV_OP_DATA_CV_HANDLER,
+               ZEND_BIND_STATIC_SPEC_CV_CONST_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
+               ZEND_ADD_LONG_NO_OVERFLOW_SPEC_CONST_TMPVARCV_HANDLER,
+               ZEND_ADD_LONG_NO_OVERFLOW_SPEC_CONST_TMPVARCV_HANDLER,
                ZEND_NULL_HANDLER,
-               ZEND_INSTANCEOF_SPEC_TMPVAR_CONST_HANDLER,
+               ZEND_ADD_LONG_NO_OVERFLOW_SPEC_CONST_TMPVARCV_HANDLER,
                ZEND_NULL_HANDLER,
-               ZEND_INSTANCEOF_SPEC_TMPVAR_VAR_HANDLER,
-               ZEND_INSTANCEOF_SPEC_TMPVAR_UNUSED_HANDLER,
+               ZEND_ADD_LONG_NO_OVERFLOW_SPEC_TMPVARCV_TMPVARCV_HANDLER,
+               ZEND_ADD_LONG_NO_OVERFLOW_SPEC_TMPVARCV_TMPVARCV_HANDLER,
                ZEND_NULL_HANDLER,
-               ZEND_INSTANCEOF_SPEC_TMPVAR_CONST_HANDLER,
+               ZEND_ADD_LONG_NO_OVERFLOW_SPEC_TMPVARCV_TMPVARCV_HANDLER,
                ZEND_NULL_HANDLER,
-               ZEND_INSTANCEOF_SPEC_TMPVAR_VAR_HANDLER,
-               ZEND_INSTANCEOF_SPEC_TMPVAR_UNUSED_HANDLER,
+               ZEND_ADD_LONG_NO_OVERFLOW_SPEC_TMPVARCV_TMPVARCV_HANDLER,
+               ZEND_ADD_LONG_NO_OVERFLOW_SPEC_TMPVARCV_TMPVARCV_HANDLER,
                ZEND_NULL_HANDLER,
+               ZEND_ADD_LONG_NO_OVERFLOW_SPEC_TMPVARCV_TMPVARCV_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
-               ZEND_INSTANCEOF_SPEC_CV_CONST_HANDLER,
                ZEND_NULL_HANDLER,
-               ZEND_INSTANCEOF_SPEC_CV_VAR_HANDLER,
-               ZEND_INSTANCEOF_SPEC_CV_UNUSED_HANDLER,
+               ZEND_ADD_LONG_NO_OVERFLOW_SPEC_TMPVARCV_TMPVARCV_HANDLER,
+               ZEND_ADD_LONG_NO_OVERFLOW_SPEC_TMPVARCV_TMPVARCV_HANDLER,
                ZEND_NULL_HANDLER,
-               ZEND_DECLARE_CLASS_SPEC_HANDLER,
+               ZEND_ADD_LONG_NO_OVERFLOW_SPEC_TMPVARCV_TMPVARCV_HANDLER,
                ZEND_NULL_HANDLER,
+               ZEND_ADD_LONG_SPEC_CONST_TMPVARCV_HANDLER,
+               ZEND_ADD_LONG_SPEC_CONST_TMPVARCV_HANDLER,
                ZEND_NULL_HANDLER,
-               ZEND_DECLARE_INHERITED_CLASS_SPEC_VAR_HANDLER,
+               ZEND_ADD_LONG_SPEC_CONST_TMPVARCV_HANDLER,
                ZEND_NULL_HANDLER,
+               ZEND_ADD_LONG_SPEC_TMPVARCV_TMPVARCV_HANDLER,
+               ZEND_ADD_LONG_SPEC_TMPVARCV_TMPVARCV_HANDLER,
                ZEND_NULL_HANDLER,
-               ZEND_DECLARE_FUNCTION_SPEC_HANDLER,
-               ZEND_YIELD_FROM_SPEC_CONST_HANDLER,
-               ZEND_YIELD_FROM_SPEC_TMP_HANDLER,
-               ZEND_YIELD_FROM_SPEC_VAR_HANDLER,
+               ZEND_ADD_LONG_SPEC_TMPVARCV_TMPVARCV_HANDLER,
                ZEND_NULL_HANDLER,
-               ZEND_YIELD_FROM_SPEC_CV_HANDLER,
-               ZEND_DECLARE_CONST_SPEC_CONST_CONST_HANDLER,
+               ZEND_ADD_LONG_SPEC_TMPVARCV_TMPVARCV_HANDLER,
+               ZEND_ADD_LONG_SPEC_TMPVARCV_TMPVARCV_HANDLER,
                ZEND_NULL_HANDLER,
+               ZEND_ADD_LONG_SPEC_TMPVARCV_TMPVARCV_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
+               ZEND_ADD_LONG_SPEC_TMPVARCV_TMPVARCV_HANDLER,
+               ZEND_ADD_LONG_SPEC_TMPVARCV_TMPVARCV_HANDLER,
                ZEND_NULL_HANDLER,
+               ZEND_ADD_LONG_SPEC_TMPVARCV_TMPVARCV_HANDLER,
                ZEND_NULL_HANDLER,
+               ZEND_ADD_DOUBLE_SPEC_CONST_TMPVARCV_HANDLER,
+               ZEND_ADD_DOUBLE_SPEC_CONST_TMPVARCV_HANDLER,
                ZEND_NULL_HANDLER,
+               ZEND_ADD_DOUBLE_SPEC_CONST_TMPVARCV_HANDLER,
                ZEND_NULL_HANDLER,
+               ZEND_ADD_DOUBLE_SPEC_TMPVARCV_TMPVARCV_HANDLER,
+               ZEND_ADD_DOUBLE_SPEC_TMPVARCV_TMPVARCV_HANDLER,
                ZEND_NULL_HANDLER,
+               ZEND_ADD_DOUBLE_SPEC_TMPVARCV_TMPVARCV_HANDLER,
                ZEND_NULL_HANDLER,
+               ZEND_ADD_DOUBLE_SPEC_TMPVARCV_TMPVARCV_HANDLER,
+               ZEND_ADD_DOUBLE_SPEC_TMPVARCV_TMPVARCV_HANDLER,
                ZEND_NULL_HANDLER,
+               ZEND_ADD_DOUBLE_SPEC_TMPVARCV_TMPVARCV_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
+               ZEND_ADD_DOUBLE_SPEC_TMPVARCV_TMPVARCV_HANDLER,
+               ZEND_ADD_DOUBLE_SPEC_TMPVARCV_TMPVARCV_HANDLER,
                ZEND_NULL_HANDLER,
+               ZEND_ADD_DOUBLE_SPEC_TMPVARCV_TMPVARCV_HANDLER,
                ZEND_NULL_HANDLER,
+               ZEND_SUB_LONG_NO_OVERFLOW_SPEC_CONST_TMPVARCV_HANDLER,
+               ZEND_SUB_LONG_NO_OVERFLOW_SPEC_CONST_TMPVARCV_HANDLER,
                ZEND_NULL_HANDLER,
+               ZEND_SUB_LONG_NO_OVERFLOW_SPEC_CONST_TMPVARCV_HANDLER,
+               ZEND_SUB_LONG_NO_OVERFLOW_SPEC_TMPVARCV_CONST_HANDLER,
+               ZEND_SUB_LONG_NO_OVERFLOW_SPEC_TMPVARCV_TMPVARCV_HANDLER,
+               ZEND_SUB_LONG_NO_OVERFLOW_SPEC_TMPVARCV_TMPVARCV_HANDLER,
                ZEND_NULL_HANDLER,
-               ZEND_ADD_INTERFACE_SPEC_CONST_HANDLER,
+               ZEND_SUB_LONG_NO_OVERFLOW_SPEC_TMPVARCV_TMPVARCV_HANDLER,
+               ZEND_SUB_LONG_NO_OVERFLOW_SPEC_TMPVARCV_CONST_HANDLER,
+               ZEND_SUB_LONG_NO_OVERFLOW_SPEC_TMPVARCV_TMPVARCV_HANDLER,
+               ZEND_SUB_LONG_NO_OVERFLOW_SPEC_TMPVARCV_TMPVARCV_HANDLER,
                ZEND_NULL_HANDLER,
+               ZEND_SUB_LONG_NO_OVERFLOW_SPEC_TMPVARCV_TMPVARCV_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
-               ZEND_DECLARE_INHERITED_CLASS_DELAYED_SPEC_VAR_HANDLER,
+               ZEND_SUB_LONG_NO_OVERFLOW_SPEC_TMPVARCV_CONST_HANDLER,
+               ZEND_SUB_LONG_NO_OVERFLOW_SPEC_TMPVARCV_TMPVARCV_HANDLER,
+               ZEND_SUB_LONG_NO_OVERFLOW_SPEC_TMPVARCV_TMPVARCV_HANDLER,
                ZEND_NULL_HANDLER,
+               ZEND_SUB_LONG_NO_OVERFLOW_SPEC_TMPVARCV_TMPVARCV_HANDLER,
                ZEND_NULL_HANDLER,
-               ZEND_VERIFY_ABSTRACT_CLASS_SPEC_HANDLER,
+               ZEND_SUB_LONG_SPEC_CONST_TMPVARCV_HANDLER,
+               ZEND_SUB_LONG_SPEC_CONST_TMPVARCV_HANDLER,
                ZEND_NULL_HANDLER,
+               ZEND_SUB_LONG_SPEC_CONST_TMPVARCV_HANDLER,
+               ZEND_SUB_LONG_SPEC_TMPVARCV_CONST_HANDLER,
+               ZEND_SUB_LONG_SPEC_TMPVARCV_TMPVARCV_HANDLER,
+               ZEND_SUB_LONG_SPEC_TMPVARCV_TMPVARCV_HANDLER,
                ZEND_NULL_HANDLER,
+               ZEND_SUB_LONG_SPEC_TMPVARCV_TMPVARCV_HANDLER,
+               ZEND_SUB_LONG_SPEC_TMPVARCV_CONST_HANDLER,
+               ZEND_SUB_LONG_SPEC_TMPVARCV_TMPVARCV_HANDLER,
+               ZEND_SUB_LONG_SPEC_TMPVARCV_TMPVARCV_HANDLER,
                ZEND_NULL_HANDLER,
+               ZEND_SUB_LONG_SPEC_TMPVARCV_TMPVARCV_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
+               ZEND_SUB_LONG_SPEC_TMPVARCV_CONST_HANDLER,
+               ZEND_SUB_LONG_SPEC_TMPVARCV_TMPVARCV_HANDLER,
+               ZEND_SUB_LONG_SPEC_TMPVARCV_TMPVARCV_HANDLER,
                ZEND_NULL_HANDLER,
+               ZEND_SUB_LONG_SPEC_TMPVARCV_TMPVARCV_HANDLER,
                ZEND_NULL_HANDLER,
+               ZEND_SUB_DOUBLE_SPEC_CONST_TMPVARCV_HANDLER,
+               ZEND_SUB_DOUBLE_SPEC_CONST_TMPVARCV_HANDLER,
                ZEND_NULL_HANDLER,
+               ZEND_SUB_DOUBLE_SPEC_CONST_TMPVARCV_HANDLER,
+               ZEND_SUB_DOUBLE_SPEC_TMPVARCV_CONST_HANDLER,
+               ZEND_SUB_DOUBLE_SPEC_TMPVARCV_TMPVARCV_HANDLER,
+               ZEND_SUB_DOUBLE_SPEC_TMPVARCV_TMPVARCV_HANDLER,
                ZEND_NULL_HANDLER,
+               ZEND_SUB_DOUBLE_SPEC_TMPVARCV_TMPVARCV_HANDLER,
+               ZEND_SUB_DOUBLE_SPEC_TMPVARCV_CONST_HANDLER,
+               ZEND_SUB_DOUBLE_SPEC_TMPVARCV_TMPVARCV_HANDLER,
+               ZEND_SUB_DOUBLE_SPEC_TMPVARCV_TMPVARCV_HANDLER,
                ZEND_NULL_HANDLER,
+               ZEND_SUB_DOUBLE_SPEC_TMPVARCV_TMPVARCV_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
+               ZEND_SUB_DOUBLE_SPEC_TMPVARCV_CONST_HANDLER,
+               ZEND_SUB_DOUBLE_SPEC_TMPVARCV_TMPVARCV_HANDLER,
+               ZEND_SUB_DOUBLE_SPEC_TMPVARCV_TMPVARCV_HANDLER,
                ZEND_NULL_HANDLER,
+               ZEND_SUB_DOUBLE_SPEC_TMPVARCV_TMPVARCV_HANDLER,
                ZEND_NULL_HANDLER,
+               ZEND_MUL_LONG_NO_OVERFLOW_SPEC_CONST_TMPVARCV_HANDLER,
+               ZEND_MUL_LONG_NO_OVERFLOW_SPEC_CONST_TMPVARCV_HANDLER,
                ZEND_NULL_HANDLER,
+               ZEND_MUL_LONG_NO_OVERFLOW_SPEC_CONST_TMPVARCV_HANDLER,
                ZEND_NULL_HANDLER,
+               ZEND_MUL_LONG_NO_OVERFLOW_SPEC_TMPVARCV_TMPVARCV_HANDLER,
+               ZEND_MUL_LONG_NO_OVERFLOW_SPEC_TMPVARCV_TMPVARCV_HANDLER,
                ZEND_NULL_HANDLER,
+               ZEND_MUL_LONG_NO_OVERFLOW_SPEC_TMPVARCV_TMPVARCV_HANDLER,
                ZEND_NULL_HANDLER,
+               ZEND_MUL_LONG_NO_OVERFLOW_SPEC_TMPVARCV_TMPVARCV_HANDLER,
+               ZEND_MUL_LONG_NO_OVERFLOW_SPEC_TMPVARCV_TMPVARCV_HANDLER,
                ZEND_NULL_HANDLER,
+               ZEND_MUL_LONG_NO_OVERFLOW_SPEC_TMPVARCV_TMPVARCV_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
+               ZEND_MUL_LONG_NO_OVERFLOW_SPEC_TMPVARCV_TMPVARCV_HANDLER,
+               ZEND_MUL_LONG_NO_OVERFLOW_SPEC_TMPVARCV_TMPVARCV_HANDLER,
                ZEND_NULL_HANDLER,
+               ZEND_MUL_LONG_NO_OVERFLOW_SPEC_TMPVARCV_TMPVARCV_HANDLER,
                ZEND_NULL_HANDLER,
+               ZEND_MUL_LONG_SPEC_CONST_TMPVARCV_HANDLER,
+               ZEND_MUL_LONG_SPEC_CONST_TMPVARCV_HANDLER,
                ZEND_NULL_HANDLER,
+               ZEND_MUL_LONG_SPEC_CONST_TMPVARCV_HANDLER,
                ZEND_NULL_HANDLER,
+               ZEND_MUL_LONG_SPEC_TMPVARCV_TMPVARCV_HANDLER,
+               ZEND_MUL_LONG_SPEC_TMPVARCV_TMPVARCV_HANDLER,
                ZEND_NULL_HANDLER,
+               ZEND_MUL_LONG_SPEC_TMPVARCV_TMPVARCV_HANDLER,
                ZEND_NULL_HANDLER,
+               ZEND_MUL_LONG_SPEC_TMPVARCV_TMPVARCV_HANDLER,
+               ZEND_MUL_LONG_SPEC_TMPVARCV_TMPVARCV_HANDLER,
                ZEND_NULL_HANDLER,
+               ZEND_MUL_LONG_SPEC_TMPVARCV_TMPVARCV_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
+               ZEND_MUL_LONG_SPEC_TMPVARCV_TMPVARCV_HANDLER,
+               ZEND_MUL_LONG_SPEC_TMPVARCV_TMPVARCV_HANDLER,
                ZEND_NULL_HANDLER,
+               ZEND_MUL_LONG_SPEC_TMPVARCV_TMPVARCV_HANDLER,
                ZEND_NULL_HANDLER,
+               ZEND_MUL_DOUBLE_SPEC_CONST_TMPVARCV_HANDLER,
+               ZEND_MUL_DOUBLE_SPEC_CONST_TMPVARCV_HANDLER,
                ZEND_NULL_HANDLER,
+               ZEND_MUL_DOUBLE_SPEC_CONST_TMPVARCV_HANDLER,
                ZEND_NULL_HANDLER,
+               ZEND_MUL_DOUBLE_SPEC_TMPVARCV_TMPVARCV_HANDLER,
+               ZEND_MUL_DOUBLE_SPEC_TMPVARCV_TMPVARCV_HANDLER,
                ZEND_NULL_HANDLER,
+               ZEND_MUL_DOUBLE_SPEC_TMPVARCV_TMPVARCV_HANDLER,
                ZEND_NULL_HANDLER,
-               ZEND_ASSIGN_DIM_SPEC_VAR_CONST_OP_DATA_CONST_HANDLER,
-               ZEND_ASSIGN_DIM_SPEC_VAR_CONST_OP_DATA_TMP_HANDLER,
-               ZEND_ASSIGN_DIM_SPEC_VAR_CONST_OP_DATA_VAR_HANDLER,
+               ZEND_MUL_DOUBLE_SPEC_TMPVARCV_TMPVARCV_HANDLER,
+               ZEND_MUL_DOUBLE_SPEC_TMPVARCV_TMPVARCV_HANDLER,
                ZEND_NULL_HANDLER,
-               ZEND_ASSIGN_DIM_SPEC_VAR_CONST_OP_DATA_CV_HANDLER,
-               ZEND_ASSIGN_DIM_SPEC_VAR_TMPVAR_OP_DATA_CONST_HANDLER,
-               ZEND_ASSIGN_DIM_SPEC_VAR_TMPVAR_OP_DATA_TMP_HANDLER,
-               ZEND_ASSIGN_DIM_SPEC_VAR_TMPVAR_OP_DATA_VAR_HANDLER,
+               ZEND_MUL_DOUBLE_SPEC_TMPVARCV_TMPVARCV_HANDLER,
                ZEND_NULL_HANDLER,
-               ZEND_ASSIGN_DIM_SPEC_VAR_TMPVAR_OP_DATA_CV_HANDLER,
-               ZEND_ASSIGN_DIM_SPEC_VAR_TMPVAR_OP_DATA_CONST_HANDLER,
-               ZEND_ASSIGN_DIM_SPEC_VAR_TMPVAR_OP_DATA_TMP_HANDLER,
-               ZEND_ASSIGN_DIM_SPEC_VAR_TMPVAR_OP_DATA_VAR_HANDLER,
                ZEND_NULL_HANDLER,
-               ZEND_ASSIGN_DIM_SPEC_VAR_TMPVAR_OP_DATA_CV_HANDLER,
-               ZEND_ASSIGN_DIM_SPEC_VAR_UNUSED_OP_DATA_CONST_HANDLER,
-               ZEND_ASSIGN_DIM_SPEC_VAR_UNUSED_OP_DATA_TMP_HANDLER,
-               ZEND_ASSIGN_DIM_SPEC_VAR_UNUSED_OP_DATA_VAR_HANDLER,
                ZEND_NULL_HANDLER,
-               ZEND_ASSIGN_DIM_SPEC_VAR_UNUSED_OP_DATA_CV_HANDLER,
-               ZEND_ASSIGN_DIM_SPEC_VAR_CV_OP_DATA_CONST_HANDLER,
-               ZEND_ASSIGN_DIM_SPEC_VAR_CV_OP_DATA_TMP_HANDLER,
-               ZEND_ASSIGN_DIM_SPEC_VAR_CV_OP_DATA_VAR_HANDLER,
                ZEND_NULL_HANDLER,
-               ZEND_ASSIGN_DIM_SPEC_VAR_CV_OP_DATA_CV_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
+               ZEND_MUL_DOUBLE_SPEC_TMPVARCV_TMPVARCV_HANDLER,
+               ZEND_MUL_DOUBLE_SPEC_TMPVARCV_TMPVARCV_HANDLER,
                ZEND_NULL_HANDLER,
+               ZEND_MUL_DOUBLE_SPEC_TMPVARCV_TMPVARCV_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
+               ZEND_IS_EQUAL_LONG_SPEC_CONST_TMPVARCV_HANDLER,
+               ZEND_IS_EQUAL_LONG_SPEC_CONST_TMPVARCV_JMPZ_HANDLER,
+               ZEND_IS_EQUAL_LONG_SPEC_CONST_TMPVARCV_JMPNZ_HANDLER,
+               ZEND_IS_EQUAL_LONG_SPEC_CONST_TMPVARCV_HANDLER,
+               ZEND_IS_EQUAL_LONG_SPEC_CONST_TMPVARCV_JMPZ_HANDLER,
+               ZEND_IS_EQUAL_LONG_SPEC_CONST_TMPVARCV_JMPNZ_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
+               ZEND_IS_EQUAL_LONG_SPEC_CONST_TMPVARCV_HANDLER,
+               ZEND_IS_EQUAL_LONG_SPEC_CONST_TMPVARCV_JMPZ_HANDLER,
+               ZEND_IS_EQUAL_LONG_SPEC_CONST_TMPVARCV_JMPNZ_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
+               ZEND_IS_EQUAL_LONG_SPEC_TMPVARCV_TMPVARCV_HANDLER,
+               ZEND_IS_EQUAL_LONG_SPEC_TMPVARCV_TMPVARCV_JMPZ_HANDLER,
+               ZEND_IS_EQUAL_LONG_SPEC_TMPVARCV_TMPVARCV_JMPNZ_HANDLER,
+               ZEND_IS_EQUAL_LONG_SPEC_TMPVARCV_TMPVARCV_HANDLER,
+               ZEND_IS_EQUAL_LONG_SPEC_TMPVARCV_TMPVARCV_JMPZ_HANDLER,
+               ZEND_IS_EQUAL_LONG_SPEC_TMPVARCV_TMPVARCV_JMPNZ_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
+               ZEND_IS_EQUAL_LONG_SPEC_TMPVARCV_TMPVARCV_HANDLER,
+               ZEND_IS_EQUAL_LONG_SPEC_TMPVARCV_TMPVARCV_JMPZ_HANDLER,
+               ZEND_IS_EQUAL_LONG_SPEC_TMPVARCV_TMPVARCV_JMPNZ_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
+               ZEND_IS_EQUAL_LONG_SPEC_TMPVARCV_TMPVARCV_HANDLER,
+               ZEND_IS_EQUAL_LONG_SPEC_TMPVARCV_TMPVARCV_JMPZ_HANDLER,
+               ZEND_IS_EQUAL_LONG_SPEC_TMPVARCV_TMPVARCV_JMPNZ_HANDLER,
+               ZEND_IS_EQUAL_LONG_SPEC_TMPVARCV_TMPVARCV_HANDLER,
+               ZEND_IS_EQUAL_LONG_SPEC_TMPVARCV_TMPVARCV_JMPZ_HANDLER,
+               ZEND_IS_EQUAL_LONG_SPEC_TMPVARCV_TMPVARCV_JMPNZ_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
+               ZEND_IS_EQUAL_LONG_SPEC_TMPVARCV_TMPVARCV_HANDLER,
+               ZEND_IS_EQUAL_LONG_SPEC_TMPVARCV_TMPVARCV_JMPZ_HANDLER,
+               ZEND_IS_EQUAL_LONG_SPEC_TMPVARCV_TMPVARCV_JMPNZ_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
-               ZEND_ASSIGN_DIM_SPEC_CV_CONST_OP_DATA_CONST_HANDLER,
-               ZEND_ASSIGN_DIM_SPEC_CV_CONST_OP_DATA_TMP_HANDLER,
-               ZEND_ASSIGN_DIM_SPEC_CV_CONST_OP_DATA_VAR_HANDLER,
                ZEND_NULL_HANDLER,
-               ZEND_ASSIGN_DIM_SPEC_CV_CONST_OP_DATA_CV_HANDLER,
-               ZEND_ASSIGN_DIM_SPEC_CV_TMPVAR_OP_DATA_CONST_HANDLER,
-               ZEND_ASSIGN_DIM_SPEC_CV_TMPVAR_OP_DATA_TMP_HANDLER,
-               ZEND_ASSIGN_DIM_SPEC_CV_TMPVAR_OP_DATA_VAR_HANDLER,
                ZEND_NULL_HANDLER,
-               ZEND_ASSIGN_DIM_SPEC_CV_TMPVAR_OP_DATA_CV_HANDLER,
-               ZEND_ASSIGN_DIM_SPEC_CV_TMPVAR_OP_DATA_CONST_HANDLER,
-               ZEND_ASSIGN_DIM_SPEC_CV_TMPVAR_OP_DATA_TMP_HANDLER,
-               ZEND_ASSIGN_DIM_SPEC_CV_TMPVAR_OP_DATA_VAR_HANDLER,
                ZEND_NULL_HANDLER,
-               ZEND_ASSIGN_DIM_SPEC_CV_TMPVAR_OP_DATA_CV_HANDLER,
-               ZEND_ASSIGN_DIM_SPEC_CV_UNUSED_OP_DATA_CONST_HANDLER,
-               ZEND_ASSIGN_DIM_SPEC_CV_UNUSED_OP_DATA_TMP_HANDLER,
-               ZEND_ASSIGN_DIM_SPEC_CV_UNUSED_OP_DATA_VAR_HANDLER,
                ZEND_NULL_HANDLER,
-               ZEND_ASSIGN_DIM_SPEC_CV_UNUSED_OP_DATA_CV_HANDLER,
-               ZEND_ASSIGN_DIM_SPEC_CV_CV_OP_DATA_CONST_HANDLER,
-               ZEND_ASSIGN_DIM_SPEC_CV_CV_OP_DATA_TMP_HANDLER,
-               ZEND_ASSIGN_DIM_SPEC_CV_CV_OP_DATA_VAR_HANDLER,
                ZEND_NULL_HANDLER,
-               ZEND_ASSIGN_DIM_SPEC_CV_CV_OP_DATA_CV_HANDLER,
-               ZEND_ISSET_ISEMPTY_PROP_OBJ_SPEC_CONST_CONST_HANDLER,
-               ZEND_ISSET_ISEMPTY_PROP_OBJ_SPEC_CONST_TMPVAR_HANDLER,
-               ZEND_ISSET_ISEMPTY_PROP_OBJ_SPEC_CONST_TMPVAR_HANDLER,
                ZEND_NULL_HANDLER,
-               ZEND_ISSET_ISEMPTY_PROP_OBJ_SPEC_CONST_CV_HANDLER,
-               ZEND_ISSET_ISEMPTY_PROP_OBJ_SPEC_TMPVAR_CONST_HANDLER,
-               ZEND_ISSET_ISEMPTY_PROP_OBJ_SPEC_TMPVAR_TMPVAR_HANDLER,
-               ZEND_ISSET_ISEMPTY_PROP_OBJ_SPEC_TMPVAR_TMPVAR_HANDLER,
                ZEND_NULL_HANDLER,
-               ZEND_ISSET_ISEMPTY_PROP_OBJ_SPEC_TMPVAR_CV_HANDLER,
-               ZEND_ISSET_ISEMPTY_PROP_OBJ_SPEC_TMPVAR_CONST_HANDLER,
-               ZEND_ISSET_ISEMPTY_PROP_OBJ_SPEC_TMPVAR_TMPVAR_HANDLER,
-               ZEND_ISSET_ISEMPTY_PROP_OBJ_SPEC_TMPVAR_TMPVAR_HANDLER,
                ZEND_NULL_HANDLER,
-               ZEND_ISSET_ISEMPTY_PROP_OBJ_SPEC_TMPVAR_CV_HANDLER,
-               ZEND_ISSET_ISEMPTY_PROP_OBJ_SPEC_UNUSED_CONST_HANDLER,
-               ZEND_ISSET_ISEMPTY_PROP_OBJ_SPEC_UNUSED_TMPVAR_HANDLER,
-               ZEND_ISSET_ISEMPTY_PROP_OBJ_SPEC_UNUSED_TMPVAR_HANDLER,
                ZEND_NULL_HANDLER,
-               ZEND_ISSET_ISEMPTY_PROP_OBJ_SPEC_UNUSED_CV_HANDLER,
-               ZEND_ISSET_ISEMPTY_PROP_OBJ_SPEC_CV_CONST_HANDLER,
-               ZEND_ISSET_ISEMPTY_PROP_OBJ_SPEC_CV_TMPVAR_HANDLER,
-               ZEND_ISSET_ISEMPTY_PROP_OBJ_SPEC_CV_TMPVAR_HANDLER,
                ZEND_NULL_HANDLER,
-               ZEND_ISSET_ISEMPTY_PROP_OBJ_SPEC_CV_CV_HANDLER,
-               ZEND_HANDLE_EXCEPTION_SPEC_HANDLER,
-               ZEND_USER_OPCODE_SPEC_HANDLER,
-               ZEND_ASSERT_CHECK_SPEC_HANDLER,
-               ZEND_JMP_SET_SPEC_CONST_HANDLER,
-               ZEND_JMP_SET_SPEC_TMP_HANDLER,
-               ZEND_JMP_SET_SPEC_VAR_HANDLER,
                ZEND_NULL_HANDLER,
-               ZEND_JMP_SET_SPEC_CV_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
-               ZEND_DECLARE_LAMBDA_FUNCTION_SPEC_CONST_UNUSED_HANDLER,
+               ZEND_IS_EQUAL_LONG_SPEC_TMPVARCV_TMPVARCV_HANDLER,
+               ZEND_IS_EQUAL_LONG_SPEC_TMPVARCV_TMPVARCV_JMPZ_HANDLER,
+               ZEND_IS_EQUAL_LONG_SPEC_TMPVARCV_TMPVARCV_JMPNZ_HANDLER,
+               ZEND_IS_EQUAL_LONG_SPEC_TMPVARCV_TMPVARCV_HANDLER,
+               ZEND_IS_EQUAL_LONG_SPEC_TMPVARCV_TMPVARCV_JMPZ_HANDLER,
+               ZEND_IS_EQUAL_LONG_SPEC_TMPVARCV_TMPVARCV_JMPNZ_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
+               ZEND_IS_EQUAL_LONG_SPEC_TMPVARCV_TMPVARCV_HANDLER,
+               ZEND_IS_EQUAL_LONG_SPEC_TMPVARCV_TMPVARCV_JMPZ_HANDLER,
+               ZEND_IS_EQUAL_LONG_SPEC_TMPVARCV_TMPVARCV_JMPNZ_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
+               ZEND_IS_EQUAL_DOUBLE_SPEC_CONST_TMPVARCV_HANDLER,
+               ZEND_IS_EQUAL_DOUBLE_SPEC_CONST_TMPVARCV_JMPZ_HANDLER,
+               ZEND_IS_EQUAL_DOUBLE_SPEC_CONST_TMPVARCV_JMPNZ_HANDLER,
+               ZEND_IS_EQUAL_DOUBLE_SPEC_CONST_TMPVARCV_HANDLER,
+               ZEND_IS_EQUAL_DOUBLE_SPEC_CONST_TMPVARCV_JMPZ_HANDLER,
+               ZEND_IS_EQUAL_DOUBLE_SPEC_CONST_TMPVARCV_JMPNZ_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
+               ZEND_IS_EQUAL_DOUBLE_SPEC_CONST_TMPVARCV_HANDLER,
+               ZEND_IS_EQUAL_DOUBLE_SPEC_CONST_TMPVARCV_JMPZ_HANDLER,
+               ZEND_IS_EQUAL_DOUBLE_SPEC_CONST_TMPVARCV_JMPNZ_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
+               ZEND_IS_EQUAL_DOUBLE_SPEC_TMPVARCV_TMPVARCV_HANDLER,
+               ZEND_IS_EQUAL_DOUBLE_SPEC_TMPVARCV_TMPVARCV_JMPZ_HANDLER,
+               ZEND_IS_EQUAL_DOUBLE_SPEC_TMPVARCV_TMPVARCV_JMPNZ_HANDLER,
+               ZEND_IS_EQUAL_DOUBLE_SPEC_TMPVARCV_TMPVARCV_HANDLER,
+               ZEND_IS_EQUAL_DOUBLE_SPEC_TMPVARCV_TMPVARCV_JMPZ_HANDLER,
+               ZEND_IS_EQUAL_DOUBLE_SPEC_TMPVARCV_TMPVARCV_JMPNZ_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
+               ZEND_IS_EQUAL_DOUBLE_SPEC_TMPVARCV_TMPVARCV_HANDLER,
+               ZEND_IS_EQUAL_DOUBLE_SPEC_TMPVARCV_TMPVARCV_JMPZ_HANDLER,
+               ZEND_IS_EQUAL_DOUBLE_SPEC_TMPVARCV_TMPVARCV_JMPNZ_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
+               ZEND_IS_EQUAL_DOUBLE_SPEC_TMPVARCV_TMPVARCV_HANDLER,
+               ZEND_IS_EQUAL_DOUBLE_SPEC_TMPVARCV_TMPVARCV_JMPZ_HANDLER,
+               ZEND_IS_EQUAL_DOUBLE_SPEC_TMPVARCV_TMPVARCV_JMPNZ_HANDLER,
+               ZEND_IS_EQUAL_DOUBLE_SPEC_TMPVARCV_TMPVARCV_HANDLER,
+               ZEND_IS_EQUAL_DOUBLE_SPEC_TMPVARCV_TMPVARCV_JMPZ_HANDLER,
+               ZEND_IS_EQUAL_DOUBLE_SPEC_TMPVARCV_TMPVARCV_JMPNZ_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
-               ZEND_ADD_TRAIT_SPEC_HANDLER,
-               ZEND_BIND_TRAITS_SPEC_HANDLER,
+               ZEND_IS_EQUAL_DOUBLE_SPEC_TMPVARCV_TMPVARCV_HANDLER,
+               ZEND_IS_EQUAL_DOUBLE_SPEC_TMPVARCV_TMPVARCV_JMPZ_HANDLER,
+               ZEND_IS_EQUAL_DOUBLE_SPEC_TMPVARCV_TMPVARCV_JMPNZ_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
@@ -56921,105 +59079,73 @@ void zend_init_opcodes_handlers(void)
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
-               ZEND_SEPARATE_SPEC_VAR_UNUSED_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
+               ZEND_IS_EQUAL_DOUBLE_SPEC_TMPVARCV_TMPVARCV_HANDLER,
+               ZEND_IS_EQUAL_DOUBLE_SPEC_TMPVARCV_TMPVARCV_JMPZ_HANDLER,
+               ZEND_IS_EQUAL_DOUBLE_SPEC_TMPVARCV_TMPVARCV_JMPNZ_HANDLER,
+               ZEND_IS_EQUAL_DOUBLE_SPEC_TMPVARCV_TMPVARCV_HANDLER,
+               ZEND_IS_EQUAL_DOUBLE_SPEC_TMPVARCV_TMPVARCV_JMPZ_HANDLER,
+               ZEND_IS_EQUAL_DOUBLE_SPEC_TMPVARCV_TMPVARCV_JMPNZ_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
+               ZEND_IS_EQUAL_DOUBLE_SPEC_TMPVARCV_TMPVARCV_HANDLER,
+               ZEND_IS_EQUAL_DOUBLE_SPEC_TMPVARCV_TMPVARCV_JMPZ_HANDLER,
+               ZEND_IS_EQUAL_DOUBLE_SPEC_TMPVARCV_TMPVARCV_JMPNZ_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
-               ZEND_FETCH_CLASS_NAME_SPEC_HANDLER,
-               ZEND_CALL_TRAMPOLINE_SPEC_HANDLER,
-               ZEND_DISCARD_EXCEPTION_SPEC_HANDLER,
-               ZEND_YIELD_SPEC_CONST_CONST_HANDLER,
-               ZEND_YIELD_SPEC_CONST_TMP_HANDLER,
-               ZEND_YIELD_SPEC_CONST_VAR_HANDLER,
-               ZEND_YIELD_SPEC_CONST_UNUSED_HANDLER,
-               ZEND_YIELD_SPEC_CONST_CV_HANDLER,
-               ZEND_YIELD_SPEC_TMP_CONST_HANDLER,
-               ZEND_YIELD_SPEC_TMP_TMP_HANDLER,
-               ZEND_YIELD_SPEC_TMP_VAR_HANDLER,
-               ZEND_YIELD_SPEC_TMP_UNUSED_HANDLER,
-               ZEND_YIELD_SPEC_TMP_CV_HANDLER,
-               ZEND_YIELD_SPEC_VAR_CONST_HANDLER,
-               ZEND_YIELD_SPEC_VAR_TMP_HANDLER,
-               ZEND_YIELD_SPEC_VAR_VAR_HANDLER,
-               ZEND_YIELD_SPEC_VAR_UNUSED_HANDLER,
-               ZEND_YIELD_SPEC_VAR_CV_HANDLER,
-               ZEND_YIELD_SPEC_UNUSED_CONST_HANDLER,
-               ZEND_YIELD_SPEC_UNUSED_TMP_HANDLER,
-               ZEND_YIELD_SPEC_UNUSED_VAR_HANDLER,
-               ZEND_YIELD_SPEC_UNUSED_UNUSED_HANDLER,
-               ZEND_YIELD_SPEC_UNUSED_CV_HANDLER,
-               ZEND_YIELD_SPEC_CV_CONST_HANDLER,
-               ZEND_YIELD_SPEC_CV_TMP_HANDLER,
-               ZEND_YIELD_SPEC_CV_VAR_HANDLER,
-               ZEND_YIELD_SPEC_CV_UNUSED_HANDLER,
-               ZEND_YIELD_SPEC_CV_CV_HANDLER,
-               ZEND_GENERATOR_RETURN_SPEC_CONST_HANDLER,
-               ZEND_GENERATOR_RETURN_SPEC_TMP_HANDLER,
-               ZEND_GENERATOR_RETURN_SPEC_VAR_HANDLER,
+               ZEND_IS_NOT_EQUAL_LONG_SPEC_CONST_TMPVARCV_HANDLER,
+               ZEND_IS_NOT_EQUAL_LONG_SPEC_CONST_TMPVARCV_JMPZ_HANDLER,
+               ZEND_IS_NOT_EQUAL_LONG_SPEC_CONST_TMPVARCV_JMPNZ_HANDLER,
+               ZEND_IS_NOT_EQUAL_LONG_SPEC_CONST_TMPVARCV_HANDLER,
+               ZEND_IS_NOT_EQUAL_LONG_SPEC_CONST_TMPVARCV_JMPZ_HANDLER,
+               ZEND_IS_NOT_EQUAL_LONG_SPEC_CONST_TMPVARCV_JMPNZ_HANDLER,
                ZEND_NULL_HANDLER,
-               ZEND_GENERATOR_RETURN_SPEC_CV_HANDLER,
-               ZEND_FAST_CALL_SPEC_HANDLER,
-               ZEND_FAST_RET_SPEC_HANDLER,
-               ZEND_RECV_VARIADIC_SPEC_HANDLER,
-               ZEND_SEND_UNPACK_SPEC_HANDLER,
-               ZEND_POW_SPEC_CONST_CONST_HANDLER,
-               ZEND_POW_SPEC_CONST_TMPVAR_HANDLER,
-               ZEND_POW_SPEC_CONST_TMPVAR_HANDLER,
                ZEND_NULL_HANDLER,
-               ZEND_POW_SPEC_CONST_CV_HANDLER,
-               ZEND_POW_SPEC_TMPVAR_CONST_HANDLER,
-               ZEND_POW_SPEC_TMPVAR_TMPVAR_HANDLER,
-               ZEND_POW_SPEC_TMPVAR_TMPVAR_HANDLER,
                ZEND_NULL_HANDLER,
-               ZEND_POW_SPEC_TMPVAR_CV_HANDLER,
-               ZEND_POW_SPEC_TMPVAR_CONST_HANDLER,
-               ZEND_POW_SPEC_TMPVAR_TMPVAR_HANDLER,
-               ZEND_POW_SPEC_TMPVAR_TMPVAR_HANDLER,
+               ZEND_IS_NOT_EQUAL_LONG_SPEC_CONST_TMPVARCV_HANDLER,
+               ZEND_IS_NOT_EQUAL_LONG_SPEC_CONST_TMPVARCV_JMPZ_HANDLER,
+               ZEND_IS_NOT_EQUAL_LONG_SPEC_CONST_TMPVARCV_JMPNZ_HANDLER,
                ZEND_NULL_HANDLER,
-               ZEND_POW_SPEC_TMPVAR_CV_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
+               ZEND_IS_NOT_EQUAL_LONG_SPEC_TMPVARCV_TMPVARCV_HANDLER,
+               ZEND_IS_NOT_EQUAL_LONG_SPEC_TMPVARCV_TMPVARCV_JMPZ_HANDLER,
+               ZEND_IS_NOT_EQUAL_LONG_SPEC_TMPVARCV_TMPVARCV_JMPNZ_HANDLER,
+               ZEND_IS_NOT_EQUAL_LONG_SPEC_TMPVARCV_TMPVARCV_HANDLER,
+               ZEND_IS_NOT_EQUAL_LONG_SPEC_TMPVARCV_TMPVARCV_JMPZ_HANDLER,
+               ZEND_IS_NOT_EQUAL_LONG_SPEC_TMPVARCV_TMPVARCV_JMPNZ_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
-               ZEND_POW_SPEC_CV_CONST_HANDLER,
-               ZEND_POW_SPEC_CV_TMPVAR_HANDLER,
-               ZEND_POW_SPEC_CV_TMPVAR_HANDLER,
+               ZEND_IS_NOT_EQUAL_LONG_SPEC_TMPVARCV_TMPVARCV_HANDLER,
+               ZEND_IS_NOT_EQUAL_LONG_SPEC_TMPVARCV_TMPVARCV_JMPZ_HANDLER,
+               ZEND_IS_NOT_EQUAL_LONG_SPEC_TMPVARCV_TMPVARCV_JMPNZ_HANDLER,
                ZEND_NULL_HANDLER,
-               ZEND_POW_SPEC_CV_CV_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
+               ZEND_IS_NOT_EQUAL_LONG_SPEC_TMPVARCV_TMPVARCV_HANDLER,
+               ZEND_IS_NOT_EQUAL_LONG_SPEC_TMPVARCV_TMPVARCV_JMPZ_HANDLER,
+               ZEND_IS_NOT_EQUAL_LONG_SPEC_TMPVARCV_TMPVARCV_JMPNZ_HANDLER,
+               ZEND_IS_NOT_EQUAL_LONG_SPEC_TMPVARCV_TMPVARCV_HANDLER,
+               ZEND_IS_NOT_EQUAL_LONG_SPEC_TMPVARCV_TMPVARCV_JMPZ_HANDLER,
+               ZEND_IS_NOT_EQUAL_LONG_SPEC_TMPVARCV_TMPVARCV_JMPNZ_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
+               ZEND_IS_NOT_EQUAL_LONG_SPEC_TMPVARCV_TMPVARCV_HANDLER,
+               ZEND_IS_NOT_EQUAL_LONG_SPEC_TMPVARCV_TMPVARCV_JMPZ_HANDLER,
+               ZEND_IS_NOT_EQUAL_LONG_SPEC_TMPVARCV_TMPVARCV_JMPNZ_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
-               ZEND_ASSIGN_POW_SPEC_VAR_CONST_HANDLER,
-               ZEND_ASSIGN_POW_SPEC_VAR_TMPVAR_HANDLER,
-               ZEND_ASSIGN_POW_SPEC_VAR_TMPVAR_HANDLER,
-               ZEND_ASSIGN_POW_SPEC_VAR_UNUSED_HANDLER,
-               ZEND_ASSIGN_POW_SPEC_VAR_CV_HANDLER,
-               ZEND_ASSIGN_POW_SPEC_UNUSED_CONST_HANDLER,
-               ZEND_ASSIGN_POW_SPEC_UNUSED_TMPVAR_HANDLER,
-               ZEND_ASSIGN_POW_SPEC_UNUSED_TMPVAR_HANDLER,
-               ZEND_ASSIGN_POW_SPEC_UNUSED_UNUSED_HANDLER,
-               ZEND_ASSIGN_POW_SPEC_UNUSED_CV_HANDLER,
-               ZEND_ASSIGN_POW_SPEC_CV_CONST_HANDLER,
-               ZEND_ASSIGN_POW_SPEC_CV_TMPVAR_HANDLER,
-               ZEND_ASSIGN_POW_SPEC_CV_TMPVAR_HANDLER,
-               ZEND_ASSIGN_POW_SPEC_CV_UNUSED_HANDLER,
-               ZEND_ASSIGN_POW_SPEC_CV_CV_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
@@ -57033,272 +59159,363 @@ void zend_init_opcodes_handlers(void)
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
+               ZEND_IS_NOT_EQUAL_LONG_SPEC_TMPVARCV_TMPVARCV_HANDLER,
+               ZEND_IS_NOT_EQUAL_LONG_SPEC_TMPVARCV_TMPVARCV_JMPZ_HANDLER,
+               ZEND_IS_NOT_EQUAL_LONG_SPEC_TMPVARCV_TMPVARCV_JMPNZ_HANDLER,
+               ZEND_IS_NOT_EQUAL_LONG_SPEC_TMPVARCV_TMPVARCV_HANDLER,
+               ZEND_IS_NOT_EQUAL_LONG_SPEC_TMPVARCV_TMPVARCV_JMPZ_HANDLER,
+               ZEND_IS_NOT_EQUAL_LONG_SPEC_TMPVARCV_TMPVARCV_JMPNZ_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
+               ZEND_IS_NOT_EQUAL_LONG_SPEC_TMPVARCV_TMPVARCV_HANDLER,
+               ZEND_IS_NOT_EQUAL_LONG_SPEC_TMPVARCV_TMPVARCV_JMPZ_HANDLER,
+               ZEND_IS_NOT_EQUAL_LONG_SPEC_TMPVARCV_TMPVARCV_JMPNZ_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
+               ZEND_IS_NOT_EQUAL_DOUBLE_SPEC_CONST_TMPVARCV_HANDLER,
+               ZEND_IS_NOT_EQUAL_DOUBLE_SPEC_CONST_TMPVARCV_JMPZ_HANDLER,
+               ZEND_IS_NOT_EQUAL_DOUBLE_SPEC_CONST_TMPVARCV_JMPNZ_HANDLER,
+               ZEND_IS_NOT_EQUAL_DOUBLE_SPEC_CONST_TMPVARCV_HANDLER,
+               ZEND_IS_NOT_EQUAL_DOUBLE_SPEC_CONST_TMPVARCV_JMPZ_HANDLER,
+               ZEND_IS_NOT_EQUAL_DOUBLE_SPEC_CONST_TMPVARCV_JMPNZ_HANDLER,
                ZEND_NULL_HANDLER,
-               ZEND_BIND_GLOBAL_SPEC_CV_CONST_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
+               ZEND_IS_NOT_EQUAL_DOUBLE_SPEC_CONST_TMPVARCV_HANDLER,
+               ZEND_IS_NOT_EQUAL_DOUBLE_SPEC_CONST_TMPVARCV_JMPZ_HANDLER,
+               ZEND_IS_NOT_EQUAL_DOUBLE_SPEC_CONST_TMPVARCV_JMPNZ_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
-               ZEND_COALESCE_SPEC_CONST_HANDLER,
-               ZEND_COALESCE_SPEC_TMP_HANDLER,
-               ZEND_COALESCE_SPEC_VAR_HANDLER,
                ZEND_NULL_HANDLER,
-               ZEND_COALESCE_SPEC_CV_HANDLER,
-               ZEND_SPACESHIP_SPEC_CONST_CONST_HANDLER,
-               ZEND_SPACESHIP_SPEC_CONST_TMPVAR_HANDLER,
-               ZEND_SPACESHIP_SPEC_CONST_TMPVAR_HANDLER,
+               ZEND_IS_NOT_EQUAL_DOUBLE_SPEC_TMPVARCV_TMPVARCV_HANDLER,
+               ZEND_IS_NOT_EQUAL_DOUBLE_SPEC_TMPVARCV_TMPVARCV_JMPZ_HANDLER,
+               ZEND_IS_NOT_EQUAL_DOUBLE_SPEC_TMPVARCV_TMPVARCV_JMPNZ_HANDLER,
+               ZEND_IS_NOT_EQUAL_DOUBLE_SPEC_TMPVARCV_TMPVARCV_HANDLER,
+               ZEND_IS_NOT_EQUAL_DOUBLE_SPEC_TMPVARCV_TMPVARCV_JMPZ_HANDLER,
+               ZEND_IS_NOT_EQUAL_DOUBLE_SPEC_TMPVARCV_TMPVARCV_JMPNZ_HANDLER,
                ZEND_NULL_HANDLER,
-               ZEND_SPACESHIP_SPEC_CONST_CV_HANDLER,
-               ZEND_SPACESHIP_SPEC_TMPVAR_CONST_HANDLER,
-               ZEND_SPACESHIP_SPEC_TMPVAR_TMPVAR_HANDLER,
-               ZEND_SPACESHIP_SPEC_TMPVAR_TMPVAR_HANDLER,
                ZEND_NULL_HANDLER,
-               ZEND_SPACESHIP_SPEC_TMPVAR_CV_HANDLER,
-               ZEND_SPACESHIP_SPEC_TMPVAR_CONST_HANDLER,
-               ZEND_SPACESHIP_SPEC_TMPVAR_TMPVAR_HANDLER,
-               ZEND_SPACESHIP_SPEC_TMPVAR_TMPVAR_HANDLER,
                ZEND_NULL_HANDLER,
-               ZEND_SPACESHIP_SPEC_TMPVAR_CV_HANDLER,
+               ZEND_IS_NOT_EQUAL_DOUBLE_SPEC_TMPVARCV_TMPVARCV_HANDLER,
+               ZEND_IS_NOT_EQUAL_DOUBLE_SPEC_TMPVARCV_TMPVARCV_JMPZ_HANDLER,
+               ZEND_IS_NOT_EQUAL_DOUBLE_SPEC_TMPVARCV_TMPVARCV_JMPNZ_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
+               ZEND_IS_NOT_EQUAL_DOUBLE_SPEC_TMPVARCV_TMPVARCV_HANDLER,
+               ZEND_IS_NOT_EQUAL_DOUBLE_SPEC_TMPVARCV_TMPVARCV_JMPZ_HANDLER,
+               ZEND_IS_NOT_EQUAL_DOUBLE_SPEC_TMPVARCV_TMPVARCV_JMPNZ_HANDLER,
+               ZEND_IS_NOT_EQUAL_DOUBLE_SPEC_TMPVARCV_TMPVARCV_HANDLER,
+               ZEND_IS_NOT_EQUAL_DOUBLE_SPEC_TMPVARCV_TMPVARCV_JMPZ_HANDLER,
+               ZEND_IS_NOT_EQUAL_DOUBLE_SPEC_TMPVARCV_TMPVARCV_JMPNZ_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
-               ZEND_SPACESHIP_SPEC_CV_CONST_HANDLER,
-               ZEND_SPACESHIP_SPEC_CV_TMPVAR_HANDLER,
-               ZEND_SPACESHIP_SPEC_CV_TMPVAR_HANDLER,
                ZEND_NULL_HANDLER,
-               ZEND_SPACESHIP_SPEC_CV_CV_HANDLER,
-               ZEND_DECLARE_ANON_CLASS_SPEC_HANDLER,
+               ZEND_IS_NOT_EQUAL_DOUBLE_SPEC_TMPVARCV_TMPVARCV_HANDLER,
+               ZEND_IS_NOT_EQUAL_DOUBLE_SPEC_TMPVARCV_TMPVARCV_JMPZ_HANDLER,
+               ZEND_IS_NOT_EQUAL_DOUBLE_SPEC_TMPVARCV_TMPVARCV_JMPNZ_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
-               ZEND_DECLARE_ANON_INHERITED_CLASS_SPEC_VAR_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
-               ZEND_FETCH_STATIC_PROP_R_SPEC_CONST_CONST_HANDLER,
                ZEND_NULL_HANDLER,
-               ZEND_FETCH_STATIC_PROP_R_SPEC_CONST_VAR_HANDLER,
-               ZEND_FETCH_STATIC_PROP_R_SPEC_CONST_UNUSED_HANDLER,
                ZEND_NULL_HANDLER,
-               ZEND_FETCH_STATIC_PROP_R_SPEC_TMPVAR_CONST_HANDLER,
                ZEND_NULL_HANDLER,
-               ZEND_FETCH_STATIC_PROP_R_SPEC_TMPVAR_VAR_HANDLER,
-               ZEND_FETCH_STATIC_PROP_R_SPEC_TMPVAR_UNUSED_HANDLER,
                ZEND_NULL_HANDLER,
-               ZEND_FETCH_STATIC_PROP_R_SPEC_TMPVAR_CONST_HANDLER,
                ZEND_NULL_HANDLER,
-               ZEND_FETCH_STATIC_PROP_R_SPEC_TMPVAR_VAR_HANDLER,
-               ZEND_FETCH_STATIC_PROP_R_SPEC_TMPVAR_UNUSED_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
-               ZEND_FETCH_STATIC_PROP_R_SPEC_CV_CONST_HANDLER,
                ZEND_NULL_HANDLER,
-               ZEND_FETCH_STATIC_PROP_R_SPEC_CV_VAR_HANDLER,
-               ZEND_FETCH_STATIC_PROP_R_SPEC_CV_UNUSED_HANDLER,
                ZEND_NULL_HANDLER,
-               ZEND_FETCH_STATIC_PROP_W_SPEC_CONST_CONST_HANDLER,
                ZEND_NULL_HANDLER,
-               ZEND_FETCH_STATIC_PROP_W_SPEC_CONST_VAR_HANDLER,
-               ZEND_FETCH_STATIC_PROP_W_SPEC_CONST_UNUSED_HANDLER,
+               ZEND_IS_NOT_EQUAL_DOUBLE_SPEC_TMPVARCV_TMPVARCV_HANDLER,
+               ZEND_IS_NOT_EQUAL_DOUBLE_SPEC_TMPVARCV_TMPVARCV_JMPZ_HANDLER,
+               ZEND_IS_NOT_EQUAL_DOUBLE_SPEC_TMPVARCV_TMPVARCV_JMPNZ_HANDLER,
+               ZEND_IS_NOT_EQUAL_DOUBLE_SPEC_TMPVARCV_TMPVARCV_HANDLER,
+               ZEND_IS_NOT_EQUAL_DOUBLE_SPEC_TMPVARCV_TMPVARCV_JMPZ_HANDLER,
+               ZEND_IS_NOT_EQUAL_DOUBLE_SPEC_TMPVARCV_TMPVARCV_JMPNZ_HANDLER,
                ZEND_NULL_HANDLER,
-               ZEND_FETCH_STATIC_PROP_W_SPEC_TMPVAR_CONST_HANDLER,
                ZEND_NULL_HANDLER,
-               ZEND_FETCH_STATIC_PROP_W_SPEC_TMPVAR_VAR_HANDLER,
-               ZEND_FETCH_STATIC_PROP_W_SPEC_TMPVAR_UNUSED_HANDLER,
                ZEND_NULL_HANDLER,
-               ZEND_FETCH_STATIC_PROP_W_SPEC_TMPVAR_CONST_HANDLER,
+               ZEND_IS_NOT_EQUAL_DOUBLE_SPEC_TMPVARCV_TMPVARCV_HANDLER,
+               ZEND_IS_NOT_EQUAL_DOUBLE_SPEC_TMPVARCV_TMPVARCV_JMPZ_HANDLER,
+               ZEND_IS_NOT_EQUAL_DOUBLE_SPEC_TMPVARCV_TMPVARCV_JMPNZ_HANDLER,
                ZEND_NULL_HANDLER,
-               ZEND_FETCH_STATIC_PROP_W_SPEC_TMPVAR_VAR_HANDLER,
-               ZEND_FETCH_STATIC_PROP_W_SPEC_TMPVAR_UNUSED_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
+               ZEND_IS_SMALLER_LONG_SPEC_CONST_TMPVARCV_HANDLER,
+               ZEND_IS_SMALLER_LONG_SPEC_CONST_TMPVARCV_JMPZ_HANDLER,
+               ZEND_IS_SMALLER_LONG_SPEC_CONST_TMPVARCV_JMPNZ_HANDLER,
+               ZEND_IS_SMALLER_LONG_SPEC_CONST_TMPVARCV_HANDLER,
+               ZEND_IS_SMALLER_LONG_SPEC_CONST_TMPVARCV_JMPZ_HANDLER,
+               ZEND_IS_SMALLER_LONG_SPEC_CONST_TMPVARCV_JMPNZ_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
+               ZEND_IS_SMALLER_LONG_SPEC_CONST_TMPVARCV_HANDLER,
+               ZEND_IS_SMALLER_LONG_SPEC_CONST_TMPVARCV_JMPZ_HANDLER,
+               ZEND_IS_SMALLER_LONG_SPEC_CONST_TMPVARCV_JMPNZ_HANDLER,
+               ZEND_IS_SMALLER_LONG_SPEC_TMPVARCV_CONST_HANDLER,
+               ZEND_IS_SMALLER_LONG_SPEC_TMPVARCV_CONST_JMPZ_HANDLER,
+               ZEND_IS_SMALLER_LONG_SPEC_TMPVARCV_CONST_JMPNZ_HANDLER,
+               ZEND_IS_SMALLER_LONG_SPEC_TMPVARCV_TMPVARCV_HANDLER,
+               ZEND_IS_SMALLER_LONG_SPEC_TMPVARCV_TMPVARCV_JMPZ_HANDLER,
+               ZEND_IS_SMALLER_LONG_SPEC_TMPVARCV_TMPVARCV_JMPNZ_HANDLER,
+               ZEND_IS_SMALLER_LONG_SPEC_TMPVARCV_TMPVARCV_HANDLER,
+               ZEND_IS_SMALLER_LONG_SPEC_TMPVARCV_TMPVARCV_JMPZ_HANDLER,
+               ZEND_IS_SMALLER_LONG_SPEC_TMPVARCV_TMPVARCV_JMPNZ_HANDLER,
                ZEND_NULL_HANDLER,
-               ZEND_FETCH_STATIC_PROP_W_SPEC_CV_CONST_HANDLER,
                ZEND_NULL_HANDLER,
-               ZEND_FETCH_STATIC_PROP_W_SPEC_CV_VAR_HANDLER,
-               ZEND_FETCH_STATIC_PROP_W_SPEC_CV_UNUSED_HANDLER,
                ZEND_NULL_HANDLER,
-               ZEND_FETCH_STATIC_PROP_RW_SPEC_CONST_CONST_HANDLER,
+               ZEND_IS_SMALLER_LONG_SPEC_TMPVARCV_TMPVARCV_HANDLER,
+               ZEND_IS_SMALLER_LONG_SPEC_TMPVARCV_TMPVARCV_JMPZ_HANDLER,
+               ZEND_IS_SMALLER_LONG_SPEC_TMPVARCV_TMPVARCV_JMPNZ_HANDLER,
+               ZEND_IS_SMALLER_LONG_SPEC_TMPVARCV_CONST_HANDLER,
+               ZEND_IS_SMALLER_LONG_SPEC_TMPVARCV_CONST_JMPZ_HANDLER,
+               ZEND_IS_SMALLER_LONG_SPEC_TMPVARCV_CONST_JMPNZ_HANDLER,
+               ZEND_IS_SMALLER_LONG_SPEC_TMPVARCV_TMPVARCV_HANDLER,
+               ZEND_IS_SMALLER_LONG_SPEC_TMPVARCV_TMPVARCV_JMPZ_HANDLER,
+               ZEND_IS_SMALLER_LONG_SPEC_TMPVARCV_TMPVARCV_JMPNZ_HANDLER,
+               ZEND_IS_SMALLER_LONG_SPEC_TMPVARCV_TMPVARCV_HANDLER,
+               ZEND_IS_SMALLER_LONG_SPEC_TMPVARCV_TMPVARCV_JMPZ_HANDLER,
+               ZEND_IS_SMALLER_LONG_SPEC_TMPVARCV_TMPVARCV_JMPNZ_HANDLER,
                ZEND_NULL_HANDLER,
-               ZEND_FETCH_STATIC_PROP_RW_SPEC_CONST_VAR_HANDLER,
-               ZEND_FETCH_STATIC_PROP_RW_SPEC_CONST_UNUSED_HANDLER,
                ZEND_NULL_HANDLER,
-               ZEND_FETCH_STATIC_PROP_RW_SPEC_TMPVAR_CONST_HANDLER,
                ZEND_NULL_HANDLER,
-               ZEND_FETCH_STATIC_PROP_RW_SPEC_TMPVAR_VAR_HANDLER,
-               ZEND_FETCH_STATIC_PROP_RW_SPEC_TMPVAR_UNUSED_HANDLER,
+               ZEND_IS_SMALLER_LONG_SPEC_TMPVARCV_TMPVARCV_HANDLER,
+               ZEND_IS_SMALLER_LONG_SPEC_TMPVARCV_TMPVARCV_JMPZ_HANDLER,
+               ZEND_IS_SMALLER_LONG_SPEC_TMPVARCV_TMPVARCV_JMPNZ_HANDLER,
                ZEND_NULL_HANDLER,
-               ZEND_FETCH_STATIC_PROP_RW_SPEC_TMPVAR_CONST_HANDLER,
                ZEND_NULL_HANDLER,
-               ZEND_FETCH_STATIC_PROP_RW_SPEC_TMPVAR_VAR_HANDLER,
-               ZEND_FETCH_STATIC_PROP_RW_SPEC_TMPVAR_UNUSED_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
-               ZEND_FETCH_STATIC_PROP_RW_SPEC_CV_CONST_HANDLER,
                ZEND_NULL_HANDLER,
-               ZEND_FETCH_STATIC_PROP_RW_SPEC_CV_VAR_HANDLER,
-               ZEND_FETCH_STATIC_PROP_RW_SPEC_CV_UNUSED_HANDLER,
                ZEND_NULL_HANDLER,
-               ZEND_FETCH_STATIC_PROP_IS_SPEC_CONST_CONST_HANDLER,
                ZEND_NULL_HANDLER,
-               ZEND_FETCH_STATIC_PROP_IS_SPEC_CONST_VAR_HANDLER,
-               ZEND_FETCH_STATIC_PROP_IS_SPEC_CONST_UNUSED_HANDLER,
                ZEND_NULL_HANDLER,
-               ZEND_FETCH_STATIC_PROP_IS_SPEC_TMPVAR_CONST_HANDLER,
                ZEND_NULL_HANDLER,
-               ZEND_FETCH_STATIC_PROP_IS_SPEC_TMPVAR_VAR_HANDLER,
-               ZEND_FETCH_STATIC_PROP_IS_SPEC_TMPVAR_UNUSED_HANDLER,
                ZEND_NULL_HANDLER,
-               ZEND_FETCH_STATIC_PROP_IS_SPEC_TMPVAR_CONST_HANDLER,
                ZEND_NULL_HANDLER,
-               ZEND_FETCH_STATIC_PROP_IS_SPEC_TMPVAR_VAR_HANDLER,
-               ZEND_FETCH_STATIC_PROP_IS_SPEC_TMPVAR_UNUSED_HANDLER,
+               ZEND_IS_SMALLER_LONG_SPEC_TMPVARCV_CONST_HANDLER,
+               ZEND_IS_SMALLER_LONG_SPEC_TMPVARCV_CONST_JMPZ_HANDLER,
+               ZEND_IS_SMALLER_LONG_SPEC_TMPVARCV_CONST_JMPNZ_HANDLER,
+               ZEND_IS_SMALLER_LONG_SPEC_TMPVARCV_TMPVARCV_HANDLER,
+               ZEND_IS_SMALLER_LONG_SPEC_TMPVARCV_TMPVARCV_JMPZ_HANDLER,
+               ZEND_IS_SMALLER_LONG_SPEC_TMPVARCV_TMPVARCV_JMPNZ_HANDLER,
+               ZEND_IS_SMALLER_LONG_SPEC_TMPVARCV_TMPVARCV_HANDLER,
+               ZEND_IS_SMALLER_LONG_SPEC_TMPVARCV_TMPVARCV_JMPZ_HANDLER,
+               ZEND_IS_SMALLER_LONG_SPEC_TMPVARCV_TMPVARCV_JMPNZ_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
+               ZEND_IS_SMALLER_LONG_SPEC_TMPVARCV_TMPVARCV_HANDLER,
+               ZEND_IS_SMALLER_LONG_SPEC_TMPVARCV_TMPVARCV_JMPZ_HANDLER,
+               ZEND_IS_SMALLER_LONG_SPEC_TMPVARCV_TMPVARCV_JMPNZ_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
-               ZEND_FETCH_STATIC_PROP_IS_SPEC_CV_CONST_HANDLER,
+               ZEND_IS_SMALLER_DOUBLE_SPEC_CONST_TMPVARCV_HANDLER,
+               ZEND_IS_SMALLER_DOUBLE_SPEC_CONST_TMPVARCV_JMPZ_HANDLER,
+               ZEND_IS_SMALLER_DOUBLE_SPEC_CONST_TMPVARCV_JMPNZ_HANDLER,
+               ZEND_IS_SMALLER_DOUBLE_SPEC_CONST_TMPVARCV_HANDLER,
+               ZEND_IS_SMALLER_DOUBLE_SPEC_CONST_TMPVARCV_JMPZ_HANDLER,
+               ZEND_IS_SMALLER_DOUBLE_SPEC_CONST_TMPVARCV_JMPNZ_HANDLER,
                ZEND_NULL_HANDLER,
-               ZEND_FETCH_STATIC_PROP_IS_SPEC_CV_VAR_HANDLER,
-               ZEND_FETCH_STATIC_PROP_IS_SPEC_CV_UNUSED_HANDLER,
                ZEND_NULL_HANDLER,
-               ZEND_FETCH_STATIC_PROP_FUNC_ARG_SPEC_CONST_CONST_HANDLER,
                ZEND_NULL_HANDLER,
-               ZEND_FETCH_STATIC_PROP_FUNC_ARG_SPEC_CONST_VAR_HANDLER,
-               ZEND_FETCH_STATIC_PROP_FUNC_ARG_SPEC_CONST_UNUSED_HANDLER,
+               ZEND_IS_SMALLER_DOUBLE_SPEC_CONST_TMPVARCV_HANDLER,
+               ZEND_IS_SMALLER_DOUBLE_SPEC_CONST_TMPVARCV_JMPZ_HANDLER,
+               ZEND_IS_SMALLER_DOUBLE_SPEC_CONST_TMPVARCV_JMPNZ_HANDLER,
+               ZEND_IS_SMALLER_DOUBLE_SPEC_TMPVARCV_CONST_HANDLER,
+               ZEND_IS_SMALLER_DOUBLE_SPEC_TMPVARCV_CONST_JMPZ_HANDLER,
+               ZEND_IS_SMALLER_DOUBLE_SPEC_TMPVARCV_CONST_JMPNZ_HANDLER,
+               ZEND_IS_SMALLER_DOUBLE_SPEC_TMPVARCV_TMPVARCV_HANDLER,
+               ZEND_IS_SMALLER_DOUBLE_SPEC_TMPVARCV_TMPVARCV_JMPZ_HANDLER,
+               ZEND_IS_SMALLER_DOUBLE_SPEC_TMPVARCV_TMPVARCV_JMPNZ_HANDLER,
+               ZEND_IS_SMALLER_DOUBLE_SPEC_TMPVARCV_TMPVARCV_HANDLER,
+               ZEND_IS_SMALLER_DOUBLE_SPEC_TMPVARCV_TMPVARCV_JMPZ_HANDLER,
+               ZEND_IS_SMALLER_DOUBLE_SPEC_TMPVARCV_TMPVARCV_JMPNZ_HANDLER,
                ZEND_NULL_HANDLER,
-               ZEND_FETCH_STATIC_PROP_FUNC_ARG_SPEC_TMPVAR_CONST_HANDLER,
                ZEND_NULL_HANDLER,
-               ZEND_FETCH_STATIC_PROP_FUNC_ARG_SPEC_TMPVAR_VAR_HANDLER,
-               ZEND_FETCH_STATIC_PROP_FUNC_ARG_SPEC_TMPVAR_UNUSED_HANDLER,
                ZEND_NULL_HANDLER,
-               ZEND_FETCH_STATIC_PROP_FUNC_ARG_SPEC_TMPVAR_CONST_HANDLER,
+               ZEND_IS_SMALLER_DOUBLE_SPEC_TMPVARCV_TMPVARCV_HANDLER,
+               ZEND_IS_SMALLER_DOUBLE_SPEC_TMPVARCV_TMPVARCV_JMPZ_HANDLER,
+               ZEND_IS_SMALLER_DOUBLE_SPEC_TMPVARCV_TMPVARCV_JMPNZ_HANDLER,
+               ZEND_IS_SMALLER_DOUBLE_SPEC_TMPVARCV_CONST_HANDLER,
+               ZEND_IS_SMALLER_DOUBLE_SPEC_TMPVARCV_CONST_JMPZ_HANDLER,
+               ZEND_IS_SMALLER_DOUBLE_SPEC_TMPVARCV_CONST_JMPNZ_HANDLER,
+               ZEND_IS_SMALLER_DOUBLE_SPEC_TMPVARCV_TMPVARCV_HANDLER,
+               ZEND_IS_SMALLER_DOUBLE_SPEC_TMPVARCV_TMPVARCV_JMPZ_HANDLER,
+               ZEND_IS_SMALLER_DOUBLE_SPEC_TMPVARCV_TMPVARCV_JMPNZ_HANDLER,
+               ZEND_IS_SMALLER_DOUBLE_SPEC_TMPVARCV_TMPVARCV_HANDLER,
+               ZEND_IS_SMALLER_DOUBLE_SPEC_TMPVARCV_TMPVARCV_JMPZ_HANDLER,
+               ZEND_IS_SMALLER_DOUBLE_SPEC_TMPVARCV_TMPVARCV_JMPNZ_HANDLER,
                ZEND_NULL_HANDLER,
-               ZEND_FETCH_STATIC_PROP_FUNC_ARG_SPEC_TMPVAR_VAR_HANDLER,
-               ZEND_FETCH_STATIC_PROP_FUNC_ARG_SPEC_TMPVAR_UNUSED_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
+               ZEND_IS_SMALLER_DOUBLE_SPEC_TMPVARCV_TMPVARCV_HANDLER,
+               ZEND_IS_SMALLER_DOUBLE_SPEC_TMPVARCV_TMPVARCV_JMPZ_HANDLER,
+               ZEND_IS_SMALLER_DOUBLE_SPEC_TMPVARCV_TMPVARCV_JMPNZ_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
-               ZEND_FETCH_STATIC_PROP_FUNC_ARG_SPEC_CV_CONST_HANDLER,
                ZEND_NULL_HANDLER,
-               ZEND_FETCH_STATIC_PROP_FUNC_ARG_SPEC_CV_VAR_HANDLER,
-               ZEND_FETCH_STATIC_PROP_FUNC_ARG_SPEC_CV_UNUSED_HANDLER,
                ZEND_NULL_HANDLER,
-               ZEND_FETCH_STATIC_PROP_UNSET_SPEC_CONST_CONST_HANDLER,
                ZEND_NULL_HANDLER,
-               ZEND_FETCH_STATIC_PROP_UNSET_SPEC_CONST_VAR_HANDLER,
-               ZEND_FETCH_STATIC_PROP_UNSET_SPEC_CONST_UNUSED_HANDLER,
                ZEND_NULL_HANDLER,
-               ZEND_FETCH_STATIC_PROP_UNSET_SPEC_TMPVAR_CONST_HANDLER,
                ZEND_NULL_HANDLER,
-               ZEND_FETCH_STATIC_PROP_UNSET_SPEC_TMPVAR_VAR_HANDLER,
-               ZEND_FETCH_STATIC_PROP_UNSET_SPEC_TMPVAR_UNUSED_HANDLER,
                ZEND_NULL_HANDLER,
-               ZEND_FETCH_STATIC_PROP_UNSET_SPEC_TMPVAR_CONST_HANDLER,
                ZEND_NULL_HANDLER,
-               ZEND_FETCH_STATIC_PROP_UNSET_SPEC_TMPVAR_VAR_HANDLER,
-               ZEND_FETCH_STATIC_PROP_UNSET_SPEC_TMPVAR_UNUSED_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
+               ZEND_IS_SMALLER_DOUBLE_SPEC_TMPVARCV_CONST_HANDLER,
+               ZEND_IS_SMALLER_DOUBLE_SPEC_TMPVARCV_CONST_JMPZ_HANDLER,
+               ZEND_IS_SMALLER_DOUBLE_SPEC_TMPVARCV_CONST_JMPNZ_HANDLER,
+               ZEND_IS_SMALLER_DOUBLE_SPEC_TMPVARCV_TMPVARCV_HANDLER,
+               ZEND_IS_SMALLER_DOUBLE_SPEC_TMPVARCV_TMPVARCV_JMPZ_HANDLER,
+               ZEND_IS_SMALLER_DOUBLE_SPEC_TMPVARCV_TMPVARCV_JMPNZ_HANDLER,
+               ZEND_IS_SMALLER_DOUBLE_SPEC_TMPVARCV_TMPVARCV_HANDLER,
+               ZEND_IS_SMALLER_DOUBLE_SPEC_TMPVARCV_TMPVARCV_JMPZ_HANDLER,
+               ZEND_IS_SMALLER_DOUBLE_SPEC_TMPVARCV_TMPVARCV_JMPNZ_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
-               ZEND_FETCH_STATIC_PROP_UNSET_SPEC_CV_CONST_HANDLER,
                ZEND_NULL_HANDLER,
-               ZEND_FETCH_STATIC_PROP_UNSET_SPEC_CV_VAR_HANDLER,
-               ZEND_FETCH_STATIC_PROP_UNSET_SPEC_CV_UNUSED_HANDLER,
+               ZEND_IS_SMALLER_DOUBLE_SPEC_TMPVARCV_TMPVARCV_HANDLER,
+               ZEND_IS_SMALLER_DOUBLE_SPEC_TMPVARCV_TMPVARCV_JMPZ_HANDLER,
+               ZEND_IS_SMALLER_DOUBLE_SPEC_TMPVARCV_TMPVARCV_JMPNZ_HANDLER,
                ZEND_NULL_HANDLER,
-               ZEND_UNSET_STATIC_PROP_SPEC_CONST_CONST_HANDLER,
                ZEND_NULL_HANDLER,
-               ZEND_UNSET_STATIC_PROP_SPEC_CONST_VAR_HANDLER,
-               ZEND_UNSET_STATIC_PROP_SPEC_CONST_UNUSED_HANDLER,
                ZEND_NULL_HANDLER,
-               ZEND_UNSET_STATIC_PROP_SPEC_TMPVAR_CONST_HANDLER,
+               ZEND_IS_SMALLER_OR_EQUAL_LONG_SPEC_CONST_TMPVARCV_HANDLER,
+               ZEND_IS_SMALLER_OR_EQUAL_LONG_SPEC_CONST_TMPVARCV_JMPZ_HANDLER,
+               ZEND_IS_SMALLER_OR_EQUAL_LONG_SPEC_CONST_TMPVARCV_JMPNZ_HANDLER,
+               ZEND_IS_SMALLER_OR_EQUAL_LONG_SPEC_CONST_TMPVARCV_HANDLER,
+               ZEND_IS_SMALLER_OR_EQUAL_LONG_SPEC_CONST_TMPVARCV_JMPZ_HANDLER,
+               ZEND_IS_SMALLER_OR_EQUAL_LONG_SPEC_CONST_TMPVARCV_JMPNZ_HANDLER,
                ZEND_NULL_HANDLER,
-               ZEND_UNSET_STATIC_PROP_SPEC_TMPVAR_VAR_HANDLER,
-               ZEND_UNSET_STATIC_PROP_SPEC_TMPVAR_UNUSED_HANDLER,
                ZEND_NULL_HANDLER,
-               ZEND_UNSET_STATIC_PROP_SPEC_TMPVAR_CONST_HANDLER,
                ZEND_NULL_HANDLER,
-               ZEND_UNSET_STATIC_PROP_SPEC_TMPVAR_VAR_HANDLER,
-               ZEND_UNSET_STATIC_PROP_SPEC_TMPVAR_UNUSED_HANDLER,
+               ZEND_IS_SMALLER_OR_EQUAL_LONG_SPEC_CONST_TMPVARCV_HANDLER,
+               ZEND_IS_SMALLER_OR_EQUAL_LONG_SPEC_CONST_TMPVARCV_JMPZ_HANDLER,
+               ZEND_IS_SMALLER_OR_EQUAL_LONG_SPEC_CONST_TMPVARCV_JMPNZ_HANDLER,
+               ZEND_IS_SMALLER_OR_EQUAL_LONG_SPEC_TMPVARCV_CONST_HANDLER,
+               ZEND_IS_SMALLER_OR_EQUAL_LONG_SPEC_TMPVARCV_CONST_JMPZ_HANDLER,
+               ZEND_IS_SMALLER_OR_EQUAL_LONG_SPEC_TMPVARCV_CONST_JMPNZ_HANDLER,
+               ZEND_IS_SMALLER_OR_EQUAL_LONG_SPEC_TMPVARCV_TMPVARCV_HANDLER,
+               ZEND_IS_SMALLER_OR_EQUAL_LONG_SPEC_TMPVARCV_TMPVARCV_JMPZ_HANDLER,
+               ZEND_IS_SMALLER_OR_EQUAL_LONG_SPEC_TMPVARCV_TMPVARCV_JMPNZ_HANDLER,
+               ZEND_IS_SMALLER_OR_EQUAL_LONG_SPEC_TMPVARCV_TMPVARCV_HANDLER,
+               ZEND_IS_SMALLER_OR_EQUAL_LONG_SPEC_TMPVARCV_TMPVARCV_JMPZ_HANDLER,
+               ZEND_IS_SMALLER_OR_EQUAL_LONG_SPEC_TMPVARCV_TMPVARCV_JMPNZ_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
+               ZEND_IS_SMALLER_OR_EQUAL_LONG_SPEC_TMPVARCV_TMPVARCV_HANDLER,
+               ZEND_IS_SMALLER_OR_EQUAL_LONG_SPEC_TMPVARCV_TMPVARCV_JMPZ_HANDLER,
+               ZEND_IS_SMALLER_OR_EQUAL_LONG_SPEC_TMPVARCV_TMPVARCV_JMPNZ_HANDLER,
+               ZEND_IS_SMALLER_OR_EQUAL_LONG_SPEC_TMPVARCV_CONST_HANDLER,
+               ZEND_IS_SMALLER_OR_EQUAL_LONG_SPEC_TMPVARCV_CONST_JMPZ_HANDLER,
+               ZEND_IS_SMALLER_OR_EQUAL_LONG_SPEC_TMPVARCV_CONST_JMPNZ_HANDLER,
+               ZEND_IS_SMALLER_OR_EQUAL_LONG_SPEC_TMPVARCV_TMPVARCV_HANDLER,
+               ZEND_IS_SMALLER_OR_EQUAL_LONG_SPEC_TMPVARCV_TMPVARCV_JMPZ_HANDLER,
+               ZEND_IS_SMALLER_OR_EQUAL_LONG_SPEC_TMPVARCV_TMPVARCV_JMPNZ_HANDLER,
+               ZEND_IS_SMALLER_OR_EQUAL_LONG_SPEC_TMPVARCV_TMPVARCV_HANDLER,
+               ZEND_IS_SMALLER_OR_EQUAL_LONG_SPEC_TMPVARCV_TMPVARCV_JMPZ_HANDLER,
+               ZEND_IS_SMALLER_OR_EQUAL_LONG_SPEC_TMPVARCV_TMPVARCV_JMPNZ_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
-               ZEND_UNSET_STATIC_PROP_SPEC_CV_CONST_HANDLER,
+               ZEND_IS_SMALLER_OR_EQUAL_LONG_SPEC_TMPVARCV_TMPVARCV_HANDLER,
+               ZEND_IS_SMALLER_OR_EQUAL_LONG_SPEC_TMPVARCV_TMPVARCV_JMPZ_HANDLER,
+               ZEND_IS_SMALLER_OR_EQUAL_LONG_SPEC_TMPVARCV_TMPVARCV_JMPNZ_HANDLER,
                ZEND_NULL_HANDLER,
-               ZEND_UNSET_STATIC_PROP_SPEC_CV_VAR_HANDLER,
-               ZEND_UNSET_STATIC_PROP_SPEC_CV_UNUSED_HANDLER,
                ZEND_NULL_HANDLER,
-               ZEND_ISSET_ISEMPTY_STATIC_PROP_SPEC_CONST_CONST_HANDLER,
                ZEND_NULL_HANDLER,
-               ZEND_ISSET_ISEMPTY_STATIC_PROP_SPEC_CONST_VAR_HANDLER,
-               ZEND_ISSET_ISEMPTY_STATIC_PROP_SPEC_CONST_UNUSED_HANDLER,
                ZEND_NULL_HANDLER,
-               ZEND_ISSET_ISEMPTY_STATIC_PROP_SPEC_TMPVAR_CONST_HANDLER,
                ZEND_NULL_HANDLER,
-               ZEND_ISSET_ISEMPTY_STATIC_PROP_SPEC_TMPVAR_VAR_HANDLER,
-               ZEND_ISSET_ISEMPTY_STATIC_PROP_SPEC_TMPVAR_UNUSED_HANDLER,
                ZEND_NULL_HANDLER,
-               ZEND_ISSET_ISEMPTY_STATIC_PROP_SPEC_TMPVAR_CONST_HANDLER,
                ZEND_NULL_HANDLER,
-               ZEND_ISSET_ISEMPTY_STATIC_PROP_SPEC_TMPVAR_VAR_HANDLER,
-               ZEND_ISSET_ISEMPTY_STATIC_PROP_SPEC_TMPVAR_UNUSED_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
-               ZEND_ISSET_ISEMPTY_STATIC_PROP_SPEC_CV_CONST_HANDLER,
                ZEND_NULL_HANDLER,
-               ZEND_ISSET_ISEMPTY_STATIC_PROP_SPEC_CV_VAR_HANDLER,
-               ZEND_ISSET_ISEMPTY_STATIC_PROP_SPEC_CV_UNUSED_HANDLER,
                ZEND_NULL_HANDLER,
-               ZEND_FETCH_CLASS_CONSTANT_SPEC_CONST_CONST_HANDLER,
+               ZEND_IS_SMALLER_OR_EQUAL_LONG_SPEC_TMPVARCV_CONST_HANDLER,
+               ZEND_IS_SMALLER_OR_EQUAL_LONG_SPEC_TMPVARCV_CONST_JMPZ_HANDLER,
+               ZEND_IS_SMALLER_OR_EQUAL_LONG_SPEC_TMPVARCV_CONST_JMPNZ_HANDLER,
+               ZEND_IS_SMALLER_OR_EQUAL_LONG_SPEC_TMPVARCV_TMPVARCV_HANDLER,
+               ZEND_IS_SMALLER_OR_EQUAL_LONG_SPEC_TMPVARCV_TMPVARCV_JMPZ_HANDLER,
+               ZEND_IS_SMALLER_OR_EQUAL_LONG_SPEC_TMPVARCV_TMPVARCV_JMPNZ_HANDLER,
+               ZEND_IS_SMALLER_OR_EQUAL_LONG_SPEC_TMPVARCV_TMPVARCV_HANDLER,
+               ZEND_IS_SMALLER_OR_EQUAL_LONG_SPEC_TMPVARCV_TMPVARCV_JMPZ_HANDLER,
+               ZEND_IS_SMALLER_OR_EQUAL_LONG_SPEC_TMPVARCV_TMPVARCV_JMPNZ_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
+               ZEND_IS_SMALLER_OR_EQUAL_LONG_SPEC_TMPVARCV_TMPVARCV_HANDLER,
+               ZEND_IS_SMALLER_OR_EQUAL_LONG_SPEC_TMPVARCV_TMPVARCV_JMPZ_HANDLER,
+               ZEND_IS_SMALLER_OR_EQUAL_LONG_SPEC_TMPVARCV_TMPVARCV_JMPNZ_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
+               ZEND_IS_SMALLER_OR_EQUAL_DOUBLE_SPEC_CONST_TMPVARCV_HANDLER,
+               ZEND_IS_SMALLER_OR_EQUAL_DOUBLE_SPEC_CONST_TMPVARCV_JMPZ_HANDLER,
+               ZEND_IS_SMALLER_OR_EQUAL_DOUBLE_SPEC_CONST_TMPVARCV_JMPNZ_HANDLER,
+               ZEND_IS_SMALLER_OR_EQUAL_DOUBLE_SPEC_CONST_TMPVARCV_HANDLER,
+               ZEND_IS_SMALLER_OR_EQUAL_DOUBLE_SPEC_CONST_TMPVARCV_JMPZ_HANDLER,
+               ZEND_IS_SMALLER_OR_EQUAL_DOUBLE_SPEC_CONST_TMPVARCV_JMPNZ_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
-               ZEND_FETCH_CLASS_CONSTANT_SPEC_VAR_CONST_HANDLER,
+               ZEND_IS_SMALLER_OR_EQUAL_DOUBLE_SPEC_CONST_TMPVARCV_HANDLER,
+               ZEND_IS_SMALLER_OR_EQUAL_DOUBLE_SPEC_CONST_TMPVARCV_JMPZ_HANDLER,
+               ZEND_IS_SMALLER_OR_EQUAL_DOUBLE_SPEC_CONST_TMPVARCV_JMPNZ_HANDLER,
+               ZEND_IS_SMALLER_OR_EQUAL_DOUBLE_SPEC_TMPVARCV_CONST_HANDLER,
+               ZEND_IS_SMALLER_OR_EQUAL_DOUBLE_SPEC_TMPVARCV_CONST_JMPZ_HANDLER,
+               ZEND_IS_SMALLER_OR_EQUAL_DOUBLE_SPEC_TMPVARCV_CONST_JMPNZ_HANDLER,
+               ZEND_IS_SMALLER_OR_EQUAL_DOUBLE_SPEC_TMPVARCV_TMPVARCV_HANDLER,
+               ZEND_IS_SMALLER_OR_EQUAL_DOUBLE_SPEC_TMPVARCV_TMPVARCV_JMPZ_HANDLER,
+               ZEND_IS_SMALLER_OR_EQUAL_DOUBLE_SPEC_TMPVARCV_TMPVARCV_JMPNZ_HANDLER,
+               ZEND_IS_SMALLER_OR_EQUAL_DOUBLE_SPEC_TMPVARCV_TMPVARCV_HANDLER,
+               ZEND_IS_SMALLER_OR_EQUAL_DOUBLE_SPEC_TMPVARCV_TMPVARCV_JMPZ_HANDLER,
+               ZEND_IS_SMALLER_OR_EQUAL_DOUBLE_SPEC_TMPVARCV_TMPVARCV_JMPNZ_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
+               ZEND_IS_SMALLER_OR_EQUAL_DOUBLE_SPEC_TMPVARCV_TMPVARCV_HANDLER,
+               ZEND_IS_SMALLER_OR_EQUAL_DOUBLE_SPEC_TMPVARCV_TMPVARCV_JMPZ_HANDLER,
+               ZEND_IS_SMALLER_OR_EQUAL_DOUBLE_SPEC_TMPVARCV_TMPVARCV_JMPNZ_HANDLER,
+               ZEND_IS_SMALLER_OR_EQUAL_DOUBLE_SPEC_TMPVARCV_CONST_HANDLER,
+               ZEND_IS_SMALLER_OR_EQUAL_DOUBLE_SPEC_TMPVARCV_CONST_JMPZ_HANDLER,
+               ZEND_IS_SMALLER_OR_EQUAL_DOUBLE_SPEC_TMPVARCV_CONST_JMPNZ_HANDLER,
+               ZEND_IS_SMALLER_OR_EQUAL_DOUBLE_SPEC_TMPVARCV_TMPVARCV_HANDLER,
+               ZEND_IS_SMALLER_OR_EQUAL_DOUBLE_SPEC_TMPVARCV_TMPVARCV_JMPZ_HANDLER,
+               ZEND_IS_SMALLER_OR_EQUAL_DOUBLE_SPEC_TMPVARCV_TMPVARCV_JMPNZ_HANDLER,
+               ZEND_IS_SMALLER_OR_EQUAL_DOUBLE_SPEC_TMPVARCV_TMPVARCV_HANDLER,
+               ZEND_IS_SMALLER_OR_EQUAL_DOUBLE_SPEC_TMPVARCV_TMPVARCV_JMPZ_HANDLER,
+               ZEND_IS_SMALLER_OR_EQUAL_DOUBLE_SPEC_TMPVARCV_TMPVARCV_JMPNZ_HANDLER,
                ZEND_NULL_HANDLER,
-               ZEND_FETCH_CLASS_CONSTANT_SPEC_UNUSED_CONST_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
+               ZEND_IS_SMALLER_OR_EQUAL_DOUBLE_SPEC_TMPVARCV_TMPVARCV_HANDLER,
+               ZEND_IS_SMALLER_OR_EQUAL_DOUBLE_SPEC_TMPVARCV_TMPVARCV_JMPZ_HANDLER,
+               ZEND_IS_SMALLER_OR_EQUAL_DOUBLE_SPEC_TMPVARCV_TMPVARCV_JMPNZ_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
@@ -57314,48 +59531,116 @@ void zend_init_opcodes_handlers(void)
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
+               ZEND_IS_SMALLER_OR_EQUAL_DOUBLE_SPEC_TMPVARCV_CONST_HANDLER,
+               ZEND_IS_SMALLER_OR_EQUAL_DOUBLE_SPEC_TMPVARCV_CONST_JMPZ_HANDLER,
+               ZEND_IS_SMALLER_OR_EQUAL_DOUBLE_SPEC_TMPVARCV_CONST_JMPNZ_HANDLER,
+               ZEND_IS_SMALLER_OR_EQUAL_DOUBLE_SPEC_TMPVARCV_TMPVARCV_HANDLER,
+               ZEND_IS_SMALLER_OR_EQUAL_DOUBLE_SPEC_TMPVARCV_TMPVARCV_JMPZ_HANDLER,
+               ZEND_IS_SMALLER_OR_EQUAL_DOUBLE_SPEC_TMPVARCV_TMPVARCV_JMPNZ_HANDLER,
+               ZEND_IS_SMALLER_OR_EQUAL_DOUBLE_SPEC_TMPVARCV_TMPVARCV_HANDLER,
+               ZEND_IS_SMALLER_OR_EQUAL_DOUBLE_SPEC_TMPVARCV_TMPVARCV_JMPZ_HANDLER,
+               ZEND_IS_SMALLER_OR_EQUAL_DOUBLE_SPEC_TMPVARCV_TMPVARCV_JMPNZ_HANDLER,
                ZEND_NULL_HANDLER,
-               ZEND_BIND_LEXICAL_SPEC_TMP_CV_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
+               ZEND_IS_SMALLER_OR_EQUAL_DOUBLE_SPEC_TMPVARCV_TMPVARCV_HANDLER,
+               ZEND_IS_SMALLER_OR_EQUAL_DOUBLE_SPEC_TMPVARCV_TMPVARCV_JMPZ_HANDLER,
+               ZEND_IS_SMALLER_OR_EQUAL_DOUBLE_SPEC_TMPVARCV_TMPVARCV_JMPNZ_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
+               ZEND_PRE_INC_LONG_NO_OVERFLOW_SPEC_TMPVARCV_RETVAL_UNUSED_HANDLER,
+               ZEND_PRE_INC_LONG_NO_OVERFLOW_SPEC_TMPVARCV_RETVAL_USED_HANDLER,
+               ZEND_PRE_INC_LONG_NO_OVERFLOW_SPEC_TMPVARCV_RETVAL_UNUSED_HANDLER,
+               ZEND_PRE_INC_LONG_NO_OVERFLOW_SPEC_TMPVARCV_RETVAL_USED_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
+               ZEND_PRE_INC_LONG_NO_OVERFLOW_SPEC_TMPVARCV_RETVAL_UNUSED_HANDLER,
+               ZEND_PRE_INC_LONG_NO_OVERFLOW_SPEC_TMPVARCV_RETVAL_USED_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
+               ZEND_PRE_INC_LONG_SPEC_TMPVARCV_RETVAL_UNUSED_HANDLER,
+               ZEND_PRE_INC_LONG_SPEC_TMPVARCV_RETVAL_USED_HANDLER,
+               ZEND_PRE_INC_LONG_SPEC_TMPVARCV_RETVAL_UNUSED_HANDLER,
+               ZEND_PRE_INC_LONG_SPEC_TMPVARCV_RETVAL_USED_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
+               ZEND_PRE_INC_LONG_SPEC_TMPVARCV_RETVAL_UNUSED_HANDLER,
+               ZEND_PRE_INC_LONG_SPEC_TMPVARCV_RETVAL_USED_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
+               ZEND_PRE_INC_LONG_OR_DOUBLE_SPEC_TMPVARCV_RETVAL_UNUSED_HANDLER,
+               ZEND_PRE_INC_LONG_OR_DOUBLE_SPEC_TMPVARCV_RETVAL_USED_HANDLER,
+               ZEND_PRE_INC_LONG_OR_DOUBLE_SPEC_TMPVARCV_RETVAL_UNUSED_HANDLER,
+               ZEND_PRE_INC_LONG_OR_DOUBLE_SPEC_TMPVARCV_RETVAL_USED_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
+               ZEND_PRE_INC_LONG_OR_DOUBLE_SPEC_TMPVARCV_RETVAL_UNUSED_HANDLER,
+               ZEND_PRE_INC_LONG_OR_DOUBLE_SPEC_TMPVARCV_RETVAL_USED_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
+               ZEND_PRE_DEC_LONG_NO_OVERFLOW_SPEC_TMPVARCV_RETVAL_UNUSED_HANDLER,
+               ZEND_PRE_DEC_LONG_NO_OVERFLOW_SPEC_TMPVARCV_RETVAL_USED_HANDLER,
+               ZEND_PRE_DEC_LONG_NO_OVERFLOW_SPEC_TMPVARCV_RETVAL_UNUSED_HANDLER,
+               ZEND_PRE_DEC_LONG_NO_OVERFLOW_SPEC_TMPVARCV_RETVAL_USED_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
+               ZEND_PRE_DEC_LONG_NO_OVERFLOW_SPEC_TMPVARCV_RETVAL_UNUSED_HANDLER,
+               ZEND_PRE_DEC_LONG_NO_OVERFLOW_SPEC_TMPVARCV_RETVAL_USED_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
+               ZEND_PRE_DEC_LONG_SPEC_TMPVARCV_RETVAL_UNUSED_HANDLER,
+               ZEND_PRE_DEC_LONG_SPEC_TMPVARCV_RETVAL_USED_HANDLER,
+               ZEND_PRE_DEC_LONG_SPEC_TMPVARCV_RETVAL_UNUSED_HANDLER,
+               ZEND_PRE_DEC_LONG_SPEC_TMPVARCV_RETVAL_USED_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
+               ZEND_PRE_DEC_LONG_SPEC_TMPVARCV_RETVAL_UNUSED_HANDLER,
+               ZEND_PRE_DEC_LONG_SPEC_TMPVARCV_RETVAL_USED_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
+               ZEND_PRE_DEC_LONG_OR_DOUBLE_SPEC_TMPVARCV_RETVAL_UNUSED_HANDLER,
+               ZEND_PRE_DEC_LONG_OR_DOUBLE_SPEC_TMPVARCV_RETVAL_USED_HANDLER,
+               ZEND_PRE_DEC_LONG_OR_DOUBLE_SPEC_TMPVARCV_RETVAL_UNUSED_HANDLER,
+               ZEND_PRE_DEC_LONG_OR_DOUBLE_SPEC_TMPVARCV_RETVAL_USED_HANDLER,
                ZEND_NULL_HANDLER,
                ZEND_NULL_HANDLER,
+               ZEND_PRE_DEC_LONG_OR_DOUBLE_SPEC_TMPVARCV_RETVAL_UNUSED_HANDLER,
+               ZEND_PRE_DEC_LONG_OR_DOUBLE_SPEC_TMPVARCV_RETVAL_USED_HANDLER,
                ZEND_NULL_HANDLER,
+               ZEND_POST_INC_LONG_NO_OVERFLOW_SPEC_TMPVARCV_HANDLER,
+               ZEND_POST_INC_LONG_NO_OVERFLOW_SPEC_TMPVARCV_HANDLER,
                ZEND_NULL_HANDLER,
+               ZEND_POST_INC_LONG_NO_OVERFLOW_SPEC_TMPVARCV_HANDLER,
                ZEND_NULL_HANDLER,
+               ZEND_POST_INC_LONG_SPEC_TMPVARCV_HANDLER,
+               ZEND_POST_INC_LONG_SPEC_TMPVARCV_HANDLER,
                ZEND_NULL_HANDLER,
+               ZEND_POST_INC_LONG_SPEC_TMPVARCV_HANDLER,
                ZEND_NULL_HANDLER,
+               ZEND_POST_INC_LONG_OR_DOUBLE_SPEC_TMPVARCV_HANDLER,
+               ZEND_POST_INC_LONG_OR_DOUBLE_SPEC_TMPVARCV_HANDLER,
                ZEND_NULL_HANDLER,
+               ZEND_POST_INC_LONG_OR_DOUBLE_SPEC_TMPVARCV_HANDLER,
                ZEND_NULL_HANDLER,
+               ZEND_POST_DEC_LONG_NO_OVERFLOW_SPEC_TMPVARCV_HANDLER,
+               ZEND_POST_DEC_LONG_NO_OVERFLOW_SPEC_TMPVARCV_HANDLER,
                ZEND_NULL_HANDLER,
+               ZEND_POST_DEC_LONG_NO_OVERFLOW_SPEC_TMPVARCV_HANDLER,
                ZEND_NULL_HANDLER,
-               ZEND_BIND_STATIC_SPEC_CV_CONST_HANDLER,
+               ZEND_POST_DEC_LONG_SPEC_TMPVARCV_HANDLER,
+               ZEND_POST_DEC_LONG_SPEC_TMPVARCV_HANDLER,
                ZEND_NULL_HANDLER,
+               ZEND_POST_DEC_LONG_SPEC_TMPVARCV_HANDLER,
                ZEND_NULL_HANDLER,
+               ZEND_POST_DEC_LONG_OR_DOUBLE_SPEC_TMPVARCV_HANDLER,
+               ZEND_POST_DEC_LONG_OR_DOUBLE_SPEC_TMPVARCV_HANDLER,
                ZEND_NULL_HANDLER,
+               ZEND_POST_DEC_LONG_OR_DOUBLE_SPEC_TMPVARCV_HANDLER,
+               ZEND_QM_ASSIGN_NOREF_SPEC_CONST_HANDLER,
+               ZEND_QM_ASSIGN_NOREF_SPEC_TMPVARCV_HANDLER,
+               ZEND_QM_ASSIGN_NOREF_SPEC_TMPVARCV_HANDLER,
                ZEND_NULL_HANDLER,
+               ZEND_QM_ASSIGN_NOREF_SPEC_TMPVARCV_HANDLER,
                ZEND_NULL_HANDLER
        };
        static const uint32_t specs[] = {
@@ -57400,7 +59685,7 @@ void zend_init_opcodes_handlers(void)
                776 | SPEC_RULE_OP1 | SPEC_RULE_OP2 | SPEC_RULE_RETVAL,
                826 | SPEC_RULE_OP1 | SPEC_RULE_OP2,
                851 | SPEC_RULE_OP1,
-               2920,
+               3840,
                856,
                857 | SPEC_RULE_OP1,
                862 | SPEC_RULE_OP1,
@@ -57408,9 +59693,9 @@ void zend_init_opcodes_handlers(void)
                872 | SPEC_RULE_OP1,
                877 | SPEC_RULE_OP1,
                882 | SPEC_RULE_OP1 | SPEC_RULE_OP2,
-               2920,
-               2920,
-               2920,
+               3840,
+               3840,
+               3840,
                907 | SPEC_RULE_OP1,
                912 | SPEC_RULE_OP1 | SPEC_RULE_OP2,
                937 | SPEC_RULE_OP1 | SPEC_RULE_OP2,
@@ -57459,7 +59744,7 @@ void zend_init_opcodes_handlers(void)
                1646 | SPEC_RULE_OP1 | SPEC_RULE_OP2,
                1671 | SPEC_RULE_OP1 | SPEC_RULE_OP2,
                1696 | SPEC_RULE_OP1 | SPEC_RULE_OP2,
-               2920,
+               3840,
                1721,
                1722,
                1723,
@@ -57543,12 +59828,48 @@ void zend_init_opcodes_handlers(void)
                2845 | SPEC_RULE_OP1 | SPEC_RULE_OP2,
                2870 | SPEC_RULE_OP1 | SPEC_RULE_OP2,
                2895 | SPEC_RULE_OP1 | SPEC_RULE_OP2,
-               2920
+               3840
        };
        zend_opcode_handlers = labels;
+               zend_handlers_count = sizeof(labels) / sizeof(void*);
        zend_spec_handlers = specs;
 }
-static const void *zend_vm_get_opcode_handler(zend_uchar opcode, const zend_op* op)
+
+static HashTable *zend_handlers_table = NULL;
+
+static void init_opcode_serialiser(void)
+{
+       int i;
+       zval tmp;
+
+       zend_handlers_table = malloc(sizeof(HashTable));
+       zend_hash_init_ex(zend_handlers_table, zend_handlers_count, NULL, NULL, 1, 0);
+       zend_hash_real_init(zend_handlers_table, 0);
+       Z_TYPE_INFO(tmp) = IS_LONG;
+       for (i = 0; i < zend_handlers_count; i++) {
+               Z_LVAL(tmp) = i;
+               zend_hash_index_add(zend_handlers_table, (zend_long)(zend_uintptr_t)zend_opcode_handlers[i], &tmp);
+       }
+}
+
+ZEND_API void zend_serialize_opcode_handler(zend_op *op)
+{
+       zval *zv;
+
+       if (!zend_handlers_table) {
+               init_opcode_serialiser();
+       }
+       zv = zend_hash_index_find(zend_handlers_table, (zend_long)(zend_uintptr_t)op->handler);
+       ZEND_ASSERT(zv != NULL);
+       op->handler = (const void *)(zend_uintptr_t)Z_LVAL_P(zv);
+}
+
+ZEND_API void zend_deserialize_opcode_handler(zend_op *op)
+{
+       op->handler = zend_opcode_handlers[(zend_uintptr_t)op->handler];
+}
+
+static const void *zend_vm_get_opcode_handler_ex(uint32_t spec, const zend_op* op)
 {
        static const int zend_vm_decode[] = {
                _UNUSED_CODE, /* 0              */
@@ -57569,21 +59890,221 @@ static const void *zend_vm_get_opcode_handler(zend_uchar opcode, const zend_op*
                _UNUSED_CODE, /* 15             */
                _CV_CODE      /* 16 = IS_CV     */
        };
-       uint32_t spec = zend_spec_handlers[opcode];
        uint32_t offset = 0;
        if (spec & SPEC_RULE_OP1) offset = offset * 5 + zend_vm_decode[op->op1_type];
        if (spec & SPEC_RULE_OP2) offset = offset * 5 + zend_vm_decode[op->op2_type];
        if (spec & SPEC_RULE_OP_DATA) offset = offset * 5 + zend_vm_decode[(op + 1)->op1_type];
        if (spec & SPEC_RULE_RETVAL) offset = offset * 2 + (op->result_type != IS_UNUSED);
        if (spec & SPEC_RULE_QUICK_ARG) offset = offset * 2 + (op->op2.num < MAX_ARG_FLAG_NUM);
+       if (spec & SPEC_RULE_SMART_BRANCH) {
+               offset = offset * 3;
+               if ((op+1)->opcode == ZEND_JMPZ) {
+                       offset += 1;
+               } else if ((op+1)->opcode == ZEND_JMPNZ) {
+                       offset += 2;
+               }
+       }
        return zend_opcode_handlers[(spec & SPEC_START_MASK) + offset];
 }
 
+static const void *zend_vm_get_opcode_handler(zend_uchar opcode, const zend_op* op)
+{
+       return zend_vm_get_opcode_handler_ex(zend_spec_handlers[opcode], op);
+}
+
 ZEND_API void zend_vm_set_opcode_handler(zend_op* op)
 {
        op->handler = zend_vm_get_opcode_handler(zend_user_opcodes[op->opcode], op);
 }
 
+ZEND_API void zend_vm_set_opcode_handler_ex(zend_op* op, uint32_t op1_info, uint32_t op2_info, uint32_t res_info)
+{
+       zend_uchar opcode = zend_user_opcodes[op->opcode];
+       uint32_t spec = zend_spec_handlers[opcode];
+       switch (opcode) {
+               case ZEND_ADD:
+                       if ((res_info == MAY_BE_LONG && op1_info == MAY_BE_LONG && op2_info == MAY_BE_LONG)) {
+                               if (op->op1_type == IS_CONST && op->op2_type == IS_CONST) {
+                                       break;
+                               }
+                               spec = 2920 | SPEC_RULE_OP1 | SPEC_RULE_OP2;
+                               if (op->op1_type > op->op2_type) {
+                                       zend_swap_operands(op);
+                               }
+                       } else if ((op1_info == MAY_BE_LONG && op2_info == MAY_BE_LONG)) {
+                               if (op->op1_type == IS_CONST && op->op2_type == IS_CONST) {
+                                       break;
+                               }
+                               spec = 2945 | SPEC_RULE_OP1 | SPEC_RULE_OP2;
+                               if (op->op1_type > op->op2_type) {
+                                       zend_swap_operands(op);
+                               }
+                       } else if ((op1_info == MAY_BE_DOUBLE && op2_info == MAY_BE_DOUBLE)) {
+                               if (op->op1_type == IS_CONST && op->op2_type == IS_CONST) {
+                                       break;
+                               }
+                               spec = 2970 | SPEC_RULE_OP1 | SPEC_RULE_OP2;
+                               if (op->op1_type > op->op2_type) {
+                                       zend_swap_operands(op);
+                               }
+                       }
+                       break;
+               case ZEND_SUB:
+                       if ((res_info == MAY_BE_LONG && op1_info == MAY_BE_LONG && op2_info == MAY_BE_LONG)) {
+                               if (op->op1_type == IS_CONST && op->op2_type == IS_CONST) {
+                                       break;
+                               }
+                               spec = 2995 | SPEC_RULE_OP1 | SPEC_RULE_OP2;
+                       } else if ((op1_info == MAY_BE_LONG && op2_info == MAY_BE_LONG)) {
+                               if (op->op1_type == IS_CONST && op->op2_type == IS_CONST) {
+                                       break;
+                               }
+                               spec = 3020 | SPEC_RULE_OP1 | SPEC_RULE_OP2;
+                       } else if ((op1_info == MAY_BE_DOUBLE && op2_info == MAY_BE_DOUBLE)) {
+                               if (op->op1_type == IS_CONST && op->op2_type == IS_CONST) {
+                                       break;
+                               }
+                               spec = 3045 | SPEC_RULE_OP1 | SPEC_RULE_OP2;
+                       }
+                       break;
+               case ZEND_MUL:
+                       if ((res_info == MAY_BE_LONG && op1_info == MAY_BE_LONG && op2_info == MAY_BE_LONG)) {
+                               if (op->op1_type == IS_CONST && op->op2_type == IS_CONST) {
+                                       break;
+                               }
+                               spec = 3070 | SPEC_RULE_OP1 | SPEC_RULE_OP2;
+                               if (op->op1_type > op->op2_type) {
+                                       zend_swap_operands(op);
+                               }
+                       } else if ((op1_info == MAY_BE_LONG && op2_info == MAY_BE_LONG)) {
+                               if (op->op1_type == IS_CONST && op->op2_type == IS_CONST) {
+                                       break;
+                               }
+                               spec = 3095 | SPEC_RULE_OP1 | SPEC_RULE_OP2;
+                               if (op->op1_type > op->op2_type) {
+                                       zend_swap_operands(op);
+                               }
+                       } else if ((op1_info == MAY_BE_DOUBLE && op2_info == MAY_BE_DOUBLE)) {
+                               if (op->op1_type == IS_CONST && op->op2_type == IS_CONST) {
+                                       break;
+                               }
+                               spec = 3120 | SPEC_RULE_OP1 | SPEC_RULE_OP2;
+                               if (op->op1_type > op->op2_type) {
+                                       zend_swap_operands(op);
+                               }
+                       }
+                       break;
+               case ZEND_IS_EQUAL:
+                       if ((op1_info == MAY_BE_LONG && op2_info == MAY_BE_LONG)) {
+                               if (op->op1_type == IS_CONST && op->op2_type == IS_CONST) {
+                                       break;
+                               }
+                               spec = 3145 | SPEC_RULE_OP1 | SPEC_RULE_OP2 | SPEC_RULE_SMART_BRANCH;
+                               if (op->op1_type > op->op2_type) {
+                                       zend_swap_operands(op);
+                               }
+                       } else if ((op1_info == MAY_BE_DOUBLE && op2_info == MAY_BE_DOUBLE)) {
+                               if (op->op1_type == IS_CONST && op->op2_type == IS_CONST) {
+                                       break;
+                               }
+                               spec = 3220 | SPEC_RULE_OP1 | SPEC_RULE_OP2 | SPEC_RULE_SMART_BRANCH;
+                               if (op->op1_type > op->op2_type) {
+                                       zend_swap_operands(op);
+                               }
+                       }
+                       break;
+               case ZEND_IS_NOT_EQUAL:
+                       if ((op1_info == MAY_BE_LONG && op2_info == MAY_BE_LONG)) {
+                               if (op->op1_type == IS_CONST && op->op2_type == IS_CONST) {
+                                       break;
+                               }
+                               spec = 3295 | SPEC_RULE_OP1 | SPEC_RULE_OP2 | SPEC_RULE_SMART_BRANCH;
+                               if (op->op1_type > op->op2_type) {
+                                       zend_swap_operands(op);
+                               }
+                       } else if ((op1_info == MAY_BE_DOUBLE && op2_info == MAY_BE_DOUBLE)) {
+                               if (op->op1_type == IS_CONST && op->op2_type == IS_CONST) {
+                                       break;
+                               }
+                               spec = 3370 | SPEC_RULE_OP1 | SPEC_RULE_OP2 | SPEC_RULE_SMART_BRANCH;
+                               if (op->op1_type > op->op2_type) {
+                                       zend_swap_operands(op);
+                               }
+                       }
+                       break;
+               case ZEND_IS_SMALLER:
+                       if ((op1_info == MAY_BE_LONG && op2_info == MAY_BE_LONG)) {
+                               if (op->op1_type == IS_CONST && op->op2_type == IS_CONST) {
+                                       break;
+                               }
+                               spec = 3445 | SPEC_RULE_OP1 | SPEC_RULE_OP2 | SPEC_RULE_SMART_BRANCH;
+                       } else if ((op1_info == MAY_BE_DOUBLE && op2_info == MAY_BE_DOUBLE)) {
+                               if (op->op1_type == IS_CONST && op->op2_type == IS_CONST) {
+                                       break;
+                               }
+                               spec = 3520 | SPEC_RULE_OP1 | SPEC_RULE_OP2 | SPEC_RULE_SMART_BRANCH;
+                       }
+                       break;
+               case ZEND_IS_SMALLER_OR_EQUAL:
+                       if ((op1_info == MAY_BE_LONG && op2_info == MAY_BE_LONG)) {
+                               if (op->op1_type == IS_CONST && op->op2_type == IS_CONST) {
+                                       break;
+                               }
+                               spec = 3595 | SPEC_RULE_OP1 | SPEC_RULE_OP2 | SPEC_RULE_SMART_BRANCH;
+                       } else if ((op1_info == MAY_BE_DOUBLE && op2_info == MAY_BE_DOUBLE)) {
+                               if (op->op1_type == IS_CONST && op->op2_type == IS_CONST) {
+                                       break;
+                               }
+                               spec = 3670 | SPEC_RULE_OP1 | SPEC_RULE_OP2 | SPEC_RULE_SMART_BRANCH;
+                       }
+                       break;
+               case ZEND_QM_ASSIGN:
+                       if ((!(op1_info & ((MAY_BE_ANY|MAY_BE_UNDEF)-(MAY_BE_NULL|MAY_BE_FALSE|MAY_BE_TRUE|MAY_BE_LONG|MAY_BE_DOUBLE))))) {
+                               spec = 3835 | SPEC_RULE_OP1;
+                       }
+                       break;
+               case ZEND_PRE_INC:
+                       if ((res_info == MAY_BE_LONG && op1_info == MAY_BE_LONG)) {
+                               spec = 3745 | SPEC_RULE_OP1 | SPEC_RULE_RETVAL;
+                       } else if ((op1_info == MAY_BE_LONG)) {
+                               spec = 3755 | SPEC_RULE_OP1 | SPEC_RULE_RETVAL;
+                       } else if ((op1_info == (MAY_BE_LONG|MAY_BE_DOUBLE))) {
+                               spec = 3765 | SPEC_RULE_OP1 | SPEC_RULE_RETVAL;
+                       }
+                       break;
+               case ZEND_PRE_DEC:
+                       if ((res_info == MAY_BE_LONG && op1_info == MAY_BE_LONG)) {
+                               spec = 3775 | SPEC_RULE_OP1 | SPEC_RULE_RETVAL;
+                       } else if ((op1_info == MAY_BE_LONG)) {
+                               spec = 3785 | SPEC_RULE_OP1 | SPEC_RULE_RETVAL;
+                       } else if ((op1_info == (MAY_BE_LONG|MAY_BE_DOUBLE))) {
+                               spec = 3795 | SPEC_RULE_OP1 | SPEC_RULE_RETVAL;
+                       }
+                       break;
+               case ZEND_POST_INC:
+                       if ((res_info == MAY_BE_LONG && op1_info == MAY_BE_LONG)) {
+                               spec = 3805 | SPEC_RULE_OP1;
+                       } else if ((op1_info == MAY_BE_LONG)) {
+                               spec = 3810 | SPEC_RULE_OP1;
+                       } else if ((op1_info == (MAY_BE_LONG|MAY_BE_DOUBLE))) {
+                               spec = 3815 | SPEC_RULE_OP1;
+                       }
+                       break;
+               case ZEND_POST_DEC:
+                       if ((res_info == MAY_BE_LONG && op1_info == MAY_BE_LONG)) {
+                               spec = 3820 | SPEC_RULE_OP1;
+                       } else if ((op1_info == MAY_BE_LONG)) {
+                               spec = 3825 | SPEC_RULE_OP1;
+                       } else if ((op1_info == (MAY_BE_LONG|MAY_BE_DOUBLE))) {
+                               spec = 3830 | SPEC_RULE_OP1;
+                       }
+                       break;
+               default:
+                       break;
+       }
+       op->handler = zend_vm_get_opcode_handler_ex(spec, op);
+}
+
 ZEND_API int zend_vm_call_opcode_handler(zend_execute_data* ex)
 {
        int ret;
index 144a17920ab41e1ff185e945c7d568073806989b..ff877df76ea150a957769740c5b6e51059a9746a 100644 (file)
@@ -47,3 +47,38 @@ void {%INITIALIZER_NAME%}(void)
 {
        {%EXTERNAL_LABELS%}
 }
+
+static HashTable *zend_handlers_table = NULL;
+
+static void init_opcode_serialiser(void)
+{
+       int i;
+       zval tmp;
+
+       zend_handlers_table = malloc(sizeof(HashTable));
+       zend_hash_init_ex(zend_handlers_table, zend_handlers_count, NULL, NULL, 1, 0);
+       zend_hash_real_init(zend_handlers_table, 0);
+       Z_TYPE_INFO(tmp) = IS_LONG;
+       for (i = 0; i < zend_handlers_count; i++) {
+               Z_LVAL(tmp) = i;
+               zend_hash_index_add(zend_handlers_table, (zend_long)(zend_uintptr_t)zend_opcode_handlers[i], &tmp);
+       }
+}
+
+ZEND_API void zend_serialize_opcode_handler(zend_op *op)
+{
+       zval *zv;
+
+       if (!zend_handlers_table) {
+               init_opcode_serialiser();
+       }
+       zv = zend_hash_index_find(zend_handlers_table, (zend_long)(zend_uintptr_t)op->handler);
+       ZEND_ASSERT(zv != NULL);
+       op->handler = (const void *)(zend_uintptr_t)Z_LVAL_P(zv);
+}
+
+ZEND_API void zend_deserialize_opcode_handler(zend_op *op)
+{
+       op->handler = zend_opcode_handlers[(zend_uintptr_t)op->handler];
+}
+
index 6d7027698b74e11056044dbe2f1654941ebe082c..4407d7dfe31e9deb7cb40b833758643e9d83dd7d 100644 (file)
@@ -1053,6 +1053,10 @@ function gen_labels($f, $spec, $kind, $prolog, &$specs, $switch_labels = array()
                        if ($flags) {
                                $specs[$num] .= " | ".implode("|", $flags);
                        }
+                       if ($num >= 256) {
+                               $opcodes[$num]['spec_code'] = $specs[$num];
+                               unset($specs[$num]);
+                       }
 
                        $foreach_op1 = function($do) use ($dsc, $op_types) {
                                return function() use ($do, $dsc, $op_types) {
@@ -1226,6 +1230,9 @@ function gen_labels($f, $spec, $kind, $prolog, &$specs, $switch_labels = array()
                                }
                                $next++;
                        }
+                       if ($num >= 256) {
+                               continue;
+                       }
                        $next = $num+1;
 
                        //ugly trick for ZEND_VM_DEFINE_OP
@@ -1430,11 +1437,13 @@ function gen_executor_code($f, $spec, $kind, $prolog, &$switch_labels = array())
                foreach ($list as $lineno => $dsc) {
                        if (isset($dsc["handler"])) {
                                $num = $dsc["handler"];
-                         // Generate handler code
-                               gen_handler($f, 0, $kind, $opcodes[$num]["op"], "ANY", "ANY", isset($opcodes[$num]["use"]), $opcodes[$num]["code"], $lineno);
+                               // Generate handler code
+                               if ($num < 256) {
+                                       gen_handler($f, 0, $kind, $opcodes[$num]["op"], "ANY", "ANY", isset($opcodes[$num]["use"]), $opcodes[$num]["code"], $lineno);
+                               }
                        } else if (isset($dsc["helper"])) {
                                $num = $dsc["helper"];
-                         // Generate helper code
+                               // Generate helper code
                                gen_helper($f, 0, $kind, $num, "ANY", "ANY", $helpers[$num]["param"], $helpers[$num]["code"], $lineno, $helpers[$num]["inline"]);
                        } else {
                                var_dump($dsc);
@@ -1494,6 +1503,7 @@ function gen_executor($f, $skl, $spec, $kind, $executor_name, $initializer_name)
                                        out($f,"\n");
                                        out($f,"static const uint32_t *zend_spec_handlers;\n");
                                        out($f,"static const void **zend_opcode_handlers;\n");
+                                       out($f,"static int zend_handlers_count;\n");
                                        out($f,"static const void *zend_vm_get_opcode_handler(zend_uchar opcode, const zend_op* op);\n\n");
                                        switch ($kind) {
                                                case ZEND_VM_KIND_CALL:
@@ -1684,6 +1694,7 @@ function gen_executor($f, $skl, $spec, $kind, $executor_name, $initializer_name)
                                                gen_specs($f, $spec, $kind, $prolog."\t", $specs);
                                                out($f,$prolog."};\n");
                                                out($f,$prolog."\tzend_opcode_handlers = (const void **) labels;\n");
+                                               out($f,$prolog."\tzend_handlers_count = sizeof(labels) / sizeof(void*);\n");
                                                out($f,$prolog."\tzend_spec_handlers = (const uint32_t *) specs;\n");
                                                out($f,$prolog."\treturn;\n");
                                                out($f,$prolog."}\n");
@@ -1772,6 +1783,7 @@ function gen_executor($f, $skl, $spec, $kind, $executor_name, $initializer_name)
                                                gen_specs($f, $spec, $kind, $prolog."\t", $specs);
                                                out($f,$prolog."};\n");
                                                out($f,$prolog."zend_opcode_handlers = labels;\n");
+                                               out($f,$prolog."\tzend_handlers_count = sizeof(labels) / sizeof(void*);\n");
                                                out($f,$prolog."zend_spec_handlers = specs;\n");
                                        }
                                        break;
@@ -1892,6 +1904,7 @@ function gen_vm($def, $skel) {
        $helper         = null;
        $max_opcode_len = 0;
        $max_opcode     = 0;
+       $extra_num      = 256;
        $export         = array();
        foreach ($in as $line) {
                ++$lineno;
@@ -1939,6 +1952,48 @@ function gen_vm($def, $skel) {
                        $handler = $code;
                        $helper = null;
                        $list[$lineno] = array("handler"=>$handler);
+               } else if (strpos($line,"ZEND_VM_TYPE_SPEC_HANDLER(") === 0) {
+                 // Parsing opcode handler's definition
+                       if (preg_match(
+                                       "/^ZEND_VM_TYPE_SPEC_HANDLER\(\s*([A-Z_]+)\s*,\s*([^,]+),\s*([A-Za-z_]+)\s*,\s*([A-Z_|]+)\s*,\s*([A-Z_|]+)\s*(,\s*([A-Z_|]+)\s*)?(,\s*SPEC\(([A-Z_|=,]+)\)\s*)?\)/",
+                                       $line,
+                                       $m) == 0) {
+                               die("ERROR ($def:$lineno): Invalid ZEND_VM_TYPE_HANDLER_HANDLER definition.\n");
+                       }
+                       $orig_op = $m[1];
+                       if (!isset($opnames[$orig_op])) {
+                               die("ERROR ($def:$lineno): Opcode with name '$orig_op' is not defined.\n");
+                       }
+                       $orig_code = $opnames[$orig_op];
+                       $condition = $m[2];
+                       $code = $extra_num++;
+                       $op = $m[3];
+                       $op1  = parse_operand_spec($def, $lineno, $m[4], $flags1);
+                       $op2  = parse_operand_spec($def, $lineno, $m[5], $flags2);
+                       $flags = $flags1 | ($flags2 << 8);
+                       if (!empty($m[7])) {
+                               $flags |= parse_ext_spec($def, $lineno, $m[7]);
+                       }
+
+                       if (isset($opcodes[$code])) {
+                               die("ERROR ($def:$lineno): Opcode with name '$code' is already defined.\n");
+                       }
+                       $opcodes[$orig_code]['type_spec'][$code] = $condition;
+                       $used_extra_spec["TYPE"] = 1;
+                       $opcodes[$code] = array("op"=>$op,"op1"=>$op1,"op2"=>$op2,"code"=>"","flags"=>$flags);
+                       if (isset($m[9])) {
+                               $opcodes[$code]["spec"] = parse_spec_rules($def, $lineno, $m[9]);
+                               if (isset($opcodes[$code]["spec"]["NO_CONST_CONST"])) {
+                                       $opcodes[$code]["flags"] |= $vm_op_flags["ZEND_VM_NO_CONST_CONST"];
+                               }
+                               if (isset($opcodes[$code]["spec"]["COMMUTATIVE"])) {
+                                       $opcodes[$code]["flags"] |= $vm_op_flags["ZEND_VM_COMMUTATIVE"];
+                               }
+                       }
+                       $opnames[$op] = $code;
+                       $handler = $code;
+                       $helper = null;
+                       $list[$lineno] = array("handler"=>$handler);
                } else if (strpos($line,"ZEND_VM_HELPER(") === 0 || strpos($line,"ZEND_VM_INLINE_HELPER(") === 0) {
                  // Parsing helper's definition
                        if (preg_match(
@@ -2065,7 +2120,9 @@ function gen_vm($def, $skel) {
        foreach ($opcodes as $code => $dsc) {
                $code = str_pad((string)$code,$code_len," ",STR_PAD_LEFT);
                $op = str_pad($dsc["op"],$max_opcode_len);
-               fputs($f,"#define $op $code\n");
+               if ($code <= $max_opcode) {
+                       fputs($f,"#define $op $code\n");
+               }
        }
 
        $code = str_pad((string)$max_opcode,$code_len," ",STR_PAD_LEFT);
@@ -2153,10 +2210,10 @@ function gen_vm($def, $skel) {
        gen_executor($f, $skl, ZEND_VM_SPEC, ZEND_VM_KIND, "execute", "zend_init_opcodes_handlers");
 
        // Generate zend_vm_get_opcode_handler() function
-       out($f, "static const void *zend_vm_get_opcode_handler(zend_uchar opcode, const zend_op* op)\n");
+       out($f, "static const void *zend_vm_get_opcode_handler_ex(uint32_t spec, const zend_op* op)\n");
        out($f, "{\n");
        if (!ZEND_VM_SPEC) {
-               out($f, "\treturn zend_opcode_handlers[opcode];\n");
+               out($f, "\treturn zend_opcode_handlers[spec];\n");
        } else {
                out($f, "\tstatic const int zend_vm_decode[] = {\n");
                out($f, "\t\t_UNUSED_CODE, /* 0              */\n");
@@ -2177,7 +2234,6 @@ function gen_vm($def, $skel) {
                out($f, "\t\t_UNUSED_CODE, /* 15             */\n");
                out($f, "\t\t_CV_CODE      /* 16 = IS_CV     */\n");
                out($f, "\t};\n");
-               out($f, "\tuint32_t spec = zend_spec_handlers[opcode];\n");
                out($f, "\tuint32_t offset = 0;\n");
                out($f, "\tif (spec & SPEC_RULE_OP1) offset = offset * 5 + zend_vm_decode[op->op1_type];\n");
                out($f, "\tif (spec & SPEC_RULE_OP2) offset = offset * 5 + zend_vm_decode[op->op2_type];\n");
@@ -2203,6 +2259,14 @@ function gen_vm($def, $skel) {
                out($f, "\treturn zend_opcode_handlers[(spec & SPEC_START_MASK) + offset];\n");
        }
        out($f, "}\n\n");
+       out($f, "static const void *zend_vm_get_opcode_handler(zend_uchar opcode, const zend_op* op)\n");
+       out($f, "{\n");
+       if (!ZEND_VM_SPEC) {
+               out($f, "\treturn zend_vm_get_opcode_handler_ex(opcode, op);\n");
+       } else {
+               out($f, "\treturn zend_vm_get_opcode_handler_ex(zend_spec_handlers[opcode], op);\n");
+       }
+       out($f, "}\n\n");
 
        // Generate zend_vm_get_opcode_handler() function
        out($f, "ZEND_API void zend_vm_set_opcode_handler(zend_op* op)\n");
@@ -2210,6 +2274,55 @@ function gen_vm($def, $skel) {
        out($f, "\top->handler = zend_vm_get_opcode_handler(zend_user_opcodes[op->opcode], op);\n");
        out($f, "}\n\n");
 
+       // Generate zend_vm_set_opcode_handler_ex() function
+       out($f, "ZEND_API void zend_vm_set_opcode_handler_ex(zend_op* op, uint32_t op1_info, uint32_t op2_info, uint32_t res_info)\n");
+       out($f, "{\n");
+       out($f, "\tzend_uchar opcode = zend_user_opcodes[op->opcode];\n");
+       if (!ZEND_VM_SPEC) {
+               out($f, "\top->handler = zend_vm_get_opcode_handler_ex(opcode, op);\n");
+       } else {
+               out($f, "\tuint32_t spec = zend_spec_handlers[opcode];\n");
+               if (isset($used_extra_spec["TYPE"])) {
+                       out($f, "\tswitch (opcode) {\n");
+                       foreach($opcodes as $code => $dsc) {
+                               if (isset($dsc['type_spec'])) {
+                                       $orig_op = $dsc['op'];
+                                       out($f, "\t\tcase $orig_op:\n");
+                                       $first = true;
+                                       foreach($dsc['type_spec'] as $code => $condition) {
+                                               if ($first) {
+                                                       out($f, "\t\t\tif ($condition) {\n");
+                                                       $first = false;
+                                               } else {
+                                                       out($f, "\t\t\t} else if ($condition) {\n");
+                                               }
+                                               $spec_dsc = $opcodes[$code];
+                                               if (isset($spec_dsc["spec"]["NO_CONST_CONST"])) {
+                                                       out($f, "\t\t\t\tif (op->op1_type == IS_CONST && op->op2_type == IS_CONST) {\n");
+                                                       out($f, "\t\t\t\t\tbreak;\n");
+                                                       out($f, "\t\t\t\t}\n");
+                                               }
+                                               out($f, "\t\t\t\tspec = ${spec_dsc['spec_code']};\n");
+                                               if (isset($spec_dsc["spec"]["COMMUTATIVE"])) {
+                                                       out($f, "\t\t\t\tif (op->op1_type > op->op2_type) {\n");
+                                                       out($f, "\t\t\t\t\tzend_swap_operands(op);\n");
+                                                       out($f, "\t\t\t\t}\n");
+                                               }
+                                       }
+                                       if (!$first) {
+                                               out($f, "\t\t\t}\n");
+                                       }
+                                       out($f, "\t\t\tbreak;\n");
+                               }
+                       }
+                       out($f, "\t\tdefault:\n");
+                       out($f, "\t\t\tbreak;\n");
+                       out($f, "\t}\n");
+               }
+               out($f, "\top->handler = zend_vm_get_opcode_handler_ex(spec, op);\n");
+       }
+       out($f, "}\n\n");
+
        // Generate zend_vm_call_opcode_handler() function
        if (ZEND_VM_KIND == ZEND_VM_KIND_CALL) {
                out($f, "ZEND_API int zend_vm_call_opcode_handler(zend_execute_data* ex)\n");
index 1826b9943442f7f4d552f8e39c15ec0fb47244ec..b82d7b1c3976517a19bd2a0ddd99d5a22b365df1 100644 (file)
 #include "zend_bitset.h"
 
 /* Bitmask for type inference (zend_ssa_var_info.type) */
-#define MAY_BE_UNDEF                (1 << IS_UNDEF)
-#define MAY_BE_NULL                        (1 << IS_NULL)
-#define MAY_BE_FALSE               (1 << IS_FALSE)
-#define MAY_BE_TRUE                        (1 << IS_TRUE)
-#define MAY_BE_LONG                        (1 << IS_LONG)
-#define MAY_BE_DOUBLE              (1 << IS_DOUBLE)
-#define MAY_BE_STRING              (1 << IS_STRING)
-#define MAY_BE_ARRAY               (1 << IS_ARRAY)
-#define MAY_BE_OBJECT              (1 << IS_OBJECT)
-#define MAY_BE_RESOURCE                    (1 << IS_RESOURCE)
-#define MAY_BE_ANY                  (MAY_BE_NULL|MAY_BE_FALSE|MAY_BE_TRUE|MAY_BE_LONG|MAY_BE_DOUBLE|MAY_BE_STRING|MAY_BE_ARRAY|MAY_BE_OBJECT|MAY_BE_RESOURCE)
-#define MAY_BE_REF                  (1 << IS_REFERENCE) /* may be reference */
-
-#define MAY_BE_ARRAY_SHIFT          (IS_REFERENCE)
-
-#define MAY_BE_ARRAY_OF_NULL           (MAY_BE_NULL     << MAY_BE_ARRAY_SHIFT)
-#define MAY_BE_ARRAY_OF_FALSE          (MAY_BE_FALSE    << MAY_BE_ARRAY_SHIFT)
-#define MAY_BE_ARRAY_OF_TRUE           (MAY_BE_TRUE     << MAY_BE_ARRAY_SHIFT)
-#define MAY_BE_ARRAY_OF_LONG           (MAY_BE_LONG     << MAY_BE_ARRAY_SHIFT)
-#define MAY_BE_ARRAY_OF_DOUBLE         (MAY_BE_DOUBLE   << MAY_BE_ARRAY_SHIFT)
-#define MAY_BE_ARRAY_OF_STRING         (MAY_BE_STRING   << MAY_BE_ARRAY_SHIFT)
-#define MAY_BE_ARRAY_OF_ARRAY          (MAY_BE_ARRAY    << MAY_BE_ARRAY_SHIFT)
-#define MAY_BE_ARRAY_OF_OBJECT         (MAY_BE_OBJECT   << MAY_BE_ARRAY_SHIFT)
-#define MAY_BE_ARRAY_OF_RESOURCE       (MAY_BE_RESOURCE << MAY_BE_ARRAY_SHIFT)
-#define MAY_BE_ARRAY_OF_ANY                    (MAY_BE_ANY      << MAY_BE_ARRAY_SHIFT)
-#define MAY_BE_ARRAY_OF_REF                    (MAY_BE_REF      << MAY_BE_ARRAY_SHIFT)
-
-#define MAY_BE_ARRAY_KEY_LONG       (1<<21)
-#define MAY_BE_ARRAY_KEY_STRING     (1<<22)
-#define MAY_BE_ARRAY_KEY_ANY        (MAY_BE_ARRAY_KEY_LONG | MAY_BE_ARRAY_KEY_STRING)
-
-#define MAY_BE_ERROR                (1<<23)
-#define MAY_BE_CLASS                (1<<24)
+#include "zend_type_info.h"
 
 #define MAY_BE_IN_REG               (1<<25) /* value allocated in CPU register */
 
index 7882a43f6a0f743f46d8585acf8f5f7173b0fd72..d103ecf6fe0e442488bec76c443316b4c5388a2b 100644 (file)
@@ -29,6 +29,7 @@
 #include "zend_cfg.h"
 #include "zend_func_info.h"
 #include "zend_call_graph.h"
+#include "zend_inference.h"
 #include "zend_dump.h"
 
 #ifndef HAVE_DFA_PASS
@@ -678,6 +679,34 @@ static void zend_redo_pass_two(zend_op_array *op_array)
        }
 }
 
+#if HAVE_DFA_PASS
+static void zend_redo_pass_two_ex(zend_op_array *op_array, zend_ssa *ssa)
+{
+       zend_op *opline, *end;
+
+       opline = op_array->opcodes;
+       end = opline + op_array->last;
+       while (opline < end) {
+               zend_vm_set_opcode_handler_ex(opline,
+                       opline->op1_type == IS_UNUSED ? 0 : (OP1_INFO() & (MAY_BE_UNDEF|MAY_BE_ANY|MAY_BE_REF|MAY_BE_ARRAY_OF_ANY|MAY_BE_ARRAY_KEY_ANY)),
+                       opline->op2_type == IS_UNUSED ? 0 : (OP2_INFO() & (MAY_BE_UNDEF|MAY_BE_ANY|MAY_BE_REF|MAY_BE_ARRAY_OF_ANY|MAY_BE_ARRAY_KEY_ANY)),
+                       (opline->opcode == ZEND_PRE_INC ||
+                        opline->opcode == ZEND_PRE_DEC ||
+                        opline->opcode == ZEND_POST_INC ||
+                        opline->opcode == ZEND_POST_DEC) ?
+                               ((ssa->ops[opline - op_array->opcodes].op1_def >= 0) ? (OP1_DEF_INFO() & (MAY_BE_UNDEF|MAY_BE_ANY|MAY_BE_REF|MAY_BE_ARRAY_OF_ANY|MAY_BE_ARRAY_KEY_ANY)) : MAY_BE_ANY) :
+                               (opline->result_type == IS_UNUSED ? 0 : (RES_INFO() & (MAY_BE_UNDEF|MAY_BE_ANY|MAY_BE_REF|MAY_BE_ARRAY_OF_ANY|MAY_BE_ARRAY_KEY_ANY))));
+               if (opline->op1_type == IS_CONST) {
+                       ZEND_PASS_TWO_UPDATE_CONSTANT(op_array, opline->op1);
+               }
+               if (opline->op2_type == IS_CONST) {
+                       ZEND_PASS_TWO_UPDATE_CONSTANT(op_array, opline->op2);
+               }
+               opline++;
+       }
+}
+#endif
+
 static void zend_optimize_op_array(zend_op_array      *op_array,
                                    zend_optimizer_ctx *ctx)
 {
@@ -810,8 +839,13 @@ int zend_optimize_script(zend_script *script, zend_long optimization_level, zend
                }
 
                for (i = 0; i < call_graph.op_arrays_count; i++) {
-                       zend_redo_pass_two(call_graph.op_arrays[i]);
-                       ZEND_SET_FUNC_INFO(call_graph.op_arrays[i], NULL);
+                       func_info = ZEND_FUNC_INFO(call_graph.op_arrays[i]);
+                       if (func_info && func_info->ssa.var_info) {
+                               zend_redo_pass_two_ex(call_graph.op_arrays[i], &func_info->ssa);
+                               ZEND_SET_FUNC_INFO(call_graph.op_arrays[i], NULL);
+                       } else {
+                               zend_redo_pass_two(call_graph.op_arrays[i]);
+                       }
                }
 
                zend_arena_release(&ctx.arena, checkpoint);
index 2184267ecd0362d1b0709a93eb93dca60ecc5ab6..dc4cb5f747af8e3fbfa416f47f676fdc0a334547 100644 (file)
@@ -418,6 +418,7 @@ static void zend_file_cache_serialize_op_array(zend_op_array            *op_arra
                                        break;
                        }
 # endif
+                       zend_serialize_opcode_handler(opline);
                        opline++;
                }
 #else
@@ -995,7 +996,7 @@ static void zend_file_cache_unserialize_op_array(zend_op_array           *op_arr
                                        break;
                        }
 # endif
-                       ZEND_VM_SET_OPCODE_HANDLER(opline);
+                       zend_deserialize_opcode_handler(opline);
                        opline++;
                }