diff options
author | Dmitry Stogov <dmitry@zend.com> | 2020-08-25 18:28:23 +0300 |
---|---|---|
committer | Dmitry Stogov <dmitry@zend.com> | 2020-08-25 18:28:23 +0300 |
commit | 2369f48092a15a42731a4c1d1d8a1c770517a780 (patch) | |
tree | 8cf0c388c92bb81c10e8ebb900c7305fb4c75617 /Zend/zend_type_info.h | |
parent | 647fb38d587ec048a723b36bbf196fe38d341ff8 (diff) | |
download | php-git-2369f48092a15a42731a4c1d1d8a1c770517a780.tar.gz |
Infer information about packed/hash arrays and use it for JIT
Diffstat (limited to 'Zend/zend_type_info.h')
-rw-r--r-- | Zend/zend_type_info.h | 15 |
1 files changed, 11 insertions, 4 deletions
diff --git a/Zend/zend_type_info.h b/Zend/zend_type_info.h index 9dc90d142b..a0fc698ebe 100644 --- a/Zend/zend_type_info.h +++ b/Zend/zend_type_info.h @@ -56,11 +56,18 @@ #define MAY_BE_ARRAY_OF_ANY (MAY_BE_ANY << MAY_BE_ARRAY_SHIFT) #define MAY_BE_ARRAY_OF_REF (MAY_BE_REF << MAY_BE_ARRAY_SHIFT) -#define MAY_BE_ARRAY_KEY_LONG (1<<21) -#define MAY_BE_ARRAY_KEY_STRING (1<<22) +#define MAY_BE_ARRAY_PACKED (1<<21) +#define MAY_BE_ARRAY_HASH (1<<22) /* hash with numeric keys */ + +#define MAY_BE_ARRAY_KEY_LONG (MAY_BE_ARRAY_PACKED | MAY_BE_ARRAY_HASH) +#define MAY_BE_ARRAY_KEY_STRING (1<<23) #define MAY_BE_ARRAY_KEY_ANY (MAY_BE_ARRAY_KEY_LONG | MAY_BE_ARRAY_KEY_STRING) -#define MAY_BE_CLASS (1<<23) -#define MAY_BE_INDIRECT (1<<24) +#define MAY_BE_CLASS (1<<24) +#define MAY_BE_INDIRECT (1<<25) + + +#define MAY_BE_ANY_ARRAY \ + (MAY_BE_ARRAY|MAY_BE_ARRAY_KEY_ANY|MAY_BE_ARRAY_OF_ANY|MAY_BE_ARRAY_OF_REF) #endif /* ZEND_TYPE_INFO_H */ |