summaryrefslogtreecommitdiff
path: root/Zend/zend_execute.h
diff options
context:
space:
mode:
authorDmitry Stogov <dmitry@zend.com>2014-11-28 10:28:49 +0300
committerDmitry Stogov <dmitry@zend.com>2014-11-28 10:28:49 +0300
commit11384ba77b9ee58beff7a08d230ed277153bb8f4 (patch)
tree2506f31e139cbcd62446926067ff7030a721f51b /Zend/zend_execute.h
parent9a36cb1a07c247766278a888612ecbac812bece9 (diff)
downloadphp-git-11384ba77b9ee58beff7a08d230ed277153bb8f4.tar.gz
Pack EX(num_args) into EX(This).u2.num_args
Diffstat (limited to 'Zend/zend_execute.h')
-rw-r--r--Zend/zend_execute.h8
1 files changed, 4 insertions, 4 deletions
diff --git a/Zend/zend_execute.h b/Zend/zend_execute.h
index 8a621cf348..0fca6c8a12 100644
--- a/Zend/zend_execute.h
+++ b/Zend/zend_execute.h
@@ -223,7 +223,7 @@ static zend_always_inline zend_execute_data *zend_vm_stack_push_call_frame(uint3
call->called_scope = called_scope;
call->prev_execute_data = prev;
call->frame_info = frame_info;
- call->num_args = 0;
+ ZEND_CALL_NUM_ARGS(call) = 0;
return call;
}
@@ -231,9 +231,9 @@ static zend_always_inline void zend_vm_stack_free_extra_args(zend_execute_data *
{
uint32_t first_extra_arg = call->func->op_array.num_args - ((call->func->common.fn_flags & ZEND_ACC_VARIADIC) != 0);
- if (UNEXPECTED(call->num_args > first_extra_arg)) {
+ if (UNEXPECTED(ZEND_CALL_NUM_ARGS(call) > first_extra_arg)) {
zval *end = EX_VAR_NUM_2(call, call->func->op_array.last_var + call->func->op_array.T);
- zval *p = end + (call->num_args - first_extra_arg);
+ zval *p = end + (ZEND_CALL_NUM_ARGS(call) - first_extra_arg);
do {
p--;
zval_ptr_dtor_nogc(p);
@@ -243,7 +243,7 @@ static zend_always_inline void zend_vm_stack_free_extra_args(zend_execute_data *
static zend_always_inline void zend_vm_stack_free_args(zend_execute_data *call TSRMLS_DC)
{
- uint32_t num_args = call->num_args;
+ uint32_t num_args = ZEND_CALL_NUM_ARGS(call);
if (num_args > 0) {
zval *end = ZEND_CALL_ARG(call, 1);