| @@ -249,27 +249,27 @@ static inline GLint64 IROUND64(float f) | | | @@ -249,27 +249,27 @@ static inline GLint64 IROUND64(float f) |
249 | return (GLint64) ((f >= 0.0F) ? (f + 0.5F) : (f - 0.5F)); | | 249 | return (GLint64) ((f >= 0.0F) ? (f + 0.5F) : (f - 0.5F)); |
250 | } | | 250 | } |
251 | | | 251 | |
252 | | | 252 | |
253 | /** | | 253 | /** |
254 | * Convert positive float to int by rounding to nearest integer. | | 254 | * Convert positive float to int by rounding to nearest integer. |
255 | */ | | 255 | */ |
256 | static inline int IROUND_POS(float f) | | 256 | static inline int IROUND_POS(float f) |
257 | { | | 257 | { |
258 | assert(f >= 0.0F); | | 258 | assert(f >= 0.0F); |
259 | return (int) (f + 0.5F); | | 259 | return (int) (f + 0.5F); |
260 | } | | 260 | } |
261 | | | 261 | |
262 | #ifdef __GNUC__ | | 262 | #if !defined(__lint__) && !defined(__PCC__) |
263 | #ifdef __x86_64__ | | 263 | #ifdef __x86_64__ |
264 | # include <xmmintrin.h> | | 264 | # include <xmmintrin.h> |
265 | #endif | | 265 | #endif |
266 | #endif | | 266 | #endif |
267 | | | 267 | |
268 | /** | | 268 | /** |
269 | * Convert float to int using a fast method. The rounding mode may vary. | | 269 | * Convert float to int using a fast method. The rounding mode may vary. |
270 | */ | | 270 | */ |
271 | static inline int F_TO_I(float f) | | 271 | static inline int F_TO_I(float f) |
272 | { | | 272 | { |
273 | #if defined(USE_X86_ASM) && defined(__GNUC__) && defined(__i386__) | | 273 | #if defined(USE_X86_ASM) && defined(__GNUC__) && defined(__i386__) |
274 | int r; | | 274 | int r; |
275 | __asm__ ("fistpl %0" : "=m" (r) : "t" (f) : "st"); | | 275 | __asm__ ("fistpl %0" : "=m" (r) : "t" (f) : "st"); |