|
@@ -36,10 +36,10 @@ testandset (int *spinlock)
|
|
|
char ret;
|
|
|
|
|
|
__asm__ __volatile__(
|
|
|
-#ifdef __mcf5200__
|
|
|
- "bset #7,%1; sne %0"
|
|
|
-#else
|
|
|
+#if !defined(__mcf5200__) && !defined(__m68000)
|
|
|
"tas %1; sne %0"
|
|
|
+#else
|
|
|
+ "bset #7,%1; sne %0"
|
|
|
#endif
|
|
|
: "=dm"(ret), "=m"(*spinlock)
|
|
|
: "m"(*spinlock)
|
|
@@ -57,7 +57,7 @@ register char * stack_pointer __asm__ ("%sp");
|
|
|
|
|
|
/* Compare-and-swap for semaphores. */
|
|
|
|
|
|
-#ifndef __mcf5200__
|
|
|
+#if !defined(__mcf5200__) && !defined(__mc68000)
|
|
|
#define HAS_COMPARE_AND_SWAP
|
|
|
PT_EI int
|
|
|
__compare_and_swap (long int *p, long int oldval, long int newval)
|