}
}
- if (UNEXPECTED(EX(call)->num_additional_args != 0)) {
- num_args = opline->extended_value + EX(call)->num_additional_args;
- EX(function_state).arguments = zend_vm_stack_push_args(num_args TSRMLS_CC);
- } else {
- zval tmp;
-
+ if (EXPECTED(EX(call)->num_additional_args == 0)) {
num_args = opline->extended_value;
- ZVAL_LONG(&tmp, num_args);
EX(function_state).arguments = zend_vm_stack_top(TSRMLS_C);
- zend_vm_stack_push(&tmp TSRMLS_CC);
+ ZVAL_LONG(zend_vm_stack_top_inc(TSRMLS_C), num_args);
+ } else {
+ num_args = opline->extended_value + EX(call)->num_additional_args;
+ EX(function_state).arguments = zend_vm_stack_push_args(num_args TSRMLS_CC);
}
LOAD_OPLINE();
}
}
- if (UNEXPECTED(EX(call)->num_additional_args != 0)) {
- num_args = opline->extended_value + EX(call)->num_additional_args;
- EX(function_state).arguments = zend_vm_stack_push_args(num_args TSRMLS_CC);
- } else {
- zval tmp;
-
+ if (EXPECTED(EX(call)->num_additional_args == 0)) {
num_args = opline->extended_value;
- ZVAL_LONG(&tmp, num_args);
EX(function_state).arguments = zend_vm_stack_top(TSRMLS_C);
- zend_vm_stack_push(&tmp TSRMLS_CC);
+ ZVAL_LONG(zend_vm_stack_top_inc(TSRMLS_C), num_args);
+ } else {
+ num_args = opline->extended_value + EX(call)->num_additional_args;
+ EX(function_state).arguments = zend_vm_stack_push_args(num_args TSRMLS_CC);
}
LOAD_OPLINE();