Files
pkgsrc-ng/net/ser/patches/patch-ac
2013-09-26 17:14:40 +02:00

31 lines
976 B
Plaintext

$NetBSD: patch-ac,v 1.1 2008/08/17 22:40:26 dholland Exp $
--- fastlock.h.orig 2008-08-17 18:36:52.000000000 -0400
+++ fastlock.h 2008-08-17 18:36:55.000000000 -0400
@@ -77,6 +77,11 @@ inline static int tsl(fl_lock_t* lock)
" xchg %b1, %0" : "=q" (val), "=m" (*lock) : "0" (val) : "memory"
);
#endif /*NOSMP*/
+#elif defined __CPU_amd64
+ val=1;
+ asm volatile(
+ " xchg %b1, %0" : "=q" (val), "=m" (*lock) : "0" (val) : "memory"
+ );
#elif defined __CPU_sparc64
asm volatile(
"ldstub [%1], %0 \n\t"
@@ -142,6 +147,13 @@ inline static void release_lock(fl_lock_
" movb $0, (%0)" : /*no output*/ : "r"(lock): "memory"
/*" xchg %b0, %1" : "=q" (val), "=m" (*lock) : "0" (val) : "memory"*/
);
+#elif defined __CPU_amd64
+ char val;
+ val=0;
+ asm volatile(
+ " movb $0, (%0)" : /*no output*/ : "r"(lock): "memory"
+ /*" xchg %b0, %1" : "=q" (val), "=m" (*lock) : "0" (val) : "memory"*/
+ );
#elif defined __CPU_sparc64
asm volatile(
#ifndef NOSMP