X-Git-Url: http://git.megacz.com/?a=blobdiff_plain;f=includes%2FSMP.h;h=ac98feb7a3c2c7e55fd09e1567545ea9b3de2ee8;hb=d6a972fb003ab3a21011564c654487788ae7be55;hp=c851054cd90d3f2adc685a7d02756a32f83f8fca;hpb=a67183b75f1527edd88b071b879c2d07e8ac7653;p=ghc-hetmet.git diff --git a/includes/SMP.h b/includes/SMP.h index c851054..ac98feb 100644 --- a/includes/SMP.h +++ b/includes/SMP.h @@ -179,7 +179,7 @@ write_barrier(void) { #elif powerpc_HOST_ARCH __asm__ __volatile__ ("lwsync" : : : "memory"); #elif sparc_HOST_ARCH - /* Sparc in TSO mode does not require write/write barriers. */ + /* Sparc in TSO mode does not require store/store barriers. */ __asm__ __volatile__ ("" : : : "memory"); #elif !defined(WITHSMP) return; @@ -195,10 +195,9 @@ store_load_barrier(void) { #elif x86_64_HOST_ARCH __asm__ __volatile__ ("lock; addq $0,0(%%rsp)" : : : "memory"); #elif powerpc_HOST_ARCH - __asm__ __volatile__ ("msync" : : : "memory"); + __asm__ __volatile__ ("sync" : : : "memory"); #elif sparc_HOST_ARCH - /* Sparc in TSO mode does not require write/write barriers. */ - __asm__ __volatile__ ("membar" : : : "memory"); + __asm__ __volatile__ ("membar #StoreLoad" : : : "memory"); #elif !defined(WITHSMP) return; #else @@ -215,7 +214,7 @@ load_load_barrier(void) { #elif powerpc_HOST_ARCH __asm__ __volatile__ ("lwsync" : : : "memory"); #elif sparc_HOST_ARCH - /* Sparc in TSO mode does not require write/write barriers. */ + /* Sparc in TSO mode does not require load/load barriers. */ __asm__ __volatile__ ("" : : : "memory"); #elif !defined(WITHSMP) return;