Commit Graph

79121 Commits

Author SHA1 Message Date
Xinchen Hui
89d89b9586 Merge branch 'refactoring2' of github.com:zendtech/php into refactoring2 2014-04-22 11:59:53 +08:00
Dmitry Stogov
fa588a5c82 Use shorter call chain 2014-04-22 02:34:34 +04:00
Dmitry Stogov
b886d9ce1e Use fast comparison function 2014-04-22 02:03:10 +04:00
Dmitry Stogov
1f181c0f4c Chiper __autoload() function caching 2014-04-22 01:41:40 +04:00
Dmitry Stogov
a821009a6e Avoid string duplication 2014-04-22 01:41:09 +04:00
Dmitry Stogov
ff6dc3e1f2 zend_isset_isempty_dim_prop_obj_handler() split into separate handlers. (Actually, it shared near nothing) 2014-04-22 00:32:29 +04:00
Dmitry Stogov
9610977d10 Reverted chunk committed by mistake 2014-04-21 23:32:36 +04:00
Dmitry Stogov
b9d45cc0a9 Handle references in "slow path" 2014-04-21 23:30:19 +04:00
Dmitry Stogov
4ed452c1b5 Convert zval_get_string() into "fast path" macro and "slow path" function 2014-04-21 22:36:01 +04:00
Dmitry Stogov
8ad8254a16 Merge branch 'refactoring2' of github.com:zendtech/php into refactoring2 2014-04-21 21:39:15 +04:00
Dmitry Stogov
4533269839 Fast path for pre/post inc/dec 2014-04-21 21:38:44 +04:00
Nikita Popov
0d43a277b8 Use zval_get_string in a few more places 2014-04-21 17:55:58 +02:00
Nikita Popov
bda96e3c58 Use zval_get_string in print_zval and propagate TSRMLS 2014-04-21 17:55:58 +02:00
Nikita Popov
5c8697184f Bring zval_get_string implement in line with make_printable_zval
As make_printable_zval is the "main" string cast, match that one.
2014-04-21 17:55:58 +02:00
Dmitry Stogov
72c287bd23 Combine HashTable.flags and HashTable.nApplyCount into single 32-bit word 2014-04-21 18:25:34 +04:00
Dmitry Stogov
afe66d89a1 Cleanup 2014-04-21 16:34:40 +04:00
Dmitry Stogov
acd77dec81 Use alloca() for temporary allocation 2014-04-21 15:18:19 +04:00
Dmitry Stogov
fd24614cd9 Inline simple function 2014-04-21 15:18:05 +04:00
Dmitry Stogov
3c42593735 Removed duplicate code 2014-04-21 15:17:48 +04:00
Dmitry Stogov
dd464fb582 Use ZEND_HASH_FOREACH_* macros 2014-04-21 14:20:05 +04:00
Dmitry Stogov
f71da39210 Use ZEND_HASH_FOEACH_* instead of zend_hash_apply_* 2014-04-21 13:55:25 +04:00
Dmitry Stogov
e9f4d822b0 Avoid useles copy ctor 2014-04-21 13:19:52 +04:00
Xinchen Hui
e48b9ad197 Merge branch 'refactoring2' of github.com:zendtech/php into refactoring2 2014-04-21 14:14:00 +08:00
Dmitry Stogov
54d9ad53f4 More ZEND_HASH_FOREACH_* related changes 2014-04-19 00:08:14 +04:00
Dmitry Stogov
277f8f6391 ZEND_HASH_FOREACH_* usage 2014-04-18 21:49:07 +04:00
Dmitry Stogov
c1e900e4c0 Merge branch 'refactoring2' of github.com:zendtech/php into refactoring2 2014-04-18 19:20:39 +04:00
Nikita Popov
85f537bfc0 Revert "Fix include/eval with custom zend_execute"
This reverts commit ead8a6636d.
2014-04-18 17:19:46 +02:00
Nikita Popov
f76c683d37 Revert "Fix zend_eval_string (and as such assert + dom tests)"
This reverts commit 64cc5a72e2.
2014-04-18 17:19:31 +02:00
Dmitry Stogov
7652a977a8 Use ZEND_FETCH_FOREACH_* macros to iterate over HashTables instead of zend_hash_move_forward() and family. 2014-04-18 19:18:11 +04:00
Nikita Popov
64cc5a72e2 Fix zend_eval_string (and as such assert + dom tests) 2014-04-18 14:35:59 +02:00
Nikita Popov
ead8a6636d Fix include/eval with custom zend_execute 2014-04-18 13:44:19 +02:00
Dmitry Stogov
ea2e1bb1eb Optimized zend_leave_helper() 2014-04-18 13:46:36 +04:00
Nikita Popov
8a14276701 Fix libxml external entity loading 2014-04-18 00:15:13 +02:00
Nikita Popov
c3c47c431e Move libxml_destroy_fci to RSHUTDOWN
If this is only done in post shutdown and the function name is
an object (e.g. closure), the object will already be freed during
zend_deactivate.

