From: Paul Eggert Date: Wed, 25 May 2022 18:23:39 +0000 (-0700) Subject: sort: tune diff_reversed X-Git-Tag: v9.2~188 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=9104dad18b1d2587f475baea1b32ebd51bf0d6f6;p=thirdparty%2Fcoreutils.git sort: tune diff_reversed * src/sort.c (diff_reversed): Tune. On x86-64 with GCC, this saves a conditional branch and shortens the generated machine code. --- diff --git a/src/sort.c b/src/sort.c index 0cd22f9313..0a6b557ac9 100644 --- a/src/sort.c +++ b/src/sort.c @@ -2607,7 +2607,7 @@ key_warnings (struct keyfield const *gkey, bool gkey_only) static int diff_reversed (int diff, bool reversed) { - return reversed ? (diff < 0 ? 1 : -diff) : diff; + return reversed ? (diff < 0) - (diff > 0) : diff; } /* Compare two lines A and B trying every key in sequence until there