changeset 935:db8e718447f1

use light-weight sync on ppc64
author Igor Sysoev <igor@sysoev.ru>
date Tue, 19 Dec 2006 15:23:20 +0000
parents 4745e72044fb
children 2864303e0ce5
files src/os/unix/ngx_gcc_atomic_ppc.h
diffstat 1 files changed, 10 insertions(+), 2 deletions(-) [+]
line wrap: on
line diff
--- a/src/os/unix/ngx_gcc_atomic_ppc.h
+++ b/src/os/unix/ngx_gcc_atomic_ppc.h
@@ -67,6 +67,13 @@ ngx_atomic_fetch_add(ngx_atomic_t *value
     return res;
 }
 
+
+#if (NGX_SMP)
+#define ngx_memory_barrier()   __asm__ volatile ("lwsync\n" ::: "memory")
+#else
+#define ngx_memory_barrier()   __asm__ volatile ("" ::: "memory")
+#endif
+
 #else
 
 static ngx_inline ngx_atomic_uint_t
@@ -117,8 +124,6 @@ ngx_atomic_fetch_add(ngx_atomic_t *value
     return res;
 }
 
-#endif
-
 
 #if (NGX_SMP)
 #define ngx_memory_barrier()   __asm__ volatile ("sync\n" ::: "memory")
@@ -126,4 +131,7 @@ ngx_atomic_fetch_add(ngx_atomic_t *value
 #define ngx_memory_barrier()   __asm__ volatile ("" ::: "memory")
 #endif
 
+#endif
+
+
 #define ngx_cpu_pause()