svn commit: r200497 -
stable/8/contrib/bind9/lib/isc/ia64/include/isc
Marcel Moolenaar
marcel at FreeBSD.org
Sun Dec 13 17:10:05 PST 2009
Author: marcel
Date: Mon Dec 14 01:10:05 2009
New Revision: 200497
URL: http://svn.freebsd.org/changeset/base/200497
Log:
MFC rev 200202:
Fix Read-After-Write (RAW) dependency violation for ar.ccv in
isc_atomic_xadd() and isc_atomic_cmpxchg().
Approved by: dougb@
Modified:
stable/8/contrib/bind9/lib/isc/ia64/include/isc/atomic.h
Directory Properties:
stable/8/contrib/bind9/ (props changed)
Modified: stable/8/contrib/bind9/lib/isc/ia64/include/isc/atomic.h
==============================================================================
--- stable/8/contrib/bind9/lib/isc/ia64/include/isc/atomic.h Mon Dec 14 01:06:55 2009 (r200496)
+++ stable/8/contrib/bind9/lib/isc/ia64/include/isc/atomic.h Mon Dec 14 01:10:05 2009 (r200497)
@@ -41,7 +41,7 @@ isc_atomic_xadd(isc_int32_t *p, isc_int3
for (prev = *(volatile isc_int32_t *)p; ; prev = swapped) {
swapped = prev + val;
__asm__ volatile(
- "mov ar.ccv=%2;"
+ "mov ar.ccv=%2;;"
"cmpxchg4.acq %0=%4,%3,ar.ccv"
: "=r" (swapped), "=m" (*p)
: "r" (prev), "r" (swapped), "m" (*p)
@@ -84,7 +84,7 @@ isc_atomic_cmpxchg(isc_int32_t *p, isc_i
isc_int32_t ret;
__asm__ volatile(
- "mov ar.ccv=%2;"
+ "mov ar.ccv=%2;;"
"cmpxchg4.acq %0=%4,%3,ar.ccv"
: "=r" (ret), "=m" (*p)
: "r" (cmpval), "r" (val), "m" (*p)
More information about the svn-src-stable-8
mailing list