gallium: replace 16BIT_TEMPS cap with 16BIT_CONSTS
[mesa.git] / src / mesa / math / m_debug_util.h
index 776c26475e7d58c294eb30e1129e679b01365402..4959785093e36def5e5fd2bfb73af0b1fda4e0fc 100644 (file)
@@ -1,6 +1,5 @@
 /*
  * Mesa 3-D graphics library
- * Version:  6.1
  *
  * Copyright (C) 1999-2004  Brian Paul   All Rights Reserved.
  *
  * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
  * OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
  * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.  IN NO EVENT SHALL
- * BRIAN PAUL BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN
- * AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
- * CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
+ * THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR
+ * OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE,
+ * ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
+ * OTHER DEALINGS IN THE SOFTWARE.
  *
  * Authors:
  *    Gareth Hughes
@@ -32,6 +32,9 @@
 #ifdef DEBUG_MATH  /* This code only used for debugging */
 
 
+#include "c99_math.h"
+
+
 /* Comment this out to deactivate the cycle counter.
  * NOTE: it works only on CPUs which know the 'rdtsc' command (586 or higher)
  * (hope, you don't try to debug Mesa on a 386 ;)
@@ -61,7 +64,7 @@ extern long counter_overhead;
  */
 extern char *mesa_profile;
 
-/* Modify the the number of tests if you like.
+/* Modify the number of tests if you like.
  * We take the minimum of all results, because every error should be
  * positive (time used by other processes, task switches etc).
  * It is assumed that all calculations are done in the cache.
@@ -185,7 +188,7 @@ extern char *mesa_profile;
 
 #endif
 
-#elif defined(__amd64__)
+#elif defined(__x86_64__)
 
 #define rdtscll(val) do { \
      unsigned int a,d; \
@@ -213,7 +216,7 @@ extern char *mesa_profile;
    x = LONG_MAX;                                                       \
    for ( cycle_i = 0 ; cycle_i < 10 ; cycle_i++ ) {                    \
       unsigned long cycle_tmp1, cycle_tmp2;                            \
-      rdtscll(cycle_tmp1);                                             \
+      rdtscll(cycle_tmp1);
 
 #define END_RACE(x)                                                    \
       rdtscll(cycle_tmp2);                                             \
@@ -231,8 +234,8 @@ extern char *mesa_profile;
 #define  BEGIN_RACE(x)                                                        \
 x = LONG_MAX;                                                                 \
 for (cycle_i = 0; cycle_i <10; cycle_i++) {                                   \
-   register long cycle_tmp1 asm("l0");                                       \
-   register long cycle_tmp2 asm("l1");                                       \
+   register long cycle_tmp1 __asm__("l0");                                   \
+   register long cycle_tmp2 __asm__("l1");                                   \
    /* rd %tick, %l0 */                                                       \
    __asm__ __volatile__ (".word 0xa1410000" : "=r" (cycle_tmp1));  /*  save timestamp   */
 
@@ -286,9 +289,9 @@ static int significand_match( GLfloat a, GLfloat b )
       return 0;
    }
 
-   FREXPF( a, &a_ex );
-   FREXPF( b, &b_ex );
-   FREXPF( d, &d_ex );
+   frexpf( a, &a_ex );
+   frexpf( b, &b_ex );
+   frexpf( d, &d_ex );
 
    if ( a_ex < b_ex ) {
       return a_ex - d_ex;
@@ -305,8 +308,6 @@ enum { NIL = 0, ONE = 1, NEG = -1, VAR = 2 };
 #  define ALIGN16(type, array) type array __attribute__ ((aligned (16)))
 #elif defined(_MSC_VER)
 #  define ALIGN16(type, array) type array __declspec(align(16)) /* GH: Does this work? */
-#elif defined(__WATCOMC__)
-#  define ALIGN16(type, array)                     /* Watcom does not support this */ 
 #elif defined(__xlC__)
 #  define ALIGN16(type, array)       type __align (16) array 
 #else