Re: early class binding revisited
| From: | phpxcache | Date: | Sun, 30 Dec 2007 17:12:48 +0000 |
| Subject: | Re: early class binding revisited | ||
| References: | 1 2 3 | Groups: | php.internals |
| Request: | Send a blank email to internals+get-34282@lists.php.net to get a copy of this message | ||
more pitfall: apc and XCache uses fast copy of opcodes for restoring
opcode, but this will never work if early binding which have to modify
opcodes is done after restore
see apc_copy_op_array_for_execution() in apc_compile.c
there is my_copy_data_exceptions(dst, src); which do a check if to deep copy.
and btw, i just find fe->common.arg_info needed to be check in
apc_copy_op_array() for my_copy_data_exceptions() because:
in zend_compile.c
zend_do_perform_implementation_check
fe->common.arg_info[i].class_name = ......;
any updates op_array at runtime looks evil for opcode cacher fast
copy, can't we just assume opcode readonly like all elf .exe etc?