summaryrefslogtreecommitdiff
path: root/Zend/zend_operators.h
diff options
context:
space:
mode:
authorDmitry Stogov <dmitry@zend.com>2015-09-10 02:51:23 +0300
committerDmitry Stogov <dmitry@zend.com>2015-09-10 02:51:23 +0300
commitc174e4cd73cd16ce0b52ab66a90e97c476a444fe (patch)
treee844a3d8bbc5c58960e5859eaf2d5495fc991983 /Zend/zend_operators.h
parent2ea18cd43165f791a5b0170795a790d2c0198ec8 (diff)
downloadphp-git-c174e4cd73cd16ce0b52ab66a90e97c476a444fe.tar.gz
Change array sorting implementation to avoid two level callbacks system.
Simplify zval comparion API.
Diffstat (limited to 'Zend/zend_operators.h')
-rw-r--r--Zend/zend_operators.h18
1 files changed, 9 insertions, 9 deletions
diff --git a/Zend/zend_operators.h b/Zend/zend_operators.h
index f9a299bd01..7cb3ee1b8a 100644
--- a/Zend/zend_operators.h
+++ b/Zend/zend_operators.h
@@ -329,13 +329,13 @@ again:
}
ZEND_API int ZEND_FASTCALL compare_function(zval *result, zval *op1, zval *op2);
-ZEND_API int zval_compare_function(zval *result, zval *op1, zval *op2);
-ZEND_API int numeric_compare_function(zval *result, zval *op1, zval *op2);
-ZEND_API int string_compare_function_ex(zval *result, zval *op1, zval *op2, zend_bool case_insensitive);
-ZEND_API int string_compare_function(zval *result, zval *op1, zval *op2);
-ZEND_API int string_case_compare_function(zval *result, zval *op1, zval *op2);
+
+ZEND_API int ZEND_FASTCALL numeric_compare_function(zval *op1, zval *op2);
+ZEND_API int ZEND_FASTCALL string_compare_function_ex(zval *op1, zval *op2, zend_bool case_insensitive);
+ZEND_API int ZEND_FASTCALL string_compare_function(zval *op1, zval *op2);
+ZEND_API int ZEND_FASTCALL string_case_compare_function(zval *op1, zval *op2);
#if HAVE_STRCOLL
-ZEND_API int string_locale_compare_function(zval *result, zval *op1, zval *op2);
+ZEND_API int ZEND_FASTCALL string_locale_compare_function(zval *op1, zval *op2);
#endif
ZEND_API void ZEND_FASTCALL zend_str_tolower(char *str, size_t length);
@@ -355,7 +355,7 @@ ZEND_API int ZEND_FASTCALL zend_binary_strncasecmp(const char *s1, size_t len1,
ZEND_API int ZEND_FASTCALL zend_binary_strcasecmp_l(const char *s1, size_t len1, const char *s2, size_t len2);
ZEND_API int ZEND_FASTCALL zend_binary_strncasecmp_l(const char *s1, size_t len1, const char *s2, size_t len2, size_t length);
-ZEND_API zend_long ZEND_FASTCALL zendi_smart_strcmp(zval *s1, zval *s2);
+ZEND_API zend_long ZEND_FASTCALL zendi_smart_strcmp(zend_string *s1, zend_string *s2);
ZEND_API int ZEND_FASTCALL zend_compare_symbol_tables(HashTable *ht1, HashTable *ht2);
ZEND_API int ZEND_FASTCALL zend_compare_arrays(zval *a1, zval *a2);
ZEND_API int ZEND_FASTCALL zend_compare_objects(zval *o1, zval *o2);
@@ -692,7 +692,7 @@ static zend_always_inline int fast_equal_check_function(zval *op1, zval *op2)
return memcmp(Z_STRVAL_P(op1), Z_STRVAL_P(op2), Z_STRLEN_P(op1)) == 0;
}
} else {
- return zendi_smart_strcmp(op1, op2) == 0;
+ return zendi_smart_strcmp(Z_STR_P(op1), Z_STR_P(op2)) == 0;
}
}
}
@@ -723,7 +723,7 @@ static zend_always_inline int fast_equal_check_string(zval *op1, zval *op2)
return memcmp(Z_STRVAL_P(op1), Z_STRVAL_P(op2), Z_STRLEN_P(op1)) == 0;
}
} else {
- return zendi_smart_strcmp(op1, op2) == 0;
+ return zendi_smart_strcmp(Z_STR_P(op1), Z_STR_P(op2)) == 0;
}
}
compare_function(&result, op1, op2);