I left the rest of the shutdown procedure in post shutdown, as it
presumably has a reason to be there...
2014-04-18 00:15:13 +02:00
Nikita Popov
59d45e69f4 Fix libxml/sxe/dom node import/export
Also fix sxe zts.
2014-04-18 00:15:13 +02:00
Dmitry Stogov
3434d3fc98 Optimize CASE(TRUE, X) into BOOL(X) (this pattern affects wordpress) 2014-04-17 21:15:02 +04:00
Dmitry Stogov
e7b3b1132a Fixed support for references 2014-04-17 17:21:59 +04:00
Dmitry Stogov
5c02e0fc5f Cache op_array->run_time_cache in zend_execute_data for faster access 2014-04-17 16:36:04 +04:00
Dmitry Stogov
3cca67f740 Use local variables instead of opline operands to access cache_slots 2014-04-17 16:10:16 +04:00
Dmitry Stogov
e96073b1e4 Moved zend_literal->cache_slot right into zval.
It should be accessed using Z_CACHE_SLOT() macro.
zend_literal structure is removed.
API functions that accepted pointer to zend_literal now accept pointer to zval or cache_slot directly.
Calls of such functiond that now accept cache_slot need to be changed to pass -1 instead of NULL.
2014-04-17 15:40:45 +04:00
Dmitry Stogov
c92dd8eedf Fixed ZEND_CAST related optimizations (now it returns IS_VAR instead of IS_TMP_VAR) 2014-04-17 11:12:47 +04:00
Dmitry Stogov
dfaf8b6d28 Merge branch 'refactoring2' of github.com:zendtech/php into refactoring2 2014-04-17 02:12:52 +04:00
Dmitry Stogov
6976eb2919 Fixed support for unspecialized and GOTO and SWITCH executor 2014-04-17 02:12:06 +04:00
Nikita Popov
f98937fa80 Don't copy in ZEND_CAST if type is already correct 2014-04-16 22:39:50 +02:00
Dmitry Stogov
320bf772c6 Prevented modification of original name 2014-04-16 22:42:37 +04:00
Dmitry Stogov
3257dc09eb Prevented modification of interned string 2014-04-16 22:42:15 +04:00
Dmitry Stogov
cc576c74d2 op_array->function_name, op_array->doc_comments and op_array->filename may be kept in opcache SHM 2014-04-16 22:41:07 +04:00
Dmitry Stogov
5bb493c40b op_array->filename and op_array->filename may be kept in opcache SHM 2014-04-16 22:39:23 +04:00
Dmitry Stogov
2d62a12128 Prevented modification of constant arguments 2014-04-16 21:31:32 +04:00
Dmitry Stogov
05817f1a93 Prevented unintended SHM modification 2014-04-16 21:01:11 +04:00