com php-src: Only use explicit ">" in sorting algo: Zend/zend_sort.c

From: Date: Mon, 19 Jan 2015 08:32:28 +0000
Subject: com php-src: Only use explicit ">" in sorting algo: Zend/zend_sort.c
Groups: php.cvs 
Request: Send a blank email to php-cvs+get-84166@lists.php.net to get a copy of this message
Commit: b33629f21253b106157e8a3f24b376a4aadd92f0 Author: Xinchen Hui <laruence@php.net> Mon, 19 Jan 2015 03:32:28 -0500 Parents: 0bf9326512948f3c44dc33ff1b6b5613649d5761 Branches: master Link: http://git.php.net/?p=php-src.git;a=commitdiff;h=b33629f21253b106157e8a3f24b376a4aadd92f0 Log: Only use explicit ">" in sorting algo Changed paths: M Zend/zend_sort.c Diff: diff --git a/Zend/zend_sort.c b/Zend/zend_sort.c index 78ed0eb..cdf19f9 100644 --- a/Zend/zend_sort.c +++ b/Zend/zend_sort.c @@ -98,8 +98,8 @@ static inline void zend_sort_2(void *a, void *b, compare_func_t cmp, swap_func_t /* }}} */ static inline void zend_sort_3(void *a, void *b, void *c, compare_func_t cmp, swap_func_t swp) /* {{{ */ { - if (cmp(a, b) <= 0) { - if (cmp(b, c) <= 0) { + if (!(cmp(a, b) > 0)) { + if (!(cmp(b, c) > 0)) { return; } swp(b, c); @@ -108,7 +108,7 @@ static inline void zend_sort_3(void *a, void *b, void *c, compare_func_t cmp, sw } return; } - if (cmp(c, b) <= 0) { + if (!(cmp(c, b) > 0)) { swp(a, c); return; } @@ -178,15 +178,16 @@ ZEND_API void zend_insert_sort(void *base, size_t nmemb, size_t siz, compare_fun char *i, *j, *k; char *start = (char *)base; char *end = start + (nmemb * siz); + size_t siz2= siz + siz; char *sentry = start + (6 * siz); for (i = start + siz; i < sentry; i += siz) { j = i - siz; - if (cmp(j, i) <= 0) { + if (!(cmp(j, i) > 0)) { continue; } while (j != start) { j -= siz; - if (cmp(j, i) <= 0) { + if (!(cmp(j, i) > 0)) { j += siz; break; } @@ -197,14 +198,14 @@ ZEND_API void zend_insert_sort(void *base, size_t nmemb, size_t siz, compare_fun } for (i = sentry; i < end; i += siz) { j = i - siz; - if (cmp(j, i) <= 0) { + if (!(cmp(j, i) > 0)) { continue; } do { - j -= siz * 2; - if (cmp(j, i) <= 0) { + j -= siz2; + if (!(cmp(j, i) > 0)) { j += siz; - if (cmp(j, i) <= 0) { + if (!(cmp(j, i) > 0)) { j += siz; } break;

« previous php.cvs (#84166) next »