]> granicus.if.org Git - php/commitdiff
Handle references in "slow path"
authorDmitry Stogov <dmitry@zend.com>
Mon, 21 Apr 2014 19:30:19 +0000 (23:30 +0400)
committerDmitry Stogov <dmitry@zend.com>
Mon, 21 Apr 2014 19:30:19 +0000 (23:30 +0400)
Zend/zend_vm_def.h
Zend/zend_vm_execute.h

index 8f2c37601c68d63db4ce851043bd490079f5a120..c8c98a1ba0ee6a685e67cce6cfa996294002ada4 100644 (file)
@@ -185,8 +185,8 @@ ZEND_VM_HANDLER(17, ZEND_IS_EQUAL, CONST|TMP|VAR|CV, CONST|TMP|VAR|CV)
 
        SAVE_OPLINE();
        ZVAL_BOOL(result, fast_equal_function(result,
-               GET_OP1_ZVAL_PTR_DEREF(BP_VAR_R),
-               GET_OP2_ZVAL_PTR_DEREF(BP_VAR_R) TSRMLS_CC));
+               GET_OP1_ZVAL_PTR(BP_VAR_R),
+               GET_OP2_ZVAL_PTR(BP_VAR_R) TSRMLS_CC));
        FREE_OP1();
        FREE_OP2();
        CHECK_EXCEPTION();
@@ -201,8 +201,8 @@ ZEND_VM_HANDLER(18, ZEND_IS_NOT_EQUAL, CONST|TMP|VAR|CV, CONST|TMP|VAR|CV)
 
        SAVE_OPLINE();
        ZVAL_BOOL(result, fast_not_equal_function(result,
-               GET_OP1_ZVAL_PTR_DEREF(BP_VAR_R),
-               GET_OP2_ZVAL_PTR_DEREF(BP_VAR_R) TSRMLS_CC));
+               GET_OP1_ZVAL_PTR(BP_VAR_R),
+               GET_OP2_ZVAL_PTR(BP_VAR_R) TSRMLS_CC));
        FREE_OP1();
        FREE_OP2();
        CHECK_EXCEPTION();
@@ -217,8 +217,8 @@ ZEND_VM_HANDLER(19, ZEND_IS_SMALLER, CONST|TMP|VAR|CV, CONST|TMP|VAR|CV)
 
        SAVE_OPLINE();
        ZVAL_BOOL(result, fast_is_smaller_function(result,
-               GET_OP1_ZVAL_PTR_DEREF(BP_VAR_R),
-               GET_OP2_ZVAL_PTR_DEREF(BP_VAR_R) TSRMLS_CC));
+               GET_OP1_ZVAL_PTR(BP_VAR_R),
+               GET_OP2_ZVAL_PTR(BP_VAR_R) TSRMLS_CC));
        FREE_OP1();
        FREE_OP2();
        CHECK_EXCEPTION();
@@ -233,8 +233,8 @@ ZEND_VM_HANDLER(20, ZEND_IS_SMALLER_OR_EQUAL, CONST|TMP|VAR|CV, CONST|TMP|VAR|CV
 
        SAVE_OPLINE();
        ZVAL_BOOL(result, fast_is_smaller_or_equal_function(result,
-               GET_OP1_ZVAL_PTR_DEREF(BP_VAR_R),
-               GET_OP2_ZVAL_PTR_DEREF(BP_VAR_R) TSRMLS_CC));
+               GET_OP1_ZVAL_PTR(BP_VAR_R),
+               GET_OP2_ZVAL_PTR(BP_VAR_R) TSRMLS_CC));
        FREE_OP1();
        FREE_OP2();
        CHECK_EXCEPTION();
@@ -2992,6 +2992,7 @@ ZEND_VM_HELPER(zend_send_by_var_helper, VAR|CV, ANY)
 
        varptr = GET_OP1_ZVAL_PTR(BP_VAR_R);
        top = zend_vm_stack_top_inc(TSRMLS_C);
+       ZVAL_COPY_VALUE(top, varptr);
        if (Z_ISREF_P(varptr)) {
                ZVAL_DUP(top, Z_REFVAL_P(varptr));
                FREE_OP1();
@@ -2999,7 +3000,6 @@ ZEND_VM_HELPER(zend_send_by_var_helper, VAR|CV, ANY)
                if (OP1_TYPE == IS_CV) {
                        if (Z_REFCOUNTED_P(varptr)) Z_ADDREF_P(varptr);
                }
-               ZVAL_COPY_VALUE(top, varptr);
        }
 
        CHECK_EXCEPTION();
index 0dc6eda1a7dce3755df47f3cb61700dfc26cc361..9a6082b1abc663bde2ff92dc3bb88adc052a12ee 100644 (file)
@@ -5137,7 +5137,7 @@ static int ZEND_FASTCALL  ZEND_IS_EQUAL_SPEC_CONST_VAR_HANDLER(ZEND_OPCODE_HANDL
        SAVE_OPLINE();
        ZVAL_BOOL(result, fast_equal_function(result,
                opline->op1.zv,
-               _get_zval_ptr_var_deref(opline->op2.var, execute_data, &free_op2 TSRMLS_CC) TSRMLS_CC));
+               _get_zval_ptr_var(opline->op2.var, execute_data, &free_op2 TSRMLS_CC) TSRMLS_CC));
 
        zval_ptr_dtor_nogc(free_op2.var);
        CHECK_EXCEPTION();
