diff options
| author | Dmitry Stogov <dmitry@php.net> | 2010-05-24 14:11:39 +0000 |
|---|---|---|
| committer | Dmitry Stogov <dmitry@php.net> | 2010-05-24 14:11:39 +0000 |
| commit | c5237d82bf01a762bb38f80def59b9c16cb84dc1 (patch) | |
| tree | 6e769820ba97ef669765c6ecfeabb08faf9e6ebc /Zend/zend_API.h | |
| parent | 1cabc8cd3a3bf5c12a8ece9efb59e3f5381f1ae5 (diff) | |
| download | php-git-c5237d82bf01a762bb38f80def59b9c16cb84dc1.tar.gz | |
Added caches to eliminate repeatable run-time bindings of functions, classes, constants, methods and properties
Diffstat (limited to 'Zend/zend_API.h')
| -rw-r--r-- | Zend/zend_API.h | 5 |
1 files changed, 3 insertions, 2 deletions
diff --git a/Zend/zend_API.h b/Zend/zend_API.h index df126c806f..e07b52f503 100644 --- a/Zend/zend_API.h +++ b/Zend/zend_API.h @@ -208,9 +208,9 @@ typedef struct _zend_fcall_info_cache { INIT_OVERLOADED_CLASS_ENTRY(class_container, ZEND_NS_NAME(ns, class_name), functions, handle_fcall, handle_propget, handle_propset) #ifdef ZTS -# define CE_STATIC_MEMBERS(ce) (((ce)->type==ZEND_USER_CLASS)?(ce)->static_members:CG(static_members)[(zend_intptr_t)(ce)->static_members]) +# define CE_STATIC_MEMBERS(ce) (((ce)->type==ZEND_USER_CLASS)?(ce)->static_members:CG(static_members_table)[(zend_intptr_t)(ce)->static_members_table]) #else -# define CE_STATIC_MEMBERS(ce) ((ce)->static_members) +# define CE_STATIC_MEMBERS(ce) ((ce)->static_members_table) #endif #define ZEND_FCI_INITIALIZED(fci) ((fci).size != 0) @@ -347,6 +347,7 @@ ZEND_API int _array_init(zval *arg, uint size ZEND_FILE_LINE_DC); ZEND_API int _object_init(zval *arg ZEND_FILE_LINE_DC TSRMLS_DC); ZEND_API int _object_init_ex(zval *arg, zend_class_entry *ce ZEND_FILE_LINE_DC TSRMLS_DC); ZEND_API int _object_and_properties_init(zval *arg, zend_class_entry *ce, HashTable *properties ZEND_FILE_LINE_DC TSRMLS_DC); +ZEND_API void object_properties_init(zend_object *object, zend_class_entry *class_type); ZEND_API void zend_merge_properties(zval *obj, HashTable *properties, int destroy_ht TSRMLS_DC); |
