summaryrefslogtreecommitdiff
path: root/Zend/zend_execute.c
diff options
context:
space:
mode:
authorDmitry Stogov <dmitry@zend.com>2012-11-30 13:39:23 +0400
committerDmitry Stogov <dmitry@zend.com>2012-11-30 13:39:23 +0400
commit70f83f35d089d0cafae12ae231a38541f5c8e41c (patch)
tree1dee0f4716d742a57558d59a9285392805b25a9b /Zend/zend_execute.c
parent9f7e53fde8b0feac271230cbc6731e9de90f2a03 (diff)
downloadphp-git-70f83f35d089d0cafae12ae231a38541f5c8e41c.tar.gz
. The VM stacks for passing function arguments and syntaticaly nested calls were merged into a single stack. The stack size needed for op_array execution is calculated at compile time and preallocated at once. As result all the stack push operatins don't require checks for stack overflow any more.
. Generators implementation was improved using the new VM stack. Now it's a bit more clear and faster.
Diffstat (limited to 'Zend/zend_execute.c')
-rw-r--r--Zend/zend_execute.c19
1 files changed, 0 insertions, 19 deletions
diff --git a/Zend/zend_execute.c b/Zend/zend_execute.c
index 361afc6f13..5f04ba7465 100644
--- a/Zend/zend_execute.c
+++ b/Zend/zend_execute.c
@@ -1570,25 +1570,6 @@ void zend_free_compiled_variables(zval ***CVs, int num) /* {{{ */
}
/* }}} */
-void** zend_copy_arguments(void **arguments_end) /* {{{ */
-{
- int arguments_count = (int) (zend_uintptr_t) *arguments_end;
- size_t arguments_size = (arguments_count + 1) * sizeof(void **);
- void **arguments_start = arguments_end - arguments_count;
- void **copied_arguments_start = emalloc(arguments_size);
- void **copied_arguments_end = copied_arguments_start + arguments_count;
- int i;
-
- memcpy(copied_arguments_start, arguments_start, arguments_size);
-
- for (i = 0; i < arguments_count; i++) {
- Z_ADDREF_P((zval *) arguments_start[i]);
- }
-
- return copied_arguments_end;
-}
-/* }}} */
-
/*
* Local variables:
* tab-width: 4