view tremor/tremor.diff @ 22697:2fe9bd97a7f6

Fix configure -march detection for athlon-xp The configure script uses SSE support to distinguish between athlon and athlon-xp, but SSE support was tested _after_ deciding the basic CPU type. Thus athlon-xp was always misdetected as athlon. Fix this by moving the CPU extensions check before the CPU type check. Patch from Andrew Savchenko, bircoph list ru.
author uau
date Sun, 18 Mar 2007 13:38:55 +0000
parents fb837e2ab413
children deb3d1cc2852
line wrap: on
line source

diff -ur orig/misc.h mod-2004-01-05/misc.h
--- misc.h	2005-01-04 16:29:01.000000000 +0100
+++ misc.h	2004-12-30 13:09:20.000000000 +0100
@@ -29,8 +29,9 @@
 /* 64 bit multiply */
 
 #include <sys/types.h>
+#include "config.h"
 
-#if BYTE_ORDER==LITTLE_ENDIAN
+#ifndef WORDS_BIGENDIAN
 union magic {
   struct {
     ogg_int32_t lo;
@@ -38,9 +39,7 @@
   } halves;
   ogg_int64_t whole;
 };
-#endif 
-
-#if BYTE_ORDER==BIG_ENDIAN
+#else
 union magic {
   struct {
     ogg_int32_t hi;
diff -ur orig/os_types.h mod-2004-01-05/os_types.h
--- os_types.h	2005-01-04 16:29:02.000000000 +0100
+++ os_types.h	2005-01-05 10:39:07.000000000 +0100
@@ -32,57 +32,11 @@
 #define _ogg_realloc realloc
 #define _ogg_free    free
 
-#ifdef _WIN32 
-
-#  ifndef __GNUC__
-   /* MSVC/Borland */
-   typedef __int64 ogg_int64_t;
-   typedef __int32 ogg_int32_t;
-   typedef unsigned __int32 ogg_uint32_t;
-   typedef __int16 ogg_int16_t;
-#  else
-   /* Cygwin */
-   #include <_G_config.h>
-   typedef _G_int64_t ogg_int64_t;
-   typedef _G_int32_t ogg_int32_t;
-   typedef _G_uint32_t ogg_uint32_t;
-   typedef _G_int16_t ogg_int16_t;
-#  endif
-
-#elif defined(__MACOS__)
-
-#  include <sys/types.h>
-   typedef SInt16 ogg_int16_t;
-   typedef SInt32 ogg_int32_t;
-   typedef UInt32 ogg_uint32_t;
-   typedef SInt64 ogg_int64_t;
-
-#elif defined(__MACOSX__) /* MacOS X Framework build */
-
-#  include <sys/types.h>
-   typedef int16_t ogg_int16_t;
-   typedef int32_t ogg_int32_t;
-   typedef u_int32_t ogg_uint32_t;
+   #include <inttypes.h>
    typedef int64_t ogg_int64_t;
-
-#elif defined(__BEOS__)
-
-   /* Be */
-#  include <inttypes.h>
-
-#elif defined (__EMX__)
-
-   /* OS/2 GCC */
-   typedef short ogg_int16_t;
-   typedef int ogg_int32_t;
-   typedef unsigned int ogg_uint32_t;
-   typedef long long ogg_int64_t;
-
-#else
-
-#  include <sys/types.h>
-#  include "config_types.h"
-
-#endif
+   typedef int32_t ogg_int32_t;
+   typedef uint32_t ogg_uint32_t;
+   typedef uint16_t ogg_uint16_t;
+   typedef int16_t ogg_int16_t;
 
 #endif  /* _OS_TYPES_H */
Index: sharedbook.c
===================================================================
RCS file: /cvsroot/mplayer/main/tremor/sharedbook.c,v
retrieving revision 1.1
diff -u -r1.1 sharedbook.c
--- sharedbook.c	30 Dec 2004 12:09:20 -0000	1.1
+++ sharedbook.c	18 Aug 2005 16:13:54 -0000
@@ -208,7 +211,7 @@
 	  int indexdiv=1;
 	  for(k=0;k<b->dim;k++){
 	    int index= (j/indexdiv)%quantvals;
-	    int point;
+	    ogg_int32_t point;
 	    int val=VFLOAT_MULTI(delta,delpoint,
 				 abs(b->quantlist[index]),&point);
 
@@ -242,7 +245,7 @@
 	  int         lastpoint=0;
 
 	  for(k=0;k<b->dim;k++){
-	    int point;
+	    ogg_int32_t point;
 	    int val=VFLOAT_MULTI(delta,delpoint,
 				 abs(b->quantlist[j*b->dim+k]),&point);