Dmitry Stogov
eb7be5379d
Speed up fetching of class entries for self:: parent:: and static::
...
This is generalized solution for Bob's idea of speed up self::method() calls without ZEND_FETCH_CLASS.
At first, it adds few new opcodes to separate class related behaviour:
FETCH_STATIC_PROP_R
FETCH_STATIC_PROP_W
FETCH_STATIC_PROP_RW
FETCH_STATIC_PROP_FUNC_ARG
FETCH_STATIC_PROP_UNSET
FETCH_STATIC_PROP_IS
UNSET_STATIC_PROP
ISSET_ISEMPTY_STATIC_PROP
FETCH_CLASS_CONSTANT
At seconds, it enables IS_UNUSED operand to fetch (self, parent or static without separate FETCH_CLASS) for new opcodes and the following ones:
INIT_STATIC_METHOD_CALL
NEW
END_INSTANCEOF
Finaly, opcache optimizer had to be fixed to support new opcodes.
2015-10-28 21:26:52 +03:00
..
2015-07-29 13:26:35 +02:00
2015-06-30 04:05:24 +03:00
2015-09-24 22:39:59 +03:00
2015-06-22 13:29:42 +02:00
2015-09-02 17:16:43 +12:00
2015-10-18 15:02:48 -07:00
2015-10-19 17:07:31 +02:00
2015-09-24 16:33:56 +02:00
2015-08-19 22:27:39 +02:00
2015-10-19 17:03:08 +02:00
2015-08-02 13:42:01 +02:00
2015-09-02 18:23:26 -06:00
2015-06-22 13:29:42 +02:00
2015-10-18 14:39:45 -07:00
2015-06-30 04:05:24 +03:00
2015-10-07 01:51:37 +03:00
2015-10-27 10:08:27 +08:00
2015-08-21 15:13:39 +02:00
2015-09-24 22:39:59 +03:00
2015-10-02 09:35:00 +02:00
2015-10-19 23:02:52 +02:00
2015-09-04 20:00:29 +01:00
2015-09-29 11:17:43 +03:00
2015-09-29 11:17:43 +03:00
2015-10-02 09:35:00 +02:00
2015-10-18 15:05:09 -07:00
2015-10-28 12:56:12 +01:00
2015-10-27 13:32:45 +01:00
2015-10-07 20:24:49 +11:00
2015-09-03 18:46:07 +03:00
2015-10-28 21:26:52 +03:00
2015-10-26 15:54:29 +01:00
2015-09-29 11:17:43 +03:00
2015-10-07 09:43:28 +02:00
2015-10-18 17:06:54 -07:00
2015-10-18 11:28:57 +02:00
2015-06-30 13:59:27 +03:00
2015-10-18 17:06:54 -07:00
2015-08-20 14:09:30 +10:00
2015-10-23 09:42:19 +02:00
2015-10-23 09:42:19 +02:00
2015-09-14 23:04:27 +03:00
2015-09-30 13:19:37 +02:00
2015-07-09 20:40:07 +02:00
2015-10-18 16:37:03 -07:00
2015-09-02 00:11:45 +02:00
2015-10-23 11:19:30 +08:00
2015-09-29 13:04:06 +02:00
2015-10-10 17:31:40 +02:00
2015-08-26 16:39:48 +02:00
2015-07-29 13:26:35 +02:00
2015-10-18 14:51:13 -07:00
2015-10-15 18:46:57 +08:00
2015-10-07 03:08:11 +03:00
2015-10-18 17:20:00 -07:00
2015-10-14 10:19:57 +08:00
2015-10-26 20:58:10 +00:00
2015-06-30 04:05:24 +03:00
2015-10-10 17:31:40 +02:00
2015-09-24 22:39:59 +03:00
2015-09-04 15:02:50 +02:00
2015-09-24 22:39:59 +03:00
2015-09-09 04:33:28 +02:00
2015-08-21 19:47:17 +02:00
2015-09-19 06:10:48 -07:00
2015-10-16 17:44:17 +02:00
2015-09-24 22:39:59 +03:00
2015-08-23 17:55:23 +02:00