From 956f8acd6cf6ce33193a679c7f34c1f71db5c94a Mon Sep 17 00:00:00 2001 From: Ulrich Drepper Date: Thu, 17 Jan 2002 00:50:24 +0000 Subject: Update. 2002-01-16 Martin Schwidefsky * sysdeps/s390/s390-32/pt-machine.h (MEMORY_BARRIER): Define. (CURRENT_STACK_FRAME): Remove duplicate definition. * sysdeps/s390/s390-64/pt-machine.h: Likewise. --- linuxthreads/ChangeLog | 6 ++++++ linuxthreads/sysdeps/s390/s390-32/pt-machine.h | 11 +++++------ linuxthreads/sysdeps/s390/s390-64/pt-machine.h | 11 +++++------ 3 files changed, 16 insertions(+), 12 deletions(-) (limited to 'linuxthreads') diff --git a/linuxthreads/ChangeLog b/linuxthreads/ChangeLog index aa115ee..a8a98e8 100644 --- a/linuxthreads/ChangeLog +++ b/linuxthreads/ChangeLog @@ -1,3 +1,9 @@ +2002-01-16 Martin Schwidefsky + + * sysdeps/s390/s390-32/pt-machine.h (MEMORY_BARRIER): Define. + (CURRENT_STACK_FRAME): Remove duplicate definition. + * sysdeps/s390/s390-64/pt-machine.h: Likewise. + 2002-01-14 Martin Schwidefsky * Makefile (CFLAGS-tst-cancel.c): Add -fno-inline-functions to prevent diff --git a/linuxthreads/sysdeps/s390/s390-32/pt-machine.h b/linuxthreads/sysdeps/s390/s390-32/pt-machine.h index 3afc9d5..f84ccdf 100644 --- a/linuxthreads/sysdeps/s390/s390-32/pt-machine.h +++ b/linuxthreads/sysdeps/s390/s390-32/pt-machine.h @@ -23,6 +23,11 @@ # define PT_EI extern inline #endif +/* For multiprocessor systems, we want to ensure all memory accesses + are completed before we reset a lock. On other systems, we still + need to make sure that the compiler has flushed everything to memory. */ +#define MEMORY_BARRIER() __asm__ __volatile__ ("bcr 15,0" : : : "memory") + /* Spinlock implementation; required. */ PT_EI long int testandset (int *spinlock) @@ -94,9 +99,3 @@ __compare_and_swap(long int *p, long int oldval, long int newval) return retval == 0; } - - -/* Get some notion of the current stack. Need not be exactly the top - of the stack, just something somewhere in the current frame. */ -#define CURRENT_STACK_FRAME stack_pointer -register char * stack_pointer __asm__ ("%r15"); diff --git a/linuxthreads/sysdeps/s390/s390-64/pt-machine.h b/linuxthreads/sysdeps/s390/s390-64/pt-machine.h index f205c12..8b12335 100644 --- a/linuxthreads/sysdeps/s390/s390-64/pt-machine.h +++ b/linuxthreads/sysdeps/s390/s390-64/pt-machine.h @@ -23,6 +23,11 @@ # define PT_EI extern inline #endif +/* For multiprocessor systems, we want to ensure all memory accesses + are completed before we reset a lock. On other systems, we still + need to make sure that the compiler has flushed everything to memory. */ +#define MEMORY_BARRIER() __asm__ __volatile__ ("bcr 15,0" : : : "memory") + /* Spinlock implementation; required. */ PT_EI long int testandset (int *spinlock) @@ -99,9 +104,3 @@ __compare_and_swap(long int *p, long int oldval, long int newval) return retval == 0; } - - -/* Get some notion of the current stack. Need not be exactly the top - of the stack, just something somewhere in the current frame. */ -#define CURRENT_STACK_FRAME stack_pointer -register char * stack_pointer __asm__ ("%r15"); -- cgit v1.1