freebsd-ports/www/libxul/files/patch-js-src-jslock.cpp
Beat Gaetzi ab0a516e66 - Update to 1.9.2.8
PR:		ports/149044
Expr-run by:	pav@
Thanks to:	Andreas Tobler <andreast-list AT fgznet.ch>, decke@
2010-08-08 08:56:06 +00:00

18 lines
659 B
C++

--- js/src/jslock.cpp.orig 2009-10-07 20:15:38.000000000 +0200
+++ js/src/jslock.cpp 2009-10-07 21:36:14.000000000 +0200
@@ -160,8 +160,13 @@
unsigned int res;
__asm__ __volatile__ (
- "stbar\n"
- "cas [%1],%2,%3\n"
+ "membar #StoreLoad | #LoadLoad\n"
+# if defined (__sparc64__)
+ "casx [%1],%2,%3\n"
+# else
+ "cas [%1],%2,%3\n" /* 32-bit version */
+# endif
+ "membar #StoreLoad | #LoadLoad\n"
"cmp %2,%3\n"
"be,a 1f\n"
"mov 1,%0\n"