summaryrefslogtreecommitdiff
path: root/repository.h
diff options
context:
space:
mode:
authorJeff King <peff@peff.net>2018-08-28 21:22:55 (GMT)
committerJunio C Hamano <gitster@pobox.com>2018-08-29 18:32:49 (GMT)
commitcc00e5ce6b50cf4197e137b87a33209568b1e662 (patch)
tree9916928816a1c27728736f4702e7371e7add0fcd /repository.h
parent67947c34ae8f666e72b9406a38984fe8386f5e50 (diff)
downloadgit-cc00e5ce6b50cf4197e137b87a33209568b1e662.zip
git-cc00e5ce6b50cf4197e137b87a33209568b1e662.tar.gz
git-cc00e5ce6b50cf4197e137b87a33209568b1e662.tar.bz2
convert hashmap comparison functions to oideq()
The comparison functions used for hashmaps don't care about strict ordering; they only want to compare entries for equality. Let's use the oideq() function instead, which can potentially be better optimized. Note that unlike the previous patches mass-converting calls like "!oidcmp()", this patch could actually provide an improvement even with the current implementation. Those comparison functions are passed around as function pointers, so at compile-time the compiler cannot realize that the caller (which is in another file completely) will treat the return value as a boolean. Note that this does change the return values in quite a subtle way (it's still an int, but now the sign bit is irrelevant for ordering). Because of their funny hashmap-specific signature, it's unlikely that any of these static functions would be reused for more generic ordering. But to be double-sure, let's stop using "cmp" in their names. Calling them "eq" doesn't quite work either, because the hashmap convention is actually _inverted_. "0" means "same", and non-zero means "different". So I've called them "neq" by convention here. Signed-off-by: Jeff King <peff@peff.net> Signed-off-by: Junio C Hamano <gitster@pobox.com>
Diffstat (limited to 'repository.h')
0 files changed, 0 insertions, 0 deletions