diff options
| author | Sterling Hughes <sterling@php.net> | 2003-05-28 20:42:40 +0000 |
|---|---|---|
| committer | Sterling Hughes <sterling@php.net> | 2003-05-28 20:42:40 +0000 |
| commit | 88b2f89eee72964b3dbb6165f944b4590263094c (patch) | |
| tree | be89fbba8688e1b2694133a7d042a99de858d774 /Zend/zend_compile.c | |
| parent | 8effacb1441aa2285a293de379221cd774751f7e (diff) | |
| download | php-git-88b2f89eee72964b3dbb6165f944b4590263094c.tar.gz | |
Cache function call lookups with loops (store in a temporary variable on the
result opline).
Assuming lazy concensus on message that GeorgeS sent to the list last week
Diffstat (limited to 'Zend/zend_compile.c')
| -rw-r--r-- | Zend/zend_compile.c | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/Zend/zend_compile.c b/Zend/zend_compile.c index 9d1db6ec52..65b08409e9 100644 --- a/Zend/zend_compile.c +++ b/Zend/zend_compile.c @@ -1242,6 +1242,9 @@ void zend_do_begin_dynamic_function_call(znode *function_name TSRMLS_DC) opline->opcode = ZEND_INIT_FCALL_BY_NAME; opline->op2 = *function_name; opline->extended_value = 0; + opline->result.u.var = get_temporary_variable(CG(active_op_array)); + opline->result.op_type = IS_TMP_VAR; + SET_UNUSED(opline->op1); zend_stack_push(&CG(function_call_stack), (void *) &ptr, sizeof(zend_function *)); |
