1
0
mirror of https://github.com/php/php-src.git synced 2026-04-28 02:33:17 +02:00
Commit Graph

36 Commits

Author SHA1 Message Date
Nikita Popov 61a38bb274 SCCP: Fix leak when determining TYPE_CHECK from type info
As TYPE_CHECK is the only opcode where we do something like this,
I'm adding this hack.
2019-05-29 16:47:19 +02:00
Nikita Popov 66fda0cdb1 Remove result def during jmp_set optimization 2019-02-22 13:41:47 +01:00
Peter Kokot 782352c54a Trim trailing whitespace in *.phpt 2018-10-14 19:45:12 +02:00
Dmitry Stogov 8c22d3e729 Make FETCH_R/IS, FETCH_DIM_R/IS, FETCH_OBJ_R/IS, FETCH_STATIC_PROP_R/IS return TMP_VAR, instead of VAR. 2018-06-25 23:43:23 +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
Nikita Popov 705dc3f049 Fix DCE test
Without the type hint the previous optimization no longer applied,
as the result could be an (overloaded) object, which might have
caused dtor effect reordering.
2018-02-18 15:37:10 +01:00
Xinchen Hui 63a96ebf6a Fixed bug while dealing with ADD_ARRAY_ELEMENT against an existing const array 2018-01-07 14:17:47 +08:00
Xinchen Hui 729a6688af Optimized FETCH_CLASS before INSTANCEOF out if possible 2018-01-05 12:58:28 +08:00
Xinchen Hui c0913af570 Fixed test 2018-01-05 12:54:20 +08:00
Xinchen Hui 1db6c19365 Fixed wrongly const replacing on partial array 2018-01-05 12:29:39 +08:00
Rasmus Lerdorf 9fe6b29356 Add line numbers to Opcache's zend_dump_op() debug output 2017-10-06 11:03:07 -03:00
Dmitry Stogov 80abd81344 Fixed escape analysis for ASSIGN_DIM/ASSIGN_OBJ opcodes and improved DCE 2017-09-14 11:03:47 +03:00
Christoph M. Becker ee92aed06f [ci skip] Merge branch 'pull-request/2752'
* pull-request/2752:
  Fixed typo
2017-09-14 02:03:23 +02:00
Dmitry Stogov 0a86f159f4 Added test. Invalid usage doesn't affect escape_satte of arrays/objects and shouldn't prevent SCCP on "proper" paths. 2017-09-14 00:09:28 +03:00
Markus Staab ea4e3efa14 Fixed typo 2017-09-13 18:35:37 +02:00
Dmitry Stogov 93af905071 Improved reference dependencies analysis 2017-09-13 18:18:51 +03:00
Dmitry Stogov 9f45aaaac2 Fixed test 2017-09-12 21:41:29 +03:00
Xinchen Hui 07ed545abf Fixed memleak in SCCP 2017-09-12 21:35:30 +08:00
Dmitry Stogov 86dd321c0c Fixed yet another object aliasing problem 2017-09-11 23:19:03 +03:00
Dmitry Stogov 63b93b4a74 Fixed copy semantics in escape analysis 2017-09-11 20:59:40 +03:00
Dmitry Stogov d5c527c9db Fixed SCCP failure, because of aliased objects.
For now, mark aliased objects as "escaping".
A more clever solution would requitre Heap Array SSA + Definitely Same and Definitely Different sets construction.
2017-09-11 16:23:17 +03:00
Dmitry Stogov 76b2968a73 Improved JMP optimization 2017-09-11 14:40:15 +03:00
Dmitry Stogov 431ea10fb2 Remove unused temporary variables 2017-09-05 14:46:03 +03:00
Dmitry Stogov 39459114ff Replace used constant instructions by QM_ASSIGN 2017-09-05 11:43:33 +03:00
Xinchen Hui 4afe5a5cb2 Fixed SCCP rewinding on partial_array|object phi 2017-09-02 21:28:33 +08:00
Xinchen Hui 7c9556db99 Fixed SCCP on PHI(partial_object#1, partial_object#2) 2017-09-02 18:40:26 +08:00
Xinchen Hui 8a7ba133c3 Fixed SCCP on PHI(contant_array, partial_array) 2017-09-02 18:16:40 +08:00
Dmitry Stogov 59c5d81bab Added skipif.inc 2017-09-01 13:32:26 +03:00
Dmitry Stogov becb4d6d59 Remove dead allocations of non-escaping objects 2017-09-01 10:32:20 +03:00
Dmitry Stogov 6cc9e805cd Remove dead construction of non-escaping arrays and objects 2017-08-31 17:17:04 +03:00
Dmitry Stogov 1eb6fd8bc4 Extend SCCP to support properties of non-escaping objects 2017-08-31 13:17:46 +03:00
Dmitry Stogov d1d523ef50 Support for implicit array/object allocations 2017-08-30 17:41:45 +03:00
Dmitry Stogov a0c76de006 Fixed tests 2017-08-30 15:54:55 +03:00
Dmitry Stogov ce3dbb53a7 Extend SCCP pass with support for elements of non-escaping arrays 2017-08-30 15:31:23 +03:00
Dmitry Stogov 08447ebc0f Fixed tests titels 2017-08-29 12:31:38 +03:00
Dmitry Stogov f1fd08c8f1 Added few Optimizer tests 2017-08-29 12:11:34 +03:00