|
diff -dur xc/programs/Xserver/fb/fbmmx.c src.xorg.1129808283.2035.3041395841/xc/programs/Xserver/fb/fbmmx.c
|
|
--- xc/programs/Xserver/fb/fbmmx.c 2004-07-22 21:24:50.000000000 +0200
|
|
+++ src.xorg.1129808283.2035.3041395841/xc/programs/Xserver/fb/fbmmx.c 2005-10-20 21:26:33.000000000 +0200
|
|
@@ -33,11 +33,28 @@
|
|
#include "mipict.h"
|
|
#include "fbpict.h"
|
|
|
|
+#if __GNUC__ > 3 || (__GNUC__ == 3 && __GNUC_MINOR__ >= 5)
|
|
+
|
|
+typedef int __attribute__((mode(QI))) qi;
|
|
+typedef int __attribute__((mode(HI))) hi;
|
|
+typedef int __attribute__((mode(SI))) si;
|
|
+typedef int __attribute__((mode(DI))) di;
|
|
+
|
|
+typedef di __attribute__((vector_size (8))) Vector1x64;
|
|
+typedef si __attribute__((vector_size (8))) Vector2x32;
|
|
+typedef hi __attribute__((vector_size (8))) Vector4x16;
|
|
+typedef qi __attribute__((vector_size (8))) Vector8x8;
|
|
+
|
|
+# else
|
|
+
|
|
typedef int Vector1x64 __attribute__ ((mode(DI)));
|
|
typedef int Vector2x32 __attribute__ ((mode(V2SI)));
|
|
typedef int Vector4x16 __attribute__ ((mode(V4HI)));
|
|
typedef int Vector8x8 __attribute__ ((mode(V8QI)));
|
|
|
|
+#endif
|
|
+
|
|
+
|
|
typedef unsigned long long ullong;
|
|
|
|
#define noVERBOSE
|
|
@@ -92,9 +109,21 @@
|
|
shift (Vector1x64 v, int s)
|
|
{
|
|
if (s > 0)
|
|
+
|
|
+#if __GNUC__ > 3 || (__GNUC__ == 3 && __GNUC_MINOR__ >= 5)
|
|
+
|
|
+ return (Vector2x32) __builtin_ia32_psllq ((long long) v, (long long) s);
|
|
+ else if (s < 0)
|
|
+ return (Vector2x32) __builtin_ia32_psrlq ((long long) v, (long long) -s);
|
|
+
|
|
+#else
|
|
+
|
|
return __builtin_ia32_psllq (v, s);
|
|
else if (s < 0)
|
|
return __builtin_ia32_psrlq (v, -s);
|
|
+
|
|
+#endif
|
|
+
|
|
else
|
|
return v;
|
|
}
|
|
--- xc/programs/Xserver/hw/xfree86/drivers/ati/radeon_probe.h~ 2004-08-03 11:38:03.000000000 +0200
|
|
+++ xc/programs/Xserver/hw/xfree86/drivers/ati/radeon_probe.h 2005-11-17 12:22:21.000000000 +0100
|
|
@@ -146,7 +146,7 @@
|
|
extern Bool RADEONProbe
|
|
FunctionPrototype((DriverPtr, int));
|
|
|
|
-extern SymTabRec RADEONChipsets[];
|
|
+static SymTabRec RADEONChipsets[];
|
|
extern PciChipsets RADEONPciChipsets[];
|
|
|
|
/* radeon_driver.c */
|