@@ -5153,7 +5153,7 @@ static int ZEND_FASTCALL  ZEND_IS_NOT_EQUAL_SPEC_CONST_VAR_HANDLER(ZEND_OPCODE_H
        SAVE_OPLINE();
        ZVAL_BOOL(result, fast_not_equal_function(result,
                opline->op1.zv,
-               _get_zval_ptr_var_deref(opline->op2.var, execute_data, &free_op2 TSRMLS_CC) TSRMLS_CC));
+               _get_zval_ptr_var(opline->op2.var, execute_data, &free_op2 TSRMLS_CC) TSRMLS_CC));
 
        zval_ptr_dtor_nogc(free_op2.var);
        CHECK_EXCEPTION();
@@ -5169,7 +5169,7 @@ static int ZEND_FASTCALL  ZEND_IS_SMALLER_SPEC_CONST_VAR_HANDLER(ZEND_OPCODE_HAN
        SAVE_OPLINE();
        ZVAL_BOOL(result, fast_is_smaller_function(result,
                opline->op1.zv,
-               _get_zval_ptr_var_deref(opline->op2.var, execute_data, &free_op2 TSRMLS_CC) TSRMLS_CC));
+               _get_zval_ptr_var(opline->op2.var, execute_data, &free_op2 TSRMLS_CC) TSRMLS_CC));
 
        zval_ptr_dtor_nogc(free_op2.var);
        CHECK_EXCEPTION();
@@ -5185,7 +5185,7 @@ static int ZEND_FASTCALL  ZEND_IS_SMALLER_OR_EQUAL_SPEC_CONST_VAR_HANDLER(ZEND_O
        SAVE_OPLINE();
        ZVAL_BOOL(result, fast_is_smaller_or_equal_function(result,
                opline->op1.zv,
-               _get_zval_ptr_var_deref(opline->op2.var, execute_data, &free_op2 TSRMLS_CC) TSRMLS_CC));
+               _get_zval_ptr_var(opline->op2.var, execute_data, &free_op2 TSRMLS_CC) TSRMLS_CC));
 
        zval_ptr_dtor_nogc(free_op2.var);
        CHECK_EXCEPTION();
@@ -6728,7 +6728,7 @@ static int ZEND_FASTCALL  ZEND_IS_EQUAL_SPEC_CONST_CV_HANDLER(ZEND_OPCODE_HANDLE
        SAVE_OPLINE();
        ZVAL_BOOL(result, fast_equal_function(result,
                opline->op1.zv,
-               _get_zval_ptr_cv_deref_BP_VAR_R(execute_data, opline->op2.var TSRMLS_CC) TSRMLS_CC));
+               _get_zval_ptr_cv_BP_VAR_R(execute_data, opline->op2.var TSRMLS_CC) TSRMLS_CC));
 
 
        CHECK_EXCEPTION();
@@ -6744,7 +6744,7 @@ static int ZEND_FASTCALL  ZEND_IS_NOT_EQUAL_SPEC_CONST_CV_HANDLER(ZEND_OPCODE_HA
        SAVE_OPLINE();
        ZVAL_BOOL(result, fast_not_equal_function(result,
                opline->op1.zv,
-               _get_zval_ptr_cv_deref_BP_VAR_R(execute_data, opline->op2.var TSRMLS_CC) TSRMLS_CC));
+               _get_zval_ptr_cv_BP_VAR_R(execute_data, opline->op2.var TSRMLS_CC) TSRMLS_CC));
 
 
        CHECK_EXCEPTION();
@@ -6760,7 +6760,7 @@ static int ZEND_FASTCALL  ZEND_IS_SMALLER_SPEC_CONST_CV_HANDLER(ZEND_OPCODE_HAND
        SAVE_OPLINE();
        ZVAL_BOOL(result, fast_is_smaller_function(result,
                opline->op1.zv,
-               _get_zval_ptr_cv_deref_BP_VAR_R(execute_data, opline->op2.var TSRMLS_CC) TSRMLS_CC));
+               _get_zval_ptr_cv_BP_VAR_R(execute_data, opline->op2.var TSRMLS_CC) TSRMLS_CC));
 
 
        CHECK_EXCEPTION();
@@ -6776,7 +6776,7 @@ static int ZEND_FASTCALL  ZEND_IS_SMALLER_OR_EQUAL_SPEC_CONST_CV_HANDLER(ZEND_OP
        SAVE_OPLINE();
        ZVAL_BOOL(result, fast_is_smaller_or_equal_function(result,
                opline->op1.zv,
-               _get_zval_ptr_cv_deref_BP_VAR_R(execute_data, opline->op2.var TSRMLS_CC) TSRMLS_CC));
+               _get_zval_ptr_cv_BP_VAR_R(execute_data, opline->op2.var TSRMLS_CC) TSRMLS_CC));
 
 
        CHECK_EXCEPTION();
@@ -9997,7 +9997,7 @@ static int ZEND_FASTCALL  ZEND_IS_EQUAL_SPEC_TMP_VAR_HANDLER(ZEND_OPCODE_HANDLER
        SAVE_OPLINE();
        ZVAL_BOOL(result, fast_equal_function(result,
                _get_zval_ptr_tmp(opline->op1.var, execute_data, &free_op1 TSRMLS_CC),
-               _get_zval_ptr_var_deref(opline->op2.var, execute_data, &free_op2 TSRMLS_CC) TSRMLS_CC));
+               _get_zval_ptr_var(opline->op2.var, execute_data, &free_op2 TSRMLS_CC) TSRMLS_CC));
        zval_dtor(free_op1.var);
        zval_ptr_dtor_nogc(free_op2.var);
        CHECK_EXCEPTION();
