From: Dmitry Stogov Date: Tue, 22 Jun 2010 14:15:08 +0000 (+0000) Subject: Removed redundant code X-Git-Tag: php-5.4.0alpha1~191^2~1254 X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=09943e56cde0a11944e899c26a7d12d649f23b90;p=php Removed redundant code --- diff --git a/Zend/zend_execute.c b/Zend/zend_execute.c index a3d100df86..20835fc803 100644 --- a/Zend/zend_execute.c +++ b/Zend/zend_execute.c @@ -872,12 +872,8 @@ static inline zval* zend_assign_tmp_to_variable(zval **variable_ptr_ptr, zval *v } } else { if (EXPECTED(variable_ptr != value)) { - zend_uint refcount = Z_REFCOUNT_P(variable_ptr); - ZVAL_COPY_VALUE(&garbage, variable_ptr); ZVAL_COPY_VALUE(variable_ptr, value); - Z_SET_REFCOUNT_P(variable_ptr, refcount); - Z_SET_ISREF_P(variable_ptr); zendi_zval_dtor(garbage); } return variable_ptr; @@ -934,12 +930,8 @@ static inline zval* zend_assign_to_variable(zval **variable_ptr_ptr, zval *value } } else { if (EXPECTED(variable_ptr != value)) { - zend_uint refcount = Z_REFCOUNT_P(variable_ptr); - ZVAL_COPY_VALUE(&garbage, variable_ptr); ZVAL_COPY_VALUE(variable_ptr, value); - Z_SET_REFCOUNT_P(variable_ptr, refcount); - Z_SET_ISREF_P(variable_ptr); zendi_zval_copy_ctor(*variable_ptr); zendi_zval_dtor(garbage); } diff --git a/Zend/zend_vm_def.h b/Zend/zend_vm_def.h index a5c2fa3ac9..e453216940 100644 --- a/Zend/zend_vm_def.h +++ b/Zend/zend_vm_def.h @@ -2956,7 +2956,7 @@ ZEND_VM_HANDLER(107, ZEND_CATCH, CONST, CV) } } -ZEND_VM_HANDLER(65, ZEND_SEND_VAL, CONST|TMP|VAR|CV, ANY) +ZEND_VM_HANDLER(65, ZEND_SEND_VAL, CONST|TMP, ANY) { USE_OPLINE diff --git a/Zend/zend_vm_execute.h b/Zend/zend_vm_execute.h index d06091bc54..898ab3a2c0 100644 --- a/Zend/zend_vm_execute.h +++ b/Zend/zend_vm_execute.h @@ -10416,34 +10416,6 @@ static int ZEND_FASTCALL ZEND_THROW_SPEC_VAR_HANDLER(ZEND_OPCODE_HANDLER_ARGS) HANDLE_EXCEPTION(); } -static int ZEND_FASTCALL ZEND_SEND_VAL_SPEC_VAR_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - - SAVE_OPLINE(); - if (opline->extended_value==ZEND_DO_FCALL_BY_NAME - && ARG_MUST_BE_SENT_BY_REF(EX(fbc), opline->op2.opline_num)) { - zend_error_noreturn(E_ERROR, "Cannot pass parameter %d by reference", opline->op2.opline_num); - } - { - zval *valptr; - zval *value; - zend_free_op free_op1; - - value = _get_zval_ptr_var(opline->op1.var, EX_Ts(), &free_op1 TSRMLS_CC); - - ALLOC_ZVAL(valptr); - INIT_PZVAL_COPY(valptr, value); - if (!0) { - zval_copy_ctor(valptr); - } - zend_vm_stack_push(valptr TSRMLS_CC); - if (free_op1.var) {zval_ptr_dtor(&free_op1.var);}; - } - CHECK_EXCEPTION(); - ZEND_VM_NEXT_OPCODE(); -} - static int ZEND_FASTCALL zend_send_by_var_helper_SPEC_VAR(ZEND_OPCODE_HANDLER_ARGS) { USE_OPLINE @@ -26400,34 +26372,6 @@ static int ZEND_FASTCALL ZEND_THROW_SPEC_CV_HANDLER(ZEND_OPCODE_HANDLER_ARGS) HANDLE_EXCEPTION(); } -static int ZEND_FASTCALL ZEND_SEND_VAL_SPEC_CV_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - - SAVE_OPLINE(); - if (opline->extended_value==ZEND_DO_FCALL_BY_NAME - && ARG_MUST_BE_SENT_BY_REF(EX(fbc), opline->op2.opline_num)) { - zend_error_noreturn(E_ERROR, "Cannot pass parameter %d by reference", opline->op2.opline_num); - } - { - zval *valptr; - zval *value; - - - value = _get_zval_ptr_cv_BP_VAR_R(EX_CVs(), opline->op1.var TSRMLS_CC); - - ALLOC_ZVAL(valptr); - INIT_PZVAL_COPY(valptr, value); - if (!0) { - zval_copy_ctor(valptr); - } - zend_vm_stack_push(valptr TSRMLS_CC); - - } - CHECK_EXCEPTION(); - ZEND_VM_NEXT_OPCODE(); -} - static int ZEND_FASTCALL zend_send_by_var_helper_SPEC_CV(ZEND_OPCODE_HANDLER_ARGS) { USE_OPLINE @@ -37512,21 +37456,21 @@ void zend_init_opcodes_handlers(void) ZEND_SEND_VAL_SPEC_TMP_HANDLER, ZEND_SEND_VAL_SPEC_TMP_HANDLER, ZEND_SEND_VAL_SPEC_TMP_HANDLER, - ZEND_SEND_VAL_SPEC_VAR_HANDLER, - ZEND_SEND_VAL_SPEC_VAR_HANDLER, - ZEND_SEND_VAL_SPEC_VAR_HANDLER, - ZEND_SEND_VAL_SPEC_VAR_HANDLER, - ZEND_SEND_VAL_SPEC_VAR_HANDLER, ZEND_NULL_HANDLER, ZEND_NULL_HANDLER, ZEND_NULL_HANDLER, ZEND_NULL_HANDLER, ZEND_NULL_HANDLER, - ZEND_SEND_VAL_SPEC_CV_HANDLER, - ZEND_SEND_VAL_SPEC_CV_HANDLER, - ZEND_SEND_VAL_SPEC_CV_HANDLER, - ZEND_SEND_VAL_SPEC_CV_HANDLER, - ZEND_SEND_VAL_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,