diff options
author | Dmitry Stogov <dmitry@zend.com> | 2018-05-08 00:22:04 +0300 |
---|---|---|
committer | Dmitry Stogov <dmitry@zend.com> | 2018-05-08 00:22:04 +0300 |
commit | 858d545ce6c17f1cb7c81f3c563e36a9a602438c (patch) | |
tree | eccab5e7dc845d8ba01db4bdffed52309725c657 /Zend/zend_string.h | |
parent | 63f5e11d9bf361d86dd47994d85951bd4a5b6d4a (diff) | |
download | php-git-858d545ce6c17f1cb7c81f3c563e36a9a602438c.tar.gz |
micro optimization
Diffstat (limited to 'Zend/zend_string.h')
-rw-r--r-- | Zend/zend_string.h | 6 |
1 files changed, 2 insertions, 4 deletions
diff --git a/Zend/zend_string.h b/Zend/zend_string.h index 99674cd5da..fe2a7475c4 100644 --- a/Zend/zend_string.h +++ b/Zend/zend_string.h @@ -32,6 +32,7 @@ typedef zend_string *(ZEND_FASTCALL *zend_string_init_interned_func_t)(const cha ZEND_API extern zend_new_interned_string_func_t zend_new_interned_string; ZEND_API extern zend_string_init_interned_func_t zend_string_init_interned; +ZEND_API zend_ulong ZEND_FASTCALL zend_string_hash_func(zend_string *str); ZEND_API zend_ulong ZEND_FASTCALL zend_hash_func(const char *str, size_t len); ZEND_API zend_string* ZEND_FASTCALL zend_interned_string_find_permanent(zend_string *str); @@ -97,10 +98,7 @@ END_EXTERN_C() static zend_always_inline zend_ulong zend_string_hash_val(zend_string *s) { - if (!ZSTR_H(s)) { - ZSTR_H(s) = zend_hash_func(ZSTR_VAL(s), ZSTR_LEN(s)); - } - return ZSTR_H(s); + return ZSTR_H(s) ? ZSTR_H(s) : zend_string_hash_func(s); } static zend_always_inline void zend_string_forget_hash_val(zend_string *s) |