@@ -10013,7 +10013,7 @@ static int ZEND_FASTCALL  ZEND_IS_NOT_EQUAL_SPEC_TMP_VAR_HANDLER(ZEND_OPCODE_HAN
        SAVE_OPLINE();
        ZVAL_BOOL(result, fast_not_equal_function(result,
                _get_zval_ptr_tmp(opline->op1.var, execute_data, &free_op1 TSRMLS_CC),
-               _get_zval_ptr_var_deref(opline->op2.var, execute_data, &free_op2 TSRMLS_CC) TSRMLS_CC));
+               _get_zval_ptr_var(opline->op2.var, execute_data, &free_op2 TSRMLS_CC) TSRMLS_CC));
        zval_dtor(free_op1.var);
        zval_ptr_dtor_nogc(free_op2.var);
        CHECK_EXCEPTION();
@@ -10029,7 +10029,7 @@ static int ZEND_FASTCALL  ZEND_IS_SMALLER_SPEC_TMP_VAR_HANDLER(ZEND_OPCODE_HANDL
        SAVE_OPLINE();
        ZVAL_BOOL(result, fast_is_smaller_function(result,
                _get_zval_ptr_tmp(opline->op1.var, execute_data, &free_op1 TSRMLS_CC),
-               _get_zval_ptr_var_deref(opline->op2.var, execute_data, &free_op2 TSRMLS_CC) TSRMLS_CC));
+               _get_zval_ptr_var(opline->op2.var, execute_data, &free_op2 TSRMLS_CC) TSRMLS_CC));
        zval_dtor(free_op1.var);
        zval_ptr_dtor_nogc(free_op2.var);
        CHECK_EXCEPTION();
@@ -10045,7 +10045,7 @@ static int ZEND_FASTCALL  ZEND_IS_SMALLER_OR_EQUAL_SPEC_TMP_VAR_HANDLER(ZEND_OPC
        SAVE_OPLINE();
        ZVAL_BOOL(result, fast_is_smaller_or_equal_function(result,
                _get_zval_ptr_tmp(opline->op1.var, execute_data, &free_op1 TSRMLS_CC),
-               _get_zval_ptr_var_deref(opline->op2.var, execute_data, &free_op2 TSRMLS_CC) TSRMLS_CC));
+               _get_zval_ptr_var(opline->op2.var, execute_data, &free_op2 TSRMLS_CC) TSRMLS_CC));
        zval_dtor(free_op1.var);
        zval_ptr_dtor_nogc(free_op2.var);
        CHECK_EXCEPTION();
@@ -11456,7 +11456,7 @@ static int ZEND_FASTCALL  ZEND_IS_EQUAL_SPEC_TMP_CV_HANDLER(ZEND_OPCODE_HANDLER_
        SAVE_OPLINE();
        ZVAL_BOOL(result, fast_equal_function(result,
                _get_zval_ptr_tmp(opline->op1.var, execute_data, &free_op1 TSRMLS_CC),
-               _get_zval_ptr_cv_deref_BP_VAR_R(execute_data, opline->op2.var TSRMLS_CC) TSRMLS_CC));
+               _get_zval_ptr_cv_BP_VAR_R(execute_data, opline->op2.var TSRMLS_CC) TSRMLS_CC));
        zval_dtor(free_op1.var);
 
        CHECK_EXCEPTION();
@@ -11472,7 +11472,7 @@ static int ZEND_FASTCALL  ZEND_IS_NOT_EQUAL_SPEC_TMP_CV_HANDLER(ZEND_OPCODE_HAND
        SAVE_OPLINE();
        ZVAL_BOOL(result, fast_not_equal_function(result,
                _get_zval_ptr_tmp(opline->op1.var, execute_data, &free_op1 TSRMLS_CC),
-               _get_zval_ptr_cv_deref_BP_VAR_R(execute_data, opline->op2.var TSRMLS_CC) TSRMLS_CC));
+               _get_zval_ptr_cv_BP_VAR_R(execute_data, opline->op2.var TSRMLS_CC) TSRMLS_CC));
        zval_dtor(free_op1.var);
 
        CHECK_EXCEPTION();
@@ -11488,7 +11488,7 @@ static int ZEND_FASTCALL  ZEND_IS_SMALLER_SPEC_TMP_CV_HANDLER(ZEND_OPCODE_HANDLE
        SAVE_OPLINE();
        ZVAL_BOOL(result, fast_is_smaller_function(result,
                _get_zval_ptr_tmp(opline->op1.var, execute_data, &free_op1 TSRMLS_CC),
-               _get_zval_ptr_cv_deref_BP_VAR_R(execute_data, opline->op2.var TSRMLS_CC) TSRMLS_CC));
+               _get_zval_ptr_cv_BP_VAR_R(execute_data, opline->op2.var TSRMLS_CC) TSRMLS_CC));
        zval_dtor(free_op1.var);
 
        CHECK_EXCEPTION();
