com php-src: Reordered field to improve data lacality and reduce L1D CPU cache misses in ZEND_INIT_FCALL opcode family: Zend /zend_compile.h
| From: | Dmitry Stogov | Date: | Wed, 30 Sep 2015 13:22:56 +0000 |
| Subject: | com php-src: Reordered field to improve data lacality and reduce L1D CPU cache misses in ZEND_INIT_FCALL opcode family: Zend /zend_compile.h | ||
| Groups: | php.cvs | ||
| Request: | Send a blank email to php-cvs+get-89247@lists.php.net to get a copy of this message | ||
Commit: 64a79817ce829b2d474e5e8aca87e2ecd1fadfb7
Author: Dmitry Stogov <dmitry@zend.com> Wed, 30 Sep 2015 16:22:56 +0300
Parents: a60105d7a4cadd5287da68c02992fceb06df4b2d
Branches: PHP-7.0 master
Link: http://git.php.net/?p=php-src.git;a=commitdiff;h=64a79817ce829b2d474e5e8aca87e2ecd1fadfb7
Log:
Reordered field to improve data lacality and reduce L1D CPU cache misses in ZEND_INIT_FCALL opcode
family
Changed paths:
M Zend/zend_compile.h
Diff:
diff --git a/Zend/zend_compile.h b/Zend/zend_compile.h
index c29f876..68cc39a 100644
--- a/Zend/zend_compile.h
+++ b/Zend/zend_compile.h
@@ -431,17 +431,17 @@ struct _zend_execute_data {
const zend_op *opline; /* executed opline */
zend_execute_data *call; /* current call */
zval *return_value;
- zend_function *func; /* executed op_array */
- zval This;
+ zend_function *func; /* executed funcrion */
+ zval This; /* this + call_info + num_args */
+ zend_class_entry *called_scope;
+ zend_execute_data *prev_execute_data;
+ zend_array *symbol_table;
#if ZEND_EX_USE_RUN_TIME_CACHE
- void **run_time_cache;
+ void **run_time_cache; /* cache op_array->run_time_cache */
#endif
#if ZEND_EX_USE_LITERALS
- zval *literals;
+ zval *literals; /* cache op_array->literals */
#endif
- zend_class_entry *called_scope;
- zend_execute_data *prev_execute_data;
- zend_array *symbol_table;
};
#define ZEND_CALL_FUNCTION (0 << 0)