Introduce overflow-safe integer comparison functions.
commit6b80394781c8de17fe7cae6996476088af3c319f
authorNathan Bossart <nathan@postgresql.org>
Fri, 16 Feb 2024 19:37:02 +0000 (16 13:37 -0600)
committerNathan Bossart <nathan@postgresql.org>
Fri, 16 Feb 2024 19:37:02 +0000 (16 13:37 -0600)
treedb7b1a619634980a469d0714ffc80f6e89ab2b39
parent73f0a1326608ac3a7d390706fdeec59fe4dc42c0
Introduce overflow-safe integer comparison functions.

This commit adds integer comparison functions that are designed to
be as efficient as possible while avoiding overflow.  A follow-up
commit will make use of these functions in many of the in-tree
qsort() comparators.  The new functions are not better in all cases
(e.g., when the comparator function is inlined), so it is important
to consider the context before using them.

Author: Mats Kindahl
Reviewed-by: Tom Lane, Heikki Linnakangas, Andres Freund, Thomas Munro, Andrey Borodin, Fabrízio de Royes Mello
Discussion: https://postgr.es/m/CA%2B14426g2Wa9QuUpmakwPxXFWG_1FaY0AsApkvcTBy-YfS6uaw%40mail.gmail.com
src/include/common/int.h
src/include/lib/sort_template.h