diff --git a/libjava/ChangeLog b/libjava/ChangeLog index 2c0a0f7c11e..16c457b3f99 100644 --- a/libjava/ChangeLog +++ b/libjava/ChangeLog @@ -1,3 +1,7 @@ +2007-01-22 Andrew Haley + + * sysdep/alpha/locks.h (write_barrier): New. + 2007-01-21 Matthias Klose * Makefile.am (install-exec-hook): Use transformed name. diff --git a/libjava/sysdep/alpha/locks.h b/libjava/sysdep/alpha/locks.h index 1c20249cce3..c5f7f4993e6 100644 --- a/libjava/sysdep/alpha/locks.h +++ b/libjava/sysdep/alpha/locks.h @@ -50,4 +50,12 @@ compare_and_swap_release(volatile obj_addr_t *addr, return compare_and_swap(addr, old, new_val); } +// Ensure that prior stores to memory are completed with respect to other +// processors. +inline static void +write_barrier() +{ + __asm__ __volatile__("wmb" : : : "memory"); +} + #endif