From: Øyvind Kolås Date: Wed, 26 Jan 2022 11:23:37 +0000 (+0100) Subject: babl: make unified alpha conversion branchless X-Git-Tag: archive/raspbian/1%0.1.106-3+rpi1^2~15^2~4^2~20 X-Git-Url: https://dgit.raspbian.org/?a=commitdiff_plain;h=73df0c4d338f8dae7fe7ecb966307fd88065179b;p=babl.git babl: make unified alpha conversion branchless --- diff --git a/babl/base/util.h b/babl/base/util.h index aba9c61..9f46211 100644 --- a/babl/base/util.h +++ b/babl/base/util.h @@ -50,23 +50,17 @@ static inline double babl_epsilon_for_zero (double value) { - if (value <= BABL_ALPHA_FLOOR && - value >= -BABL_ALPHA_FLOOR) - { - return BABL_ALPHA_FLOOR; - } - return value; + return value * (value > BABL_ALPHA_FLOOR || value < -BABL_ALPHA_FLOOR) + + BABL_ALPHA_FLOOR * (value <= BABL_ALPHA_FLOOR && + value >= -BABL_ALPHA_FLOOR); } static inline float babl_epsilon_for_zero_float (float value) { - if (value <= BABL_ALPHA_FLOOR_F && - value >= -BABL_ALPHA_FLOOR_F) - { - return BABL_ALPHA_FLOOR_F; - } - return value; + return value * (value > BABL_ALPHA_FLOOR_F || value < -BABL_ALPHA_FLOOR_F) + + BABL_ALPHA_FLOOR * (value <= BABL_ALPHA_FLOOR_F && + value >= -BABL_ALPHA_FLOOR_F); }