@@ -11504,7 +11504,7 @@ static int ZEND_FASTCALL  ZEND_IS_SMALLER_OR_EQUAL_SPEC_TMP_CV_HANDLER(ZEND_OPCO
        SAVE_OPLINE();
        ZVAL_BOOL(result, fast_is_smaller_or_equal_function(result,
                _get_zval_ptr_tmp(opline->op1.var, execute_data, &free_op1 TSRMLS_CC),
-               _get_zval_ptr_cv_deref_BP_VAR_R(execute_data, opline->op2.var TSRMLS_CC) TSRMLS_CC));
+               _get_zval_ptr_cv_BP_VAR_R(execute_data, opline->op2.var TSRMLS_CC) TSRMLS_CC));
        zval_dtor(free_op1.var);
 
        CHECK_EXCEPTION();
@@ -13529,7 +13529,7 @@ static int ZEND_FASTCALL  ZEND_IS_EQUAL_SPEC_VAR_CONST_HANDLER(ZEND_OPCODE_HANDL
 
        SAVE_OPLINE();
        ZVAL_BOOL(result, fast_equal_function(result,
-               _get_zval_ptr_var_deref(opline->op1.var, execute_data, &free_op1 TSRMLS_CC),
+               _get_zval_ptr_var(opline->op1.var, execute_data, &free_op1 TSRMLS_CC),
                opline->op2.zv TSRMLS_CC));
        zval_ptr_dtor_nogc(free_op1.var);
 
@@ -13545,7 +13545,7 @@ static int ZEND_FASTCALL  ZEND_IS_NOT_EQUAL_SPEC_VAR_CONST_HANDLER(ZEND_OPCODE_H
 
        SAVE_OPLINE();
        ZVAL_BOOL(result, fast_not_equal_function(result,
-               _get_zval_ptr_var_deref(opline->op1.var, execute_data, &free_op1 TSRMLS_CC),
+               _get_zval_ptr_var(opline->op1.var, execute_data, &free_op1 TSRMLS_CC),
                opline->op2.zv TSRMLS_CC));
        zval_ptr_dtor_nogc(free_op1.var);
 
@@ -13561,7 +13561,7 @@ static int ZEND_FASTCALL  ZEND_IS_SMALLER_SPEC_VAR_CONST_HANDLER(ZEND_OPCODE_HAN
 
        SAVE_OPLINE();
        ZVAL_BOOL(result, fast_is_smaller_function(result,
-               _get_zval_ptr_var_deref(opline->op1.var, execute_data, &free_op1 TSRMLS_CC),
+               _get_zval_ptr_var(opline->op1.var, execute_data, &free_op1 TSRMLS_CC),
                opline->op2.zv TSRMLS_CC));
        zval_ptr_dtor_nogc(free_op1.var);
 
@@ -13577,7 +13577,7 @@ static int ZEND_FASTCALL  ZEND_IS_SMALLER_OR_EQUAL_SPEC_VAR_CONST_HANDLER(ZEND_O
 
        SAVE_OPLINE();
        ZVAL_BOOL(result, fast_is_smaller_or_equal_function(result,
-               _get_zval_ptr_var_deref(opline->op1.var, execute_data, &free_op1 TSRMLS_CC),
+               _get_zval_ptr_var(opline->op1.var, execute_data, &free_op1 TSRMLS_CC),
                opline->op2.zv TSRMLS_CC));
        zval_ptr_dtor_nogc(free_op1.var);
 
@@ -15820,7 +15820,7 @@ static int ZEND_FASTCALL  ZEND_IS_EQUAL_SPEC_VAR_TMP_HANDLER(ZEND_OPCODE_HANDLER
 
        SAVE_OPLINE();
        ZVAL_BOOL(result, fast_equal_function(result,
-               _get_zval_ptr_var_deref(opline->op1.var, execute_data, &free_op1 TSRMLS_CC),
+               _get_zval_ptr_var(opline->op1.var, execute_data, &free_op1 TSRMLS_CC),
                _get_zval_ptr_tmp(opline->op2.var, execute_data, &free_op2 TSRMLS_CC) TSRMLS_CC));
        zval_ptr_dtor_nogc(free_op1.var);
        zval_dtor(free_op2.var);
@@ -15836,7 +15836,7 @@ static int ZEND_FASTCALL  ZEND_IS_NOT_EQUAL_SPEC_VAR_TMP_HANDLER(ZEND_OPCODE_HAN
 
        SAVE_OPLINE();
        ZVAL_BOOL(result, fast_not_equal_function(result,
-               _get_zval_ptr_var_deref(opline->op1.var, execute_data, &free_op1 TSRMLS_CC),
+               _get_zval_ptr_var(opline->op1.var, execute_data, &free_op1 TSRMLS_CC),
                _get_zval_ptr_tmp(opline->op2.var, execute_data, &free_op2 TSRMLS_CC) TSRMLS_CC));
        zval_ptr_dtor_nogc(free_op1.var);
        zval_dtor(free_op2.var);
@@ -15852,7 +15852,7 @@ static int ZEND_FASTCALL  ZEND_IS_SMALLER_SPEC_VAR_TMP_HANDLER(ZEND_OPCODE_HANDL
 
        SAVE_OPLINE();
        ZVAL_BOOL(result, fast_is_smaller_function(result,
-               _get_zval_ptr_var_deref(opline->op1.var, execute_data, &free_op1 TSRMLS_CC),
+               _get_zval_ptr_var(opline->op1.var, execute_data, &free_op1 TSRMLS_CC),
                _get_zval_ptr_tmp(opline->op2.var, execute_data, &free_op2 TSRMLS_CC) TSRMLS_CC));
        zval_ptr_dtor_nogc(free_op1.var);
        zval_dtor(free_op2.var);
@@ -15868,7 +15868,7 @@ static int ZEND_FASTCALL  ZEND_IS_SMALLER_OR_EQUAL_SPEC_VAR_TMP_HANDLER(ZEND_OPC
 
        SAVE_OPLINE();
        ZVAL_BOOL(result, fast_is_smaller_or_equal_function(result,
-               _get_zval_ptr_var_deref(opline->op1.var, execute_data, &free_op1 TSRMLS_CC),
+               _get_zval_ptr_var(opline->op1.var, execute_data, &free_op1 TSRMLS_CC),
                _get_zval_ptr_tmp(opline->op2.var, execute_data, &free_op2 TSRMLS_CC) TSRMLS_CC));
        zval_ptr_dtor_nogc(free_op1.var);
        zval_dtor(free_op2.var);
@@ -17727,8 +17727,8 @@ static int ZEND_FASTCALL  ZEND_IS_EQUAL_SPEC_VAR_VAR_HANDLER(ZEND_OPCODE_HANDLER
 
        SAVE_OPLINE();
        ZVAL_BOOL(result, fast_equal_function(result,
-               _get_zval_ptr_var_deref(opline->op1.var, execute_data, &free_op1 TSRMLS_CC),
-               _get_zval_ptr_var_deref(opline->op2.var, execute_data, &free_op2 TSRMLS_CC) TSRMLS_CC));
+               _get_zval_ptr_var(opline->op1.var, execute_data, &free_op1 TSRMLS_CC),
+               _get_zval_ptr_var(opline->op2.var, execute_data, &free_op2 TSRMLS_CC) TSRMLS_CC));
        zval_ptr_dtor_nogc(free_op1.var);
        zval_ptr_dtor_nogc(free_op2.var);
        CHECK_EXCEPTION();
@@ -17743,8 +17743,8 @@ static int ZEND_FASTCALL  ZEND_IS_NOT_EQUAL_SPEC_VAR_VAR_HANDLER(ZEND_OPCODE_HAN
 
        SAVE_OPLINE();
        ZVAL_BOOL(result, fast_not_equal_function(result,
-               _get_zval_ptr_var_deref(opline->op1.var, execute_data, &free_op1 TSRMLS_CC),
-               _get_zval_ptr_var_deref(opline->op2.var, execute_data, &free_op2 TSRMLS_CC) TSRMLS_CC));
+               _get_zval_ptr_var(opline->op1.var, execute_data, &free_op1 TSRMLS_CC),
+               _get_zval_ptr_var(opline->op2.var, execute_data, &free_op2 TSRMLS_CC) TSRMLS_CC));
        zval_ptr_dtor_nogc(free_op1.var);
        zval_ptr_dtor_nogc(free_op2.var);
        CHECK_EXCEPTION();
@@ -17759,8 +17759,8 @@ static int ZEND_FASTCALL  ZEND_IS_SMALLER_SPEC_VAR_VAR_HANDLER(ZEND_OPCODE_HANDL
 
        SAVE_OPLINE();
        ZVAL_BOOL(result, fast_is_smaller_function(result,
-               _get_zval_ptr_var_deref(opline->op1.var, execute_data, &free_op1 TSRMLS_CC),
-               _get_zval_ptr_var_deref(opline->op2.var, execute_data, &free_op2 TSRMLS_CC) TSRMLS_CC));
+               _get_zval_ptr_var(opline->op1.var, execute_data, &free_op1 TSRMLS_CC),
+               _get_zval_ptr_var(opline->op2.var, execute_data, &free_op2 TSRMLS_CC) TSRMLS_CC));
        zval_ptr_dtor_nogc(free_op1.var);
        zval_ptr_dtor_nogc(free_op2.var);
        CHECK_EXCEPTION();
@@ -17775,8 +17775,8 @@ static int ZEND_FASTCALL  ZEND_IS_SMALLER_OR_EQUAL_SPEC_VAR_VAR_HANDLER(ZEND_OPC
 
        SAVE_OPLINE();
        ZVAL_BOOL(result, fast_is_smaller_or_equal_function(result,
-               _get_zval_ptr_var_deref(opline->op1.var, execute_data, &free_op1 TSRMLS_CC),
-               _get_zval_ptr_var_deref(opline->op2.var, execute_data, &free_op2 TSRMLS_CC) TSRMLS_CC));
+               _get_zval_ptr_var(opline->op1.var, execute_data, &free_op1 TSRMLS_CC),
+               _get_zval_ptr_var(opline->op2.var, execute_data, &free_op2 TSRMLS_CC) TSRMLS_CC));
        zval_ptr_dtor_nogc(free_op1.var);
        zval_ptr_dtor_nogc(free_op2.var);
        CHECK_EXCEPTION();
@@ -21140,8 +21140,8 @@ static int ZEND_FASTCALL  ZEND_IS_EQUAL_SPEC_VAR_CV_HANDLER(ZEND_OPCODE_HANDLER_
 
        SAVE_OPLINE();
        ZVAL_BOOL(result, fast_equal_function(result,
-               _get_zval_ptr_var_deref(opline->op1.var, execute_data, &free_op1 TSRMLS_CC),
-               _get_zval_ptr_cv_deref_BP_VAR_R(execute_data, opline->op2.var TSRMLS_CC) TSRMLS_CC));
+               _get_zval_ptr_var(opline->op1.var, execute_data, &free_op1 TSRMLS_CC),
+               _get_zval_ptr_cv_BP_VAR_R(execute_data, opline->op2.var TSRMLS_CC) TSRMLS_CC));
        zval_ptr_dtor_nogc(free_op1.var);
 
        CHECK_EXCEPTION();
@@ -21156,8 +21156,8 @@ static int ZEND_FASTCALL  ZEND_IS_NOT_EQUAL_SPEC_VAR_CV_HANDLER(ZEND_OPCODE_HAND
 
        SAVE_OPLINE();
        ZVAL_BOOL(result, fast_not_equal_function(result,
-               _get_zval_ptr_var_deref(opline->op1.var, execute_data, &free_op1 TSRMLS_CC),
-               _get_zval_ptr_cv_deref_BP_VAR_R(execute_data, opline->op2.var TSRMLS_CC) TSRMLS_CC));
+               _get_zval_ptr_var(opline->op1.var, execute_data, &free_op1 TSRMLS_CC),
+               _get_zval_ptr_cv_BP_VAR_R(execute_data, opline->op2.var TSRMLS_CC) TSRMLS_CC));
        zval_ptr_dtor_nogc(free_op1.var);
 
        CHECK_EXCEPTION();
@@ -21172,8 +21172,8 @@ static int ZEND_FASTCALL  ZEND_IS_SMALLER_SPEC_VAR_CV_HANDLER(ZEND_OPCODE_HANDLE
 
        SAVE_OPLINE();
        ZVAL_BOOL(result, fast_is_smaller_function(result,
-               _get_zval_ptr_var_deref(opline->op1.var, execute_data, &free_op1 TSRMLS_CC),
-               _get_zval_ptr_cv_deref_BP_VAR_R(execute_data, opline->op2.var TSRMLS_CC) TSRMLS_CC));
+               _get_zval_ptr_var(opline->op1.var, execute_data, &free_op1 TSRMLS_CC),
+               _get_zval_ptr_cv_BP_VAR_R(execute_data, opline->op2.var TSRMLS_CC) TSRMLS_CC));
        zval_ptr_dtor_nogc(free_op1.var);
 
        CHECK_EXCEPTION();
@@ -21188,8 +21188,8 @@ static int ZEND_FASTCALL  ZEND_IS_SMALLER_OR_EQUAL_SPEC_VAR_CV_HANDLER(ZEND_OPCO
 
        SAVE_OPLINE();
        ZVAL_BOOL(result, fast_is_smaller_or_equal_function(result,
-               _get_zval_ptr_var_deref(opline->op1.var, execute_data, &free_op1 TSRMLS_CC),
-               _get_zval_ptr_cv_deref_BP_VAR_R(execute_data, opline->op2.var TSRMLS_CC) TSRMLS_CC));
+               _get_zval_ptr_var(opline->op1.var, execute_data, &free_op1 TSRMLS_CC),
+               _get_zval_ptr_cv_BP_VAR_R(execute_data, opline->op2.var TSRMLS_CC) TSRMLS_CC));
        zval_ptr_dtor_nogc(free_op1.var);
 
        CHECK_EXCEPTION();
