1 --- Glide_VG-2.46/sst1/init/initvg/sst1init.h.orig 1999-11-29 20:48:02.000000000 +0100
2 +++ Glide_VG-2.46/sst1/init/initvg/sst1init.h 2004-01-18 11:13:11.026782482 +0100
5 #define P6FENCE {_asm xchg eax, p6FenceVar}
7 -#elif defined(__GNUC__)
9 +#elif defined(__GNUC__) && defined(__i386__)
10 #define P6FENCE asm("xchg %%eax,%0" \
16 +#elif defined(__ia64__)
17 +#define P6FENCE asm volatile ("mf.a" ::: "memory");
18 +#elif defined(__alpha__)
19 +# define P6FENCE asm volatile("mb" ::: "memory");
20 +#elif defined(__powerpc__)
21 +# define P6FENCE asm volatile ("sync" ::: "memory");
22 +#elif defined (__x86_64__)
23 +# define P6FENCE asm volatile("mfence" ::: "memory");
24 +#elif defined(__sparc64__)
25 +# define P6FENCE asm volatile("membar #LoadLoad | #LoadStore | #StoreStore | #StoreLoad" ::: "memory");
26 +#elif defined(__sparc__)
27 +# define P6FENCE asm volatile("" ::: "memory");
29 #error "P6 Fencing in-line assembler code needs to be added for this compiler"
31 --- Glide_VG-2.46/swlibs/fxpci/pcilib/fxpci.c.orig 1999-11-29 20:48:02.000000000 +0100
32 +++ Glide_VG-2.46/swlibs/fxpci/pcilib/fxpci.c 2004-01-18 11:00:53.731282699 +0100
41 --- Glide_VG-2.46/swlibs/fxpci/pcilib/fxlinux.c.orig 1999-11-29 20:48:02.000000000 +0100
42 +++ Glide_VG-2.46/swlibs/fxpci/pcilib/fxlinux.c 2004-01-18 11:04:05.617826712 +0100
46 #include <sys/ioctl.h>
48 +#if defined(__powerpc__) || defined(__sparc__)
62 --- Glide_VG-2.46/sst1/glide/src/cpudetect.c.orig 1999-11-29 20:48:01.000000000 +0100
63 +++ Glide_VG-2.46/sst1/glide/src/cpudetect.c 2004-01-18 11:21:11.005578980 +0100
67 int _cpu_detect_asm() {
73 if (!strcmp(name.machine, "i686")) return 6;
74 fprintf(stderr, "Couldn't determine cpu type. Using i586\n");
81 void single_precision_asm() {
83 asm("push %eax \n fnclex \n fstcw (%esp) \n movl (%esp), %eax \n "
84 "and $0x0000fcff, %eax \n movl %eax, (%esp) \n fldcw (%esp) \n pop %eax");
89 void double_precision_asm() {
91 asm("push %eax \n fnclex \n fstcw (%esp) \n movw (%esp), %eax \n "
92 "and $0x0000fcff, %eax \n or $0x000002ff, %eax \n mov %eax, (%esp) \n "
93 "fldcw (%esp) \n pop %eax");