Dmitry Stogov
4bc7ee2eb7
Fixed conditions
2015-03-06 11:00:19 +03:00
Dmitry Stogov
8e3643a8fc
Avoid useless op_array duplication
2015-03-05 14:23:48 +03:00
Dmitry Stogov
8ec8648c91
Improved code for class property inheritance
2015-03-04 17:41:01 +03:00
Dmitry Stogov
623810eff4
Use fast SSE2 memcpy() for copying block of data from SHM to process memory
2015-02-20 16:08:57 +03:00
Dmitry Stogov
d85113702c
Lazy duplication of op_array->static_variables
2015-02-20 13:28:26 +03:00
Levi Morrison
c8576c5a46
Implement return types
...
RFC is documented here: https://wiki.php.net/rfc/return_types
2015-01-27 11:49:56 -07:00
Xinchen Hui
fc33f52d8c
bump year
2015-01-15 23:27:30 +08:00
Xinchen Hui
0579e8278d
bump year
2015-01-15 23:26:37 +08:00
Dmitry Stogov
37466b0368
Use special flag (HASH_FLAG_INITIALIZED) instead of (nTableMask == 0) to indicate that HashTable is allocated.
...
Make nTableMask to be 0 for packed arrays.
Remove checks fo HASH_FLAG_PACKED in zend_hash_find/zend_hash_del and family (string keys are resolved through uninitialized_bucket).
Change HashTable layout for better locality.
2014-12-27 11:07:12 +03:00
Dmitry Stogov
2646f7bcb9
Don't count variadic argument in zend_func.common.num_args. This allows faster CALL/RETURN code.
2014-12-22 16:44:39 +03:00
Anatol Belski
bdeb220f48
first shot remove TSRMLS_* things
2014-12-13 23:06:14 +01:00
Dmitry Stogov
5dd427eac2
Use zend_string* for op_array->arg_info[]->name and op_array->arg_info[]->class_name. For internal functions we still use char*.
2014-12-03 16:56:09 +03:00
Dmitry Stogov
9b0b30272f
Copy all the arena allocated data from SHM to process memory at once
2014-10-09 14:01:19 +04:00
Dmitry Stogov
3bc8a958c5
Fixed useless or duplicated IS_INTERNED() checks
2014-09-19 15:41:01 +04:00
Dmitry Stogov
9a05f2dad2
Fixed uint32_t overflow
2014-08-26 15:57:19 +04:00
Nikita Popov
6db293d5e0
Merge remote-tracking branch 'php-src/master' into ast
...
Conflicts:
Zend/zend_compile.c
Zend/zend_compile.h
Zend/zend_globals.h
Zend/zend_language_parser.y
Zend/zend_language_scanner.c
Zend/zend_language_scanner.l
Zend/zend_types.h
2014-08-25 21:52:18 +02:00
Anatol Belski
6f9f0bf205
master renames phase 2
2014-08-25 19:28:33 +02:00
Anatol Belski
c3e3c98ec6
master renames phase 1
2014-08-25 19:24:55 +02:00
Nikita Popov
904a83a137
Merge remote-tracking branch 'php-src/master' into ast
...
Conflicts:
ext/opcache/Optimizer/optimize_func_calls.c
2014-08-16 22:31:13 +02:00
Nikita Popov
71675a4bf8
Merge remote-tracking branch 'php-src/phpng' into ast
...
Conflicts:
Zend/zend_ast.c
Zend/zend_compile.c
Zend/zend_language_parser.y
Incomplete merge!
2014-08-16 21:55:08 +02:00
Nikita Popov
fbef2af2c3
Update opcache for new AST structures
2014-08-15 22:02:53 +02:00
Xinchen Hui
e2522b4f1d
Remove old version PHP supports
2014-08-15 16:40:07 +08:00
Dmitry Stogov
3700364ca5
Don't waste SHM for unused Buckets
2014-08-04 22:51:41 +04:00
Dmitry Stogov
0c6a6f0fba
Re-applyed Bob's patch with minor fixes
2014-05-07 15:03:56 +04:00
Dmitry Stogov
4ecc527976
Reverted Bob's patch (it breaks many tests when run with opcache and needs to be fixed first).
2014-05-07 03:26:13 +04:00
Bob Weinand
f3c1881f1d
Re-added fix for bug #66015 and adapted for phpng branch
2014-05-06 14:59:03 +02:00
Nikita Popov
08ae88157b
Allocate zend_strings with correct size
...
For me (32bit) sizeof(zend_string) is 20, which means that the
char[1] array at the end is padded with three bytes. Thus allocating
based on sizeof(zend_string)-1 overallocates by those 3 padding bytes.
This commit fixes the allocation size, by using XtOffsetOf.
2014-04-23 19:34:51 +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
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
a86eb10dae
Fixed non-interned strings refcounting
2014-04-16 13:36:38 +04:00
Bob Weinand
f614fc6898
Fix bug #66015 by reverting "Removed operations on constant arrays."
2014-04-11 10:08:44 +02:00
Dmitry Stogov
3167b49ce9
Allocate HashTable->arData and HashTable->arHash at once
2014-04-07 18:22:03 +04:00
Dmitry Stogov
76cc99fe60
Refactored ZVAL flags usage to simplify various checks (e.g. Z_REFCOUNTED(), candidate for GC, etc)
2014-04-03 15:26:23 +04:00
Dmitry Stogov
d8099d0468
Changed data layout to allow more efficient operations
2014-04-02 14:34:44 +04:00
Dmitry Stogov
0da12b9273
Fixed script size calculation
2014-04-01 13:04:33 +04:00
Dmitry Stogov
569bfbd00b
Keep constnat flags
2014-04-01 12:20:16 +04:00
Dmitry Stogov
ceecd31cb6
Fixed support for arg_info and type hinfing (TODO: names should be interned)
2014-04-01 11:44:11 +04:00
Dmitry Stogov
46647180ef
function_name might be shared across few op_arrays (inherited methods)
2014-04-01 11:29:22 +04:00
Dmitry Stogov
292b8dffc8
Make opcache work (incomplete - optimizer doesn't work yet; crashes on request shutdown)
2014-03-31 13:11:58 +04:00
Dmitry Stogov
5324f22f59
ext/opcache refactoring (incomplete)
2014-03-28 23:34:49 +04:00
Dmitry Stogov
f4cfaf36e2
Use better data structures (incomplete)
2014-02-10 10:04:30 +04:00
Dmitry Stogov
f16a4bc203
Merge branch 'PHP-5.5' into PHP-5.6
...
* PHP-5.5:
Fixed ADD_INTERNED_STRING() logic to support strings that are already interned. (Terry)
2014-01-09 13:49:54 +04:00
Dmitry Stogov
b5fbde9c5b
Fixed ADD_INTERNED_STRING() logic to support strings that are already interned. (Terry)
2014-01-09 13:48:08 +04:00
Xinchen Hui
c081ce628f
Bump year
2014-01-03 11:08:10 +08:00
Xinchen Hui
47c9027772
Bump year
2014-01-03 11:06:16 +08:00
Bob Weinand
152898ff28
Moved arrays again to "static_scalar:" & little cleanup
2013-11-07 16:39:47 +01:00
Dmitry Stogov
9647c61dc1
Constant expressions refactoring
2013-11-06 22:21:07 +04:00
Dmitry Stogov
a62ffb72f4
Renamed Zend Optimizer+ into Zend OPcache
2013-03-19 10:32:24 +04:00
Dmitry Stogov
34d3202eda
Merge Zend Optimizer+
...
git-subtree-dir: ext/opcache
git-subtree-mainline: b1dbfb7357
git-subtree-split: 8d35170c5f
2013-03-16 00:41:46 +04:00