diff options
author | Fangrui Song <i@maskray.me> | 2018-07-21 17:34:00 -0700 |
---|---|---|
committer | Rich Felker <dalias@aerifal.cx> | 2018-07-23 15:14:29 -0400 |
commit | 3d8322c7ad659210a4c8770ef455ca729ce7f395 (patch) | |
tree | 25de8d1283cf1945c34aa5ccf444c46846a846da /include/crypt.h | |
parent | f2c6dbe2442027ed8fe0fa869918e41f495534d8 (diff) | |
download | musl-3d8322c7ad659210a4c8770ef455ca729ce7f395.tar.gz musl-3d8322c7ad659210a4c8770ef455ca729ce7f395.tar.xz musl-3d8322c7ad659210a4c8770ef455ca729ce7f395.zip |
bsearch: simplify and optimize
maintainer's note: the key observation here is that the compared element is the first slot of the second ceil(half) of the array, and thus can be removed for further comparison when it does not match, so that we descend into the second ceil(half)-1 rather than ceil(half) elements. this change ensures that nel strictly decreases with each iteration, so that the case of != but nel==1 does not need to be special-cased anymore.
Diffstat (limited to 'include/crypt.h')
0 files changed, 0 insertions, 0 deletions