@@ -29916,7 +29916,7 @@ static int ZEND_FASTCALL  ZEND_IS_EQUAL_SPEC_CV_CONST_HANDLER(ZEND_OPCODE_HANDLE
 
        SAVE_OPLINE();
        ZVAL_BOOL(result, fast_equal_function(result,
-               _get_zval_ptr_cv_deref_BP_VAR_R(execute_data, opline->op1.var TSRMLS_CC),
+               _get_zval_ptr_cv_BP_VAR_R(execute_data, opline->op1.var TSRMLS_CC),
                opline->op2.zv TSRMLS_CC));
 
 
@@ -29932,7 +29932,7 @@ static int ZEND_FASTCALL  ZEND_IS_NOT_EQUAL_SPEC_CV_CONST_HANDLER(ZEND_OPCODE_HA
 
        SAVE_OPLINE();
        ZVAL_BOOL(result, fast_not_equal_function(result,
-               _get_zval_ptr_cv_deref_BP_VAR_R(execute_data, opline->op1.var TSRMLS_CC),
+               _get_zval_ptr_cv_BP_VAR_R(execute_data, opline->op1.var TSRMLS_CC),
                opline->op2.zv TSRMLS_CC));
 
 
@@ -29948,7 +29948,7 @@ static int ZEND_FASTCALL  ZEND_IS_SMALLER_SPEC_CV_CONST_HANDLER(ZEND_OPCODE_HAND
 
        SAVE_OPLINE();
        ZVAL_BOOL(result, fast_is_smaller_function(result,
-               _get_zval_ptr_cv_deref_BP_VAR_R(execute_data, opline->op1.var TSRMLS_CC),
+               _get_zval_ptr_cv_BP_VAR_R(execute_data, opline->op1.var TSRMLS_CC),
                opline->op2.zv TSRMLS_CC));
 
 
@@ -29964,7 +29964,7 @@ static int ZEND_FASTCALL  ZEND_IS_SMALLER_OR_EQUAL_SPEC_CV_CONST_HANDLER(ZEND_OP
 
        SAVE_OPLINE();
        ZVAL_BOOL(result, fast_is_smaller_or_equal_function(result,
-               _get_zval_ptr_cv_deref_BP_VAR_R(execute_data, opline->op1.var TSRMLS_CC),
+               _get_zval_ptr_cv_BP_VAR_R(execute_data, opline->op1.var TSRMLS_CC),
                opline->op2.zv TSRMLS_CC));
 
 
@@ -31994,7 +31994,7 @@ static int ZEND_FASTCALL  ZEND_IS_EQUAL_SPEC_CV_TMP_HANDLER(ZEND_OPCODE_HANDLER_
 
        SAVE_OPLINE();
        ZVAL_BOOL(result, fast_equal_function(result,
-               _get_zval_ptr_cv_deref_BP_VAR_R(execute_data, opline->op1.var TSRMLS_CC),
+               _get_zval_ptr_cv_BP_VAR_R(execute_data, opline->op1.var TSRMLS_CC),
                _get_zval_ptr_tmp(opline->op2.var, execute_data, &free_op2 TSRMLS_CC) TSRMLS_CC));
 
        zval_dtor(free_op2.var);
@@ -32010,7 +32010,7 @@ static int ZEND_FASTCALL  ZEND_IS_NOT_EQUAL_SPEC_CV_TMP_HANDLER(ZEND_OPCODE_HAND
 
        SAVE_OPLINE();
        ZVAL_BOOL(result, fast_not_equal_function(result,
-               _get_zval_ptr_cv_deref_BP_VAR_R(execute_data, opline->op1.var TSRMLS_CC),
+               _get_zval_ptr_cv_BP_VAR_R(execute_data, opline->op1.var TSRMLS_CC),
                _get_zval_ptr_tmp(opline->op2.var, execute_data, &free_op2 TSRMLS_CC) TSRMLS_CC));
 
        zval_dtor(free_op2.var);
@@ -32026,7 +32026,7 @@ static int ZEND_FASTCALL  ZEND_IS_SMALLER_SPEC_CV_TMP_HANDLER(ZEND_OPCODE_HANDLE
 
        SAVE_OPLINE();
        ZVAL_BOOL(result, fast_is_smaller_function(result,
-               _get_zval_ptr_cv_deref_BP_VAR_R(execute_data, opline->op1.var TSRMLS_CC),
+               _get_zval_ptr_cv_BP_VAR_R(execute_data, opline->op1.var TSRMLS_CC),
                _get_zval_ptr_tmp(opline->op2.var, execute_data, &free_op2 TSRMLS_CC) TSRMLS_CC));
 
        zval_dtor(free_op2.var);
@@ -32042,7 +32042,7 @@ static int ZEND_FASTCALL  ZEND_IS_SMALLER_OR_EQUAL_SPEC_CV_TMP_HANDLER(ZEND_OPCO
 
        SAVE_OPLINE();
        ZVAL_BOOL(result, fast_is_smaller_or_equal_function(result,
-               _get_zval_ptr_cv_deref_BP_VAR_R(execute_data, opline->op1.var TSRMLS_CC),
+               _get_zval_ptr_cv_BP_VAR_R(execute_data, opline->op1.var TSRMLS_CC),
                _get_zval_ptr_tmp(opline->op2.var, execute_data, &free_op2 TSRMLS_CC) TSRMLS_CC));
 
        zval_dtor(free_op2.var);
@@ -33784,8 +33784,8 @@ static int ZEND_FASTCALL  ZEND_IS_EQUAL_SPEC_CV_VAR_HANDLER(ZEND_OPCODE_HANDLER_
 
        SAVE_OPLINE();
        ZVAL_BOOL(result, fast_equal_function(result,
-               _get_zval_ptr_cv_deref_BP_VAR_R(execute_data, opline->op1.var TSRMLS_CC),
-               _get_zval_ptr_var_deref(opline->op2.var, execute_data, &free_op2 TSRMLS_CC) TSRMLS_CC));
+               _get_zval_ptr_cv_BP_VAR_R(execute_data, opline->op1.var TSRMLS_CC),
+               _get_zval_ptr_var(opline->op2.var, execute_data, &free_op2 TSRMLS_CC) TSRMLS_CC));
 
        zval_ptr_dtor_nogc(free_op2.var);
        CHECK_EXCEPTION();
@@ -33800,8 +33800,8 @@ static int ZEND_FASTCALL  ZEND_IS_NOT_EQUAL_SPEC_CV_VAR_HANDLER(ZEND_OPCODE_HAND
 
        SAVE_OPLINE();
        ZVAL_BOOL(result, fast_not_equal_function(result,
-               _get_zval_ptr_cv_deref_BP_VAR_R(execute_data, opline->op1.var TSRMLS_CC),
-               _get_zval_ptr_var_deref(opline->op2.var, execute_data, &free_op2 TSRMLS_CC) TSRMLS_CC));
+               _get_zval_ptr_cv_BP_VAR_R(execute_data, opline->op1.var TSRMLS_CC),
+               _get_zval_ptr_var(opline->op2.var, execute_data, &free_op2 TSRMLS_CC) TSRMLS_CC));
 
        zval_ptr_dtor_nogc(free_op2.var);
        CHECK_EXCEPTION();
@@ -33816,8 +33816,8 @@ static int ZEND_FASTCALL  ZEND_IS_SMALLER_SPEC_CV_VAR_HANDLER(ZEND_OPCODE_HANDLE
 
        SAVE_OPLINE();
        ZVAL_BOOL(result, fast_is_smaller_function(result,
-               _get_zval_ptr_cv_deref_BP_VAR_R(execute_data, opline->op1.var TSRMLS_CC),
-               _get_zval_ptr_var_deref(opline->op2.var, execute_data, &free_op2 TSRMLS_CC) TSRMLS_CC));
+               _get_zval_ptr_cv_BP_VAR_R(execute_data, opline->op1.var TSRMLS_CC),
+               _get_zval_ptr_var(opline->op2.var, execute_data, &free_op2 TSRMLS_CC) TSRMLS_CC));
 
        zval_ptr_dtor_nogc(free_op2.var);
        CHECK_EXCEPTION();
@@ -33832,8 +33832,8 @@ static int ZEND_FASTCALL  ZEND_IS_SMALLER_OR_EQUAL_SPEC_CV_VAR_HANDLER(ZEND_OPCO
 
        SAVE_OPLINE();
        ZVAL_BOOL(result, fast_is_smaller_or_equal_function(result,
-               _get_zval_ptr_cv_deref_BP_VAR_R(execute_data, opline->op1.var TSRMLS_CC),
-               _get_zval_ptr_var_deref(opline->op2.var, execute_data, &free_op2 TSRMLS_CC) TSRMLS_CC));
+               _get_zval_ptr_cv_BP_VAR_R(execute_data, opline->op1.var TSRMLS_CC),
+               _get_zval_ptr_var(opline->op2.var, execute_data, &free_op2 TSRMLS_CC) TSRMLS_CC));
 
        zval_ptr_dtor_nogc(free_op2.var);
        CHECK_EXCEPTION();
@@ -36945,8 +36945,8 @@ static int ZEND_FASTCALL  ZEND_IS_EQUAL_SPEC_CV_CV_HANDLER(ZEND_OPCODE_HANDLER_A
 
        SAVE_OPLINE();
        ZVAL_BOOL(result, fast_equal_function(result,
-               _get_zval_ptr_cv_deref_BP_VAR_R(execute_data, opline->op1.var TSRMLS_CC),
-               _get_zval_ptr_cv_deref_BP_VAR_R(execute_data, opline->op2.var TSRMLS_CC) TSRMLS_CC));
+               _get_zval_ptr_cv_BP_VAR_R(execute_data, opline->op1.var TSRMLS_CC),
+               _get_zval_ptr_cv_BP_VAR_R(execute_data, opline->op2.var TSRMLS_CC) TSRMLS_CC));
 
 
        CHECK_EXCEPTION();
@@ -36961,8 +36961,8 @@ static int ZEND_FASTCALL  ZEND_IS_NOT_EQUAL_SPEC_CV_CV_HANDLER(ZEND_OPCODE_HANDL
 
        SAVE_OPLINE();
        ZVAL_BOOL(result, fast_not_equal_function(result,
-               _get_zval_ptr_cv_deref_BP_VAR_R(execute_data, opline->op1.var TSRMLS_CC),
-               _get_zval_ptr_cv_deref_BP_VAR_R(execute_data, opline->op2.var TSRMLS_CC) TSRMLS_CC));
+               _get_zval_ptr_cv_BP_VAR_R(execute_data, opline->op1.var TSRMLS_CC),
+               _get_zval_ptr_cv_BP_VAR_R(execute_data, opline->op2.var TSRMLS_CC) TSRMLS_CC));
 
 
        CHECK_EXCEPTION();
@@ -36977,8 +36977,8 @@ static int ZEND_FASTCALL  ZEND_IS_SMALLER_SPEC_CV_CV_HANDLER(ZEND_OPCODE_HANDLER
 
        SAVE_OPLINE();
        ZVAL_BOOL(result, fast_is_smaller_function(result,
-               _get_zval_ptr_cv_deref_BP_VAR_R(execute_data, opline->op1.var TSRMLS_CC),
-               _get_zval_ptr_cv_deref_BP_VAR_R(execute_data, opline->op2.var TSRMLS_CC) TSRMLS_CC));
+               _get_zval_ptr_cv_BP_VAR_R(execute_data, opline->op1.var TSRMLS_CC),
+               _get_zval_ptr_cv_BP_VAR_R(execute_data, opline->op2.var TSRMLS_CC) TSRMLS_CC));
 
 
        CHECK_EXCEPTION();
@@ -36993,8 +36993,8 @@ static int ZEND_FASTCALL  ZEND_IS_SMALLER_OR_EQUAL_SPEC_CV_CV_HANDLER(ZEND_OPCOD
 
        SAVE_OPLINE();
        ZVAL_BOOL(result, fast_is_smaller_or_equal_function(result,
-               _get_zval_ptr_cv_deref_BP_VAR_R(execute_data, opline->op1.var TSRMLS_CC),
-               _get_zval_ptr_cv_deref_BP_VAR_R(execute_data, opline->op2.var TSRMLS_CC) TSRMLS_CC));
+               _get_zval_ptr_cv_BP_VAR_R(execute_data, opline->op1.var TSRMLS_CC),
+               _get_zval_ptr_cv_BP_VAR_R(execute_data, opline->op2.var TSRMLS_CC) TSRMLS_CC));
 
 
        CHECK_EXCEPTION();