]> granicus.if.org Git - postgresql/commitdiff
Fix for NS32K machine.
authorBruce Momjian <bruce@momjian.us>
Fri, 18 Sep 1998 05:36:24 +0000 (05:36 +0000)
committerBruce Momjian <bruce@momjian.us>
Fri, 18 Sep 1998 05:36:24 +0000 (05:36 +0000)
src/backend/storage/buffer/s_lock.c
src/include/storage/s_lock.h

index 114cb9ec20f0909a089bfce5c1a34c8a4838dc0e..c50c9612bdb63441dbcfa099442b50d27d3579b3 100644 (file)
@@ -7,7 +7,7 @@
  *
  *
  * IDENTIFICATION
- *       $Header: /cvsroot/pgsql/src/backend/storage/buffer/Attic/s_lock.c,v 1.10 1998/09/03 02:14:39 momjian Exp $
+ *       $Header: /cvsroot/pgsql/src/backend/storage/buffer/Attic/s_lock.c,v 1.11 1998/09/18 05:36:23 momjian Exp $
  *
  *-------------------------------------------------------------------------
  */
@@ -118,6 +118,17 @@ success:                   \n\
 #endif  /* PPC */
 
 
+#if defined(__ns32k__)
+int
+tas(volatile slock_t *lock)
+{
+  int res;
+  __asm__("sbitb 0, %0" : "=m"(*lock));
+  __asm__("sprb us, %0" : "=r"(res));
+  res = (res >> 5) & 1;
+  return res;
+}
+#endif
 
 #else                                                  /* defined(__GNUC__) */
 /***************************************************************************
index e835762f2082aa1dbef85d140945c95dcb4373e7..967ec432cd1db9d1f1323e29b40e884542c1a9c8 100644 (file)
@@ -7,7 +7,7 @@
  *
  *
  * IDENTIFICATION
- *       $Header: /cvsroot/pgsql/src/include/storage/s_lock.h,v 1.47 1998/09/12 16:07:53 momjian Exp $
+ *       $Header: /cvsroot/pgsql/src/include/storage/s_lock.h,v 1.48 1998/09/18 05:36:24 momjian Exp $
  *
  *-------------------------------------------------------------------------
  */
@@ -213,22 +213,7 @@ tas(slock_t *s_lock)
 #endif  /* NEED_I386_TAS_ASM */
 
 
-
-#if defined(NEED_NS32K_TAS_ASM)
-
-#define S_LOCK(lock)                           \
-{                                              \
-       slock_t res = 1;                                \
-       while (res) {                           \
-         __asm__("movqd 0, r0");                       \
-         __asm__("sbitd r0, %0" : "=m"(*lock));        \
-         __asm__("sprb us, %0" : "=r" (res));  \
-         res = ((res >> 5) & 1);                       \
-       }                                               \
-}
-
-#endif  /* NEED_NS32K_TAS_ASM */
-
+/* NS32K code is in s_lock.c */
 
 #endif  /* defined(__GNUC__) */