]> granicus.if.org Git - php/commitdiff
Fixed user-opcode support
authorDmitry Stogov <dmitry@zend.com>
Wed, 14 Mar 2018 06:41:25 +0000 (09:41 +0300)
committerDmitry Stogov <dmitry@zend.com>
Wed, 14 Mar 2018 06:41:25 +0000 (09:41 +0300)
Zend/zend_vm_execute.h
Zend/zend_vm_gen.php

index d8eb5a57437574b76d61045274539bdcb4509e2e..82f8c4ef68744dfa62992b636e95fe64a7403f7e 100644 (file)
@@ -69301,7 +69301,7 @@ ZEND_API int zend_vm_call_opcode_handler(zend_execute_data* ex)
        LOAD_OPLINE();
 #if defined(ZEND_VM_FP_GLOBAL_REG) && defined(ZEND_VM_IP_GLOBAL_REG)
 #if (ZEND_VM_KIND == ZEND_VM_KIND_HYBRID)
-       handler = (opcode_handler_t)zend_vm_get_opcode_handler_func(opline->opcode, opline);
+       handler = (opcode_handler_t)zend_vm_get_opcode_handler_func(zend_user_opcodes[opline->opcode], opline);
        handler(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU);
        if (EXPECTED(opline != &hybrid_halt_op)) {
 #else
index 98289b9b7cc4c55259262159965fa9ced752357b..995eafc8564d0a1b8c970871e0b32d6d3f2ea1b2 100644 (file)
@@ -2599,7 +2599,7 @@ function gen_vm($def, $skel) {
                out($f,"#if defined(ZEND_VM_FP_GLOBAL_REG) && defined(ZEND_VM_IP_GLOBAL_REG)\n");
                if (ZEND_VM_KIND == ZEND_VM_KIND_HYBRID) {
                        out($f,"#if (ZEND_VM_KIND == ZEND_VM_KIND_HYBRID)\n");
-                       out($f, "\thandler = (opcode_handler_t)zend_vm_get_opcode_handler_func(opline->opcode, opline);\n");
+                       out($f, "\thandler = (opcode_handler_t)zend_vm_get_opcode_handler_func(zend_user_opcodes[opline->opcode], opline);\n");
                        out($f, "\thandler(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU);\n");
                        out($f, "\tif (EXPECTED(opline != &hybrid_halt_op)) {\n");
                        out($f,"#else\n");