]> granicus.if.org Git - php/commitdiff
Reordering
authorDmitry Stogov <dmitry@zend.com>
Wed, 24 Jul 2019 15:49:46 +0000 (18:49 +0300)
committerDmitry Stogov <dmitry@zend.com>
Wed, 24 Jul 2019 15:49:46 +0000 (18:49 +0300)
Zend/zend_vm_def.h
Zend/zend_vm_execute.h

index 2314681671ba22b8a41aef69f85dbf0e21925509..045aae189230cfb946556d5f5cca6e95b020d66b 100644 (file)
@@ -5182,15 +5182,14 @@ ZEND_VM_HANDLER(120, ZEND_SEND_USER, CONST|TMP|VAR|CV, NUM)
        zend_free_op free_op1;
 
        SAVE_OPLINE();
-       arg = GET_OP1_ZVAL_PTR_DEREF(BP_VAR_R);
-       param = ZEND_CALL_VAR(EX(call), opline->result.var);
 
        if (UNEXPECTED(ARG_MUST_BE_SENT_BY_REF(EX(call)->func, opline->op2.num))) {
                zend_param_must_be_ref(EX(call)->func, opline->op2.num);
        }
 
+       arg = GET_OP1_ZVAL_PTR_DEREF(BP_VAR_R);
+       param = ZEND_CALL_VAR(EX(call), opline->result.var);
        ZVAL_COPY(param, arg);
-
        FREE_OP1();
        ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION();
 }
index ef539601295294ca8d2de5be480a7c4add050a0c..0162029b5fe677c05aae8c9e77d7be3468c518a5 100644 (file)
@@ -3815,13 +3815,13 @@ static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_SEND_USER_SPEC_CONST_HANDLER(Z
 
 
        SAVE_OPLINE();
-       arg = RT_CONSTANT(opline, opline->op1);
-       param = ZEND_CALL_VAR(EX(call), opline->result.var);
 
        if (UNEXPECTED(ARG_MUST_BE_SENT_BY_REF(EX(call)->func, opline->op2.num))) {
                zend_param_must_be_ref(EX(call)->func, opline->op2.num);
        }
 
+       arg = RT_CONSTANT(opline, opline->op1);
+       param = ZEND_CALL_VAR(EX(call), opline->result.var);
        ZVAL_COPY(param, arg);
 
        ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION();
@@ -17875,15 +17875,14 @@ static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_SEND_USER_SPEC_TMP_HANDLER(ZEN
        zend_free_op free_op1;
 
        SAVE_OPLINE();
-       arg = _get_zval_ptr_tmp(opline->op1.var, &free_op1 EXECUTE_DATA_CC);
-       param = ZEND_CALL_VAR(EX(call), opline->result.var);
 
        if (UNEXPECTED(ARG_MUST_BE_SENT_BY_REF(EX(call)->func, opline->op2.num))) {
                zend_param_must_be_ref(EX(call)->func, opline->op2.num);
        }
 
+       arg = _get_zval_ptr_tmp(opline->op1.var, &free_op1 EXECUTE_DATA_CC);
+       param = ZEND_CALL_VAR(EX(call), opline->result.var);
        ZVAL_COPY(param, arg);
-
        zval_ptr_dtor_nogc(free_op1);
        ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION();
 }
@@ -21020,15 +21019,14 @@ static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_SEND_USER_SPEC_VAR_HANDLER(ZEN
        zend_free_op free_op1;
 
        SAVE_OPLINE();
-       arg = _get_zval_ptr_var_deref(opline->op1.var, &free_op1 EXECUTE_DATA_CC);
-       param = ZEND_CALL_VAR(EX(call), opline->result.var);
 
        if (UNEXPECTED(ARG_MUST_BE_SENT_BY_REF(EX(call)->func, opline->op2.num))) {
                zend_param_must_be_ref(EX(call)->func, opline->op2.num);
        }
 
+       arg = _get_zval_ptr_var_deref(opline->op1.var, &free_op1 EXECUTE_DATA_CC);
+       param = ZEND_CALL_VAR(EX(call), opline->result.var);
        ZVAL_COPY(param, arg);
-
        zval_ptr_dtor_nogc(free_op1);
        ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION();
 }
@@ -37300,13 +37298,13 @@ static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_SEND_USER_SPEC_CV_HANDLER(ZEND
 
 
        SAVE_OPLINE();
-       arg = _get_zval_ptr_cv_deref_BP_VAR_R(opline->op1.var EXECUTE_DATA_CC);
-       param = ZEND_CALL_VAR(EX(call), opline->result.var);
 
        if (UNEXPECTED(ARG_MUST_BE_SENT_BY_REF(EX(call)->func, opline->op2.num))) {
                zend_param_must_be_ref(EX(call)->func, opline->op2.num);
        }
 
+       arg = _get_zval_ptr_cv_deref_BP_VAR_R(opline->op1.var EXECUTE_DATA_CC);
+       param = ZEND_CALL_VAR(EX(call), opline->result.var);
        ZVAL_COPY(param, arg);
 
        ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION();