#
ab4ccffc |
| 07-May-2015 |
Dmitry Stogov |
Avoid unnecessary reference counter incrementation on $this when call methods
|
Revision tags: php-5.6.9RC1, php-5.5.25RC1 |
|
#
49608e06 |
| 26-Apr-2015 |
krakjoe |
Rebase Joe's anon classes implementation
|
#
f2435bd2 |
| 23-Apr-2015 |
Kalle Sommer Nielsen |
Fixed compiler warning
|
#
15a5f61c |
| 22-Apr-2015 |
Dmitry Stogov |
Use fast method to check if first arguments should be passed by reference (not tested onbig endian).
|
#
d2607a01 |
| 20-Apr-2015 |
Nikita Popov |
Move more stuff to file_context Introduce helper macro FC(x) for CG(file_context).x. end_compilation() now handled by file_context_end(). While at it, dropped zval wrapper
Move more stuff to file_context Introduce helper macro FC(x) for CG(file_context).x. end_compilation() now handled by file_context_end(). While at it, dropped zval wrapper for ticcks.
show more ...
|
#
0381c1b7 |
| 20-Apr-2015 |
Nikita Popov |
Fixed bug #69388 Renamed compiler_context to oparray_context. Introduced per-file file_context. Moved import tables into the file_context. context_stack no longer exists, instea
Fixed bug #69388 Renamed compiler_context to oparray_context. Introduced per-file file_context. Moved import tables into the file_context. context_stack no longer exists, instead keeping backups of contexts on C stack. Same for file contexts. TODO: Move more things out of CG into file_context. There should be a number of other things that we should not try to reuse in nested compilations.
show more ...
|
#
b1bd6f50 |
| 19-Apr-2015 |
Bob Weinand |
Properly define ZEND_OP_DATA in zend_vm_def.h This allows zend_vm_gen.php to define them in zend_vm_opcodes.{c,h} without further hacks.
|
#
a759967d |
| 16-Apr-2015 |
Dmitry Stogov |
Mark call frames to closures with ZEND_CALL_CLOSURE flag to avoid expensive check at zend_leave_helper()
|
Revision tags: php-5.6.8, php-5.5.24, php-5.4.40 |
|
#
5e8133f4 |
| 10-Apr-2015 |
Dmitry Stogov |
Squashed commit of the following: commit 2399fc84c541da9c2176c5b7f6dd039a3c84dc64 Author: Dmitry Stogov <dmitry@zend.com> Date: Fri Apr 10 12:38:08 2015 +0300 Removed
Squashed commit of the following: commit 2399fc84c541da9c2176c5b7f6dd039a3c84dc64 Author: Dmitry Stogov <dmitry@zend.com> Date: Fri Apr 10 12:38:08 2015 +0300 Removed useless assignment commit 796b6338174348eee0d74a67706d77b7ce1a60c3 Author: Dmitry Stogov <dmitry@zend.com> Date: Fri Apr 10 12:35:31 2015 +0300 Fixed execution with overriden zend_execute_ex() commit 4a9fb125aa999059f8bc42ebb6ee573c7866b35b Author: Dmitry Stogov <dmitry@zend.com> Date: Fri Apr 10 02:02:58 2015 +0300 Fixed executor without global registers commit d456c30e00589ccda35a4b57ae903ef2d3c07d95 Author: Dmitry Stogov <dmitry@zend.com> Date: Fri Apr 10 01:30:35 2015 +0300 Restored original behavior for tests/classes/__call_004.phpt commit 479646d37fef050536f1afb12b082618f1f1a3d0 Author: Dmitry Stogov <dmitry@zend.com> Date: Fri Apr 10 00:32:17 2015 +0300 Fixed test. We don't keep stack frame for fake function anymore. commit 9ae61e33e24b2c811d4ab1ca4ab22847c64a780e Author: Dmitry Stogov <dmitry@zend.com> Date: Fri Apr 10 00:30:09 2015 +0300 Use ZEND_ACC_CALL_VIA_TRAMPOLINE instead of ZEND_ACC_CALL_VIA_HANDLER. Keep ZEND_ACC_CALL_VIA_HANDLER for compatibility. commit 0a8403a2a0c27aa3db271774f8559739a6b8400e Author: Dmitry Stogov <dmitry@zend.com> Date: Fri Apr 10 00:05:43 2015 +0300 Rename PROXY_CALL into CALL_TRAMPLINE. Generalize API to allow reuse EG(trampline) for other purposes. commit 4ea0525c10554e36185a0b8b6303106813b6a1c2 Author: Dmitry Stogov <dmitry@zend.com> Date: Thu Apr 9 23:22:25 2015 +0300 Reuse EG(proxy_call_op) for all proxy. Move proxy related functions from zend_objects_API to zend_object_handlers. commit 529bf737ca388ad56fb4ae20ccb81e6276f25ec0 Author: Dmitry Stogov <dmitry@zend.com> Date: Thu Apr 9 21:42:23 2015 +0300 Accurate use of proxy_call commit 5d62837d5ba3855743fe1981786ebd65d9da0b63 Merge: 83e749f 690843f Author: Dmitry Stogov <dmitry@zend.com> Date: Thu Apr 9 19:40:00 2015 +0300 Merge branch 'master' into opcodefy-call * master: Fixed GOTO executor Fixed typo Changed ArrayIterator implementation using zend_hash_iterator_... API. Allowed modification of itterated ArrayObject using the same behavior as proposed in `Fix "foreach" behavior`. Removed "Array was modified outside object and internal position is no longer valid" hack. commit 83e749ff3b6623e39b236a72e9b907d5b788ae5e Author: Dmitry Stogov <dmitry@zend.com> Date: Thu Apr 9 19:39:10 2015 +0300 Improved ZEND_PROXY_CALL commit 0c829afc534e6d5ff27a0dea3a4815da303bd1ef Author: Dmitry Stogov <dmitry@zend.com> Date: Thu Apr 9 15:14:49 2015 +0300 Reverted white-space changes commit df65144488afa3e9020d75e1ada5529b138afc5a Merge: 5fd2f97 97756d9 Author: Dmitry Stogov <dmitry@zend.com> Date: Thu Apr 9 14:37:07 2015 +0300 Merge branch 'opcodefy-call' of github.com:laruence/php-src into opcodefy-call * 'opcodefy-call' of github.com:laruence/php-src: Ready for PR Fixed static call Improve performance by using prealloated op_arrray Respect called_scope Support internal magical __call/__callStatic opcode-fy magical __callStatic Opcode-fy magical __call commit 97756d9190e07a072a7b48135304dc25a964845f Author: Xinchen Hui <laruence@gmail.com> Date: Thu Apr 9 19:07:59 2015 +0800 Ready for PR commit 74f993084627061e783645a866390b68e2981698 Author: Xinchen Hui <laruence@gmail.com> Date: Thu Apr 9 19:03:00 2015 +0800 Fixed static call commit ec1d9eb592db0c3b7b0e3d21e7f445ed8bccfd4d Author: Xinchen Hui <laruence@gmail.com> Date: Thu Apr 9 18:23:17 2015 +0800 Improve performance by using prealloated op_arrray commit df7fbbf949c99f2c5ae3da2a1199235651c7cc82 Author: Xinchen Hui <laruence@gmail.com> Date: Thu Apr 9 15:10:02 2015 +0800 Respect called_scope commit 769d1d59fb48b6f7f93d7412eefbf26135fa3e59 Author: Xinchen Hui <laruence@gmail.com> Date: Thu Apr 9 12:19:23 2015 +0800 Support internal magical __call/__callStatic commit a980fedd5b0e0683713dd4f6eaad62adf4b4732f Author: Xinchen Hui <laruence@gmail.com> Date: Wed Apr 8 18:35:41 2015 +0800 opcode-fy magical __callStatic commit 73855f7d53baa2efc2b8a88314f51c784c81b59d Author: Xinchen Hui <laruence@gmail.com> Date: Wed Apr 8 14:21:55 2015 +0800 Opcode-fy magical __call
show more ...
|
#
cc70a465 |
| 06-Apr-2015 |
Nikita Popov |
Fix bug #60022
|
#
ec760d8f |
| 01-Apr-2015 |
Dmitry Stogov |
Convert fatal errors into EngineExceptions
|
Revision tags: php-5.6.8RC1, php-5.5.24RC1 |
|
#
59356126 |
| 20-Mar-2015 |
Dmitry Stogov |
Improved type hinting: EX_PREV_USES_STRICT_TYPES() and family changed/renamed to fit with other macros Optimized zend_verify_internal_arg_type() and family (they don't need "strict" argu
Improved type hinting: EX_PREV_USES_STRICT_TYPES() and family changed/renamed to fit with other macros Optimized zend_verify_internal_arg_type() and family (they don't need "strict" argument anymore) Standerd ZPP is called from VM only for weak type check or strict exception (int -> double) Fixed ZEND_RECV_VARIADIC Fixed ZEND_STRLEN TODO: should we accept IS_NULL for non-nullable arguments?
show more ...
|
#
7044f9c6 |
| 19-Mar-2015 |
Anthony Ferrara |
Refactor as to not use call info, but add the flag to the op_array.
|
Revision tags: php-5.6.7 |
|
#
427ecdc5 |
| 18-Mar-2015 |
Anthony Ferrara |
Fix return type separation with references. It now includes a check in the opcode handler and properly separates the value in both cases
|
Revision tags: php-5.5.23, php-5.4.39 |
|
#
e78971cd |
| 13-Mar-2015 |
Anatol Belski |
fix syntax for the Visual studio compat
|
#
db10b725 |
| 13-Mar-2015 |
Dmitry Stogov |
Use fastcall calling convention for most critical ZE subsystems.
|
#
6289f7e5 |
| 12-Mar-2015 |
Dmitry Stogov |
Executor cleanup: fix GOTO and SWITCH VMs, remove aility to build additional PHP-5.0 compatible VM, hide executor implementation details.
|
Revision tags: php-5.6.7RC1, php-5.5.23RC1, POST_PHP7_EREG_MYSQL_REMOVALS, PRE_PHP7_EREG_MYSQL_REMOVALS |
|
#
c2c78dc9 |
| 25-Feb-2015 |
Dmitry Stogov |
Added specialized versions of DO_FCALL handler: DO_ICALL - for internal functions DO_UCALL - for user functions DO_FCALL_BY_NAME - plain, most probably user, funcstions (not methods)
|
#
5f278e4d |
| 24-Feb-2015 |
Dmitry Stogov |
Use cache_slot offsets instead of indexes (simplify run-time instructions)
|
Revision tags: php-5.6.6, php-5.5.22, php-5.4.38 |
|
#
8c81d80e |
| 12-Feb-2015 |
Guilherme Blanco |
Made ZEND_ACC_TRAIT a saner value CC_TRAIT valued as 0x120 is too magical to be comprehensible by others.
|
#
97fe15db |
| 12-Feb-2015 |
Dmitry Stogov |
Fix "forech" statemt behaviour according to https://wiki.php.net/rfc/php7_foreach Squashed commit of the following: commit 1e41295097576dbce6c197ddb7507c07ccae3cbe Author: Dmitr
Fix "forech" statemt behaviour according to https://wiki.php.net/rfc/php7_foreach Squashed commit of the following: commit 1e41295097576dbce6c197ddb7507c07ccae3cbe Author: Dmitry Stogov <dmitry@zend.com> Date: Sat Jan 31 07:28:58 2015 +0300 Generalize HashTableIterator API to allows its usage without involvement of HashTable.nInternalPonter commit 5406f21b11e563069d64045e599693b51c444b63 Author: Dmitry Stogov <dmitry@zend.com> Date: Fri Jan 30 18:08:43 2015 +0300 Reduced alghorithms complexity commit b37f1d58d2a141b6e1d980a461ccb588d4317d2e Author: Dmitry Stogov <dmitry@zend.com> Date: Fri Jan 30 18:08:30 2015 +0300 Fixed test name commit fb2d079645829b12ed4e55a461034df6400bc430 Author: Dmitry Stogov <dmitry@zend.com> Date: Fri Jan 30 18:08:05 2015 +0300 API cleanup commit 08302c0d6d1cab279b9f2129df03a057baddf2ff Author: Dmitry Stogov <dmitry@zend.com> Date: Fri Jan 30 14:20:46 2015 +0300 Make array_splice() to preserve foreach hash position commit cc4b7be41e2e2b9b0d7a3c8e98466b8886692e6e Author: Dmitry Stogov <dmitry@zend.com> Date: Fri Jan 30 12:24:31 2015 +0300 Make internal function, operation on array passed by reference, to preserve foreach hash position commit 5aa9712b0a30303aadfe3bdd8ae1f072ca3e6ba1 Author: Dmitry Stogov <dmitry@zend.com> Date: Fri Jan 30 09:49:35 2015 +0300 Implement consistent behavior for foreach by value over plain object commit 4c5b385ff53ae9f0b52572e98c4db801f56603b0 Author: Dmitry Stogov <dmitry@zend.com> Date: Fri Jan 30 07:56:37 2015 +0300 More careful iterators update. commit 721fc9e80d2ee8f2cd79c8c3cdceffae2c72de92 Author: Dmitry Stogov <dmitry@zend.com> Date: Thu Jan 29 21:43:28 2015 +0300 Added new test commit 15a23b1218b3e38630d677751a975907daa2cd54 Author: Dmitry Stogov <dmitry@zend.com> Date: Thu Jan 29 21:05:02 2015 +0300 Reimplement iteration magic with HashTableIterators (see https://wiki.php.net/rfc/php7_foreach#implementation_details) commit 10a3260b1f16b6075fd8140f673dfef4d5efea91 Author: Dmitry Stogov <dmitry@zend.com> Date: Thu Jan 29 21:04:44 2015 +0300 New test commit eef80c583762d1e98d177cdbb27e3a8a6b0c4539 Author: Dmitry Stogov <dmitry@zend.com> Date: Wed Jan 28 16:52:21 2015 +0300 Fixed foreach by reference iteration over constant array commit 61e739187391661e2d541947bec25d7dcc4479f3 Author: Dmitry Stogov <dmitry@zend.com> Date: Wed Jan 28 14:59:54 2015 +0300 Fixed temporary variable re-allocation pass commit 92e90c09f085c22707ff4a59201f016f56e0ef8b Author: Dmitry Stogov <dmitry@zend.com> Date: Wed Jan 28 12:44:57 2015 +0300 Fixed operand destruction in case of exceptions in iterator commit dd2a36a2074bbb0cb31de00b66dcf2812d6d753f Author: Dmitry Stogov <dmitry@zend.com> Date: Wed Jan 28 10:02:34 2015 +0300 Use GET_OP1_ZVAL_PTR_DEREF() (IS_TMP_VAR and IS_CONST can't be IS_REFERENCE) commit 4638f7b91407c48710007af82a68da0007c820f2 Author: Dmitry Stogov <dmitry@zend.com> Date: Wed Jan 28 07:43:28 2015 +0300 Change "foreach" statement behavior (this is just a PoC yet) - "foreach by value" don't relay on internal array/object pointer and doesnt perform array duplication. It just locks it incrementing reference counter. If the original array is modified by some code, the copy on write is performed and "foreach" still work with the old copy. - it makes no difference if array given to "foreach by value" is reference itself - "foreach by reference" still use internal array/object pointer and should work similar to PHP-5. (This id not completely implemented)
show more ...
|
#
2b3bebfa |
| 10-Feb-2015 |
Bob Weinand |
Revert removal of two ReflectionParameter functions Rather fix them for now by exempting function parameter defaults from *any* (non-ct) constant substitution (also from persistent constant subst
Revert removal of two ReflectionParameter functions Rather fix them for now by exempting function parameter defaults from *any* (non-ct) constant substitution (also from persistent constant substitution, which was already broken before)
show more ...
|
Revision tags: POST_PHP7_REMOVALS, PRE_PHP7_REMOVALS, php-5.6.6RC1, php-5.5.22RC1 |
|
#
c7719ab4 |
| 01-Feb-2015 |
Andrea Faulds |
Refactor typehint lookup
|
Revision tags: php-5.5.21, php-5.6.5, php-5.4.37 |
|
#
cc01e37e |
| 10-Jan-2015 |
Andrea Faulds |
It Begins
|
Revision tags: php-5.5.21RC1, php-5.6.5RC1 |
|
#
5544e372 |
| 06-Jan-2015 |
Andrea Faulds |
Inline
|