Dmitry Stogov
9716bd68a3
Avoid double copying
2018-03-06 21:58:40 +03:00
Dmitry Stogov
d03e95442a
Use reference counting instead of duplication
2018-03-06 21:20:19 +03:00
Dmitry Stogov
c060d88c36
Fixed bug #76050
2018-03-06 03:31:06 +03:00
Dmitry Stogov
47f5f87826
Merge branch 'PHP-7.2'
...
* PHP-7.2:
Don't keep HashTable.pDestructor in SHM and always set it into ZVAL_PTR_DTOR in zval_array_dup(). Keeping pointer to a function in SHM is not safe because of ASLR.
2018-03-06 01:02:31 +03:00
Dmitry Stogov
b48d2f6d10
Merge branch 'PHP-7.1' into PHP-7.2
...
* PHP-7.1:
Don't keep HashTable.pDestructor in SHM and always set it into ZVAL_PTR_DTOR in zval_array_dup(). Keeping pointer to a function in SHM is not safe because of ASLR.
2018-03-06 01:00:14 +03:00
Dmitry Stogov
b711a96acb
Don't keep HashTable.pDestructor in SHM and always set it into ZVAL_PTR_DTOR in zval_array_dup().
...
Keeping pointer to a function in SHM is not safe because of ASLR.
2018-03-06 00:56:16 +03:00
Dmitry Stogov
877da311bc
Typo
2018-03-05 20:45:26 +03:00
Dmitry Stogov
ab139b6bfd
Reverted e6d6fcedf7 and overdesign introduced in ae64dd6d56.
...
Now we have just indexex, pointers and linked list od unused buffers.
2018-03-05 20:20:58 +03:00
Nikita Popov
a0563aa7bc
Fix incorrect GC_NUM2ADDR usage
...
Both first_unused and GC_MAX_UNCOMPRESSED are addresses, so we
should compare them directly.
2018-03-05 16:29:46 +01:00
Dmitry Stogov
6c035f53f1
Separate duplicated code into a zend_ini_parse_bool() function.
2018-03-05 11:51:58 +03:00
Dmitry Stogov
e6d6fcedf7
Switch to better GC address representation
2018-03-02 17:36:18 +03:00
Dmitry Stogov
ae64dd6d56
Make distinct between indexes/numbers, GC addresses and pointers to gc_root_buffers.
...
Perform conversion through macros.
2018-03-02 17:02:29 +03:00
Dmitry Stogov
f844d40fdc
GC API cleanup
2018-03-02 11:02:21 +03:00
Dmitry Stogov
eb3f152a80
Merge branch 'gc-buffer-dynamic4'
...
* gc-buffer-dynamic4:
Switch to siple "commpression" scheme
micro-optimization
Cleanup
Tunning for fast paths
Cleanup
Improve GC color checks
Implemented simple adaptive GC threshold selection.
GC improvement
2018-03-02 10:16:08 +03:00
Dmitry Stogov
06c6c632c3
Switch to siple "commpression" scheme
2018-03-02 10:01:08 +03:00
Dmitry Stogov
8b5e76c790
micro-optimization
2018-03-02 01:53:59 +03:00
Dmitry Stogov
5c78bb80cc
Cleanup
2018-03-02 01:42:42 +03:00
Dmitry Stogov
26e0ebffac
Tunning for fast paths
2018-03-01 17:38:32 +03:00
Dmitry Stogov
165dadace3
Cleanup
2018-03-01 15:51:50 +03:00
Xinchen Hui
12ee810960
Attempt to fix build with gcc-4.8
2018-03-01 18:34:39 +08:00
Dmitry Stogov
5994b8ac95
Improve GC color checks
2018-03-01 11:55:26 +03:00
Dmitry Stogov
077d227500
Implemented simple adaptive GC threshold selection.
2018-03-01 11:04:28 +03:00
Xinchen Hui
fd208e82dd
Attempt to fix build reported fails in containers
2018-03-01 11:56:12 +08:00
Dmitry Stogov
fd348ec43f
GC improvement
2018-03-01 03:17:21 +03:00
Dmitry Stogov
4631a5e2e1
Tunning for new GC_TYPE_INFO layout
2018-02-28 13:25:29 +03:00
Xinchen Hui
6a59f3714a
Merge branch 'PHP-7.2'
...
* PHP-7.2:
Update NEWS
Fixed bug #76025 (Segfault while throwing exception in error_handler).
2018-02-28 18:07:15 +08:00
Xinchen Hui
858ebd9285
Merge branch 'PHP-7.1' into PHP-7.2
...
* PHP-7.1:
Fixed bug #76025 (Segfault while throwing exception in error_handler).
2018-02-28 18:06:49 +08:00
Xinchen Hui
d5c171311d
Fixed bug #76025 (Segfault while throwing exception in error_handler).
2018-02-28 18:06:37 +08:00
Dmitry Stogov
31e5c34542
typo
2018-02-28 10:16:51 +03:00
Dmitry Stogov
f1d5168a74
Simplify GC_FLAGS cand CG_INFO checks
2018-02-28 02:36:50 +03:00
Dmitry Stogov
c9e1419fd2
Change CG_TYPE_INFO() layout to provide more room for GC_INFO()
2018-02-28 00:53:30 +03:00
Dmitry Stogov
6f483dc94c
Use macros to update specific parts of GC_TYPE_INFO() (direct assignments to GC_TYPE(), GC_FLAGS() and GC_INFO() are prohibited)
2018-02-28 00:52:12 +03:00
Dmitry Stogov
baa9890112
Completely hide GC implementation details into zend_gc.c
2018-02-27 21:08:26 +03:00
Christoph M. Becker
ef255c9f0f
Revert "[ci skip] Add missing return types to protos"
...
This reverts commit a2c7c46d5e .
Since apparently there have been some mistakes in this commit, and it's
not clear yet how to solve them, we're reverting for now.
2018-02-27 17:40:03 +01:00
Dmitry Stogov
58880e3fc1
Get rid of IS_OBJ_USE_GUARDS and IS_OBJ_HAS_GUARDS flags
2018-02-27 17:38:56 +03:00
Gabriel Caruso
a2c7c46d5e
[ci skip] Add missing return types to protos
2018-02-24 11:45:17 +01:00
Dmitry Stogov
6fb9e24218
Allow generation of VM map
2018-02-22 15:31:00 +03:00
Gabriel Caruso
e1cc4863d9
Remove duplicated tests
2018-02-22 13:03:21 +01:00
Dmitry Stogov
d393199e13
Fixed compilation warnings
2018-02-22 11:33:26 +03:00
Dmitry Stogov
75f6b0c557
Merge branch 'master' of git.php.net:php-src
...
* 'master' of git.php.net:php-src:
remove support for string|unicode in tests
improve extension skeleton generator
2018-02-22 11:00:58 +03:00
Dmitry Stogov
bd908f6145
Fixed build without global register variables
2018-02-22 11:00:29 +03:00
Gabriel Caruso
b895690dfa
remove support for string|unicode in tests
2018-02-22 08:11:30 +01:00
Dmitry Stogov
927748b271
Reorganize make_real_object() related code
2018-02-21 18:43:38 +03:00
Dmitry Stogov
ecb52b8b3b
Move exceprional code into helper & zend_fetch_var_address_helper() micro-optimization.
2018-02-21 17:09:42 +03:00
Dmitry Stogov
7559b1c50c
Move result address calculation from specialized handlers to less specialized helpers
2018-02-21 16:06:29 +03:00
Dmitry Stogov
9c0427cada
Mark exceptional helpers as "cold"
2018-02-21 12:07:29 +03:00
Dmitry Stogov
e1b1cff48d
Move exceptional code into helpers
2018-02-21 10:10:04 +03:00
Dmitry Stogov
41eb70a493
Added expectation
2018-02-21 02:49:40 +03:00
Dmitry Stogov
b53f5cc92d
Move exceptional code into helpers
2018-02-21 01:27:39 +03:00
Gabriel Caruso
ded3d984c6
Use EXPECT instead of EXPECTF when possible
...
EXPECTF logic in run-tests.php is considerable, so let's avoid it.
2018-02-20 21:53:48 +01:00