[babl] replace gamma functions with #defines
- From: Ãyvind KolÃs <ok src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [babl] replace gamma functions with #defines
- Date: Sun, 22 Apr 2012 23:59:13 +0000 (UTC)
commit fd11d181d043e56168572c08f932f6d0379615e3
Author: Ãyvind KolÃs <pippin gimp org>
Date: Mon Apr 23 01:53:27 2012 +0200
replace gamma functions with #defines
Causes some slight speedup across babl on less agressive optimization
levels.
babl/base/util.h | 15 ++++++++++-----
1 files changed, 10 insertions(+), 5 deletions(-)
---
diff --git a/babl/base/util.h b/babl/base/util.h
index a229894..a9d2049 100644
--- a/babl/base/util.h
+++ b/babl/base/util.h
@@ -67,20 +67,21 @@ static inline double xpow512 (double x)
}
+#if 0
static inline double
linear_to_gamma_2_2 (double value)
{
-#if 0
if (value > 0.0030402477F)
return 1.055F * pow (value, (1.0F/2.4F)) - 0.055F;
return 12.92F * value;
+}
#else
- if (value > 0.0030402477F)
- return 1.055F * xpow512 (value) - 0.055F;
- return 12.92F * value;
+
+#define linear_to_gamma_2_2(value) \
+ ((value > 0.0030402477F)? 1.055F * xpow512 (value) - 0.055F: 12.92F * value)
#endif
-}
+#if 0
static inline double
gamma_2_2_to_linear (double value)
{
@@ -88,6 +89,10 @@ gamma_2_2_to_linear (double value)
return pow ((value + 0.055F) / 1.055F, 2.4F);
return value / 12.92F;
}
+#else
+#define gamma_2_2_to_linear(value) \
+ ((value > 0.03928F) ? pow ((value + 0.055F) / 1.055F, 2.4F):value / 12.92F)
+#endif
#else
#define linear_to_gamma_2_2(value) (pow((value), (1.0F/2.2F)))
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]