aboutsummaryrefslogtreecommitdiff
path: root/libjava/sysdep/alpha
diff options
context:
space:
mode:
authorAndrew Haley <aph@redhat.com>2007-01-22 12:27:48 +0000
committerAndrew Haley <aph@gcc.gnu.org>2007-01-22 12:27:48 +0000
commit4d8f018e30914defc592def752dbf00af463611e (patch)
treeba69ce2d5df2735ab5c84c08d4f0cc63170b2b7c /libjava/sysdep/alpha
parent2f397a93c0b178cb905f5ce0de61c4ea94d5fa9a (diff)
downloadgcc-4d8f018e30914defc592def752dbf00af463611e.zip
gcc-4d8f018e30914defc592def752dbf00af463611e.tar.gz
gcc-4d8f018e30914defc592def752dbf00af463611e.tar.bz2
locks.h (write_barrier): New.
2007-01-22 Andrew Haley <aph@redhat.com> * sysdep/alpha/locks.h (write_barrier): New. From-SVN: r121053
Diffstat (limited to 'libjava/sysdep/alpha')
-rw-r--r--libjava/sysdep/alpha/locks.h8
1 files changed, 8 insertions, 0 deletions
diff --git a/libjava/sysdep/alpha/locks.h b/libjava/sysdep/alpha/locks.h
index 1c20249..c5f7f49 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