Mesa (master): mesa: fix a couple issues with U_FIXED, I_FIXED macros

Brian Paul brianp at kemper.freedesktop.org
Tue Oct 22 14:33:00 UTC 2013


Module: Mesa
Branch: master
Commit: f0d4636d9c4098fd7ccc533258e7a5173e98d847
URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=f0d4636d9c4098fd7ccc533258e7a5173e98d847

Author: Brian Paul <brianp at vmware.com>
Date:   Sat Oct 19 08:21:38 2013 -0600

mesa: fix a couple issues with U_FIXED, I_FIXED macros

Silence a bunch of MSVC type conversion warnings.

Changed return type of S_FIXED to int32_t (signed).  The result
is the same.  It just seems more intuitive that a signed conversion
function should return a signed value.

Reviewed-by: Jose Fonseca <jfonseca at vmware.com>

---

 src/mesa/main/macros.h |    6 +++---
 1 files changed, 3 insertions(+), 3 deletions(-)

diff --git a/src/mesa/main/macros.h b/src/mesa/main/macros.h
index 880c656..379f756 100644
--- a/src/mesa/main/macros.h
+++ b/src/mesa/main/macros.h
@@ -193,7 +193,7 @@ static INLINE uint32_t
 U_FIXED(float value, uint32_t frac_bits)
 {
    value *= (1 << frac_bits);
-   return value < 0 ? 0 : value;
+   return value < 0.0f ? 0 : (uint32_t) value;
 }
 
 /**
@@ -201,10 +201,10 @@ U_FIXED(float value, uint32_t frac_bits)
  *
  * \param frac_bits   The number of bits used to store the fractional part.
  */
-static INLINE uint32_t
+static INLINE int32_t
 S_FIXED(float value, uint32_t frac_bits)
 {
-   return value * (1 << frac_bits);
+   return (int32_t) (value * (1 << frac_bits));
 }
 /*@}*/
 




More information about the mesa-commit mailing list