You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
45 lines
1.5 KiB
45 lines
1.5 KiB
9 years ago
|
diff -ru crafty-24.1.org/lock.h crafty-24.1/lock.h
|
||
|
--- crafty-24.1.org/lock.h 2015-03-10 16:24:09.064539177 +0100
|
||
|
+++ crafty-24.1/lock.h 2015-03-10 17:45:37.675995497 +0100
|
||
|
@@ -42,6 +42,7 @@
|
||
|
* *
|
||
|
*******************************************************************************
|
||
|
*/
|
||
|
+# if defined(__i386__) || defined(__amd64__)
|
||
|
static void __inline__ LockX86(volatile int *lock) {
|
||
|
int dummy;
|
||
|
asm __volatile__(
|
||
|
@@ -71,17 +72,26 @@
|
||
|
:"memory");
|
||
|
}
|
||
|
|
||
|
-# define LockInit(p) (p=0)
|
||
|
-# define LockFree(p) (p=0)
|
||
|
-# define Unlock(p) (UnlockX86(&p))
|
||
|
-# define Lock(p) (LockX86(&p))
|
||
|
-# define lock_t volatile int
|
||
|
-# endif
|
||
|
+# define LockInit(p) (p=0)
|
||
|
+# define LockFree(p) (p=0)
|
||
|
+# define Unlock(p) (UnlockX86(&p))
|
||
|
+# define Lock(p) (LockX86(&p))
|
||
|
+# define lock_t volatile int
|
||
|
+# else /* Not building for x86 or amd64 platforms */
|
||
|
+# define LockInit(p)
|
||
|
+# define LockFree(p)
|
||
|
+# define Lock(p)
|
||
|
+# define Unlock(p)
|
||
|
+# define Pause()
|
||
|
+# define lock_t volatile int
|
||
|
+# endif /* x86 && amd64 platforms or rest of the world. */
|
||
|
+# endif /* SMP code */
|
||
|
#else
|
||
|
# define LockInit(p)
|
||
|
# define LockFree(p)
|
||
|
# define Lock(p)
|
||
|
# define Unlock(p)
|
||
|
+# define Pause()
|
||
|
# define lock_t volatile int
|
||
|
#endif /* SMP code */
|
||
|
/* *INDENT-ON* */
|