| 123456789101112131415161718192021222324252627282930313233343536373839404142 | 	Fix for lemote.--- libdrm-2.4.20.orig/xf86drm.h	2010-03-06 00:21:13.000000000 +0100+++ libdrm-2.4.20/xf86drm.h	2010-06-12 20:43:01.324916826 +0200@@ -374,6 +374,29 @@ typedef struct _drmSetVersion { 		: "memory");			\ 	} while (0) +#elif defined(__mips__)++#define DRM_CAS(lock, old, new, ret)            \+	do {                                    \+		__asm__ __volatile__(           \+		"	.set mips3;.set noreorder;\n" \+		"	sync; \n"               \+		"	ll   %1, %0;\n"         \+		"	bne  %1, %2, 1f;\n"     \+		"	 li   %1, 1; \n"        \+		"	move %1, %3; \n"        \+		"	sc    %1, %0;\n"        \+		"	xori   %1, %1, 1\n"     \+		"1:	\n"                     \+		"	.set mips0; .set reorder;\n" \+		: "=m" (__drm_dummy_lock(lock)),\+		  "=&r" (ret)                   \+		: "r" (old),                    \+		  "r" (new)                     \+		: "memory","$8"                 \+		);                              \+	} while(0)+ #elif defined(__sparc__)  #define DRM_CAS(lock,old,new,__ret)				\@@ -457,7 +480,7 @@ do {	register unsigned int __old __asm("  #if defined(__alpha__) #define DRM_CAS_RESULT(_result)		long _result-#elif defined(__powerpc__)+#elif defined(__powerpc__) || defined(__mips__) #define DRM_CAS_RESULT(_result)		int _result #else #define DRM_CAS_RESULT(_result)		char _result
 |