svn commit: r312932 - head/sys/arm/include

Olivier Houchard cognet at FreeBSD.org
Sat Jan 28 17:46:06 UTC 2017


Author: cognet
Date: Sat Jan 28 17:46:04 2017
New Revision: 312932
URL: https://svnweb.freebsd.org/changeset/base/312932

Log:
  Use strexeq instead of needlessly branch.
  
  Suggested by:	ian

Modified:
  head/sys/arm/include/atomic-v6.h

Modified: head/sys/arm/include/atomic-v6.h
==============================================================================
--- head/sys/arm/include/atomic-v6.h	Sat Jan 28 17:40:37 2017	(r312931)
+++ head/sys/arm/include/atomic-v6.h	Sat Jan 28 17:46:04 2017	(r312932)
@@ -201,9 +201,8 @@ atomic_fcmpset_32(volatile uint32_t *p, 
 	    "1: mov 	%0, #1		\n"
 	    "   ldrex	%1, [%2]	\n"
 	    "   cmp	%1, %3		\n"
-	    "   it	ne		\n"
-	    "   bne	2f		\n"
-	    "   strex	%0, %4, [%2]	\n"
+	    "   it	eq		\n"
+	    "   strexeq	%0, %4, [%2]	\n"
 	    "2:"
 	    : "=&r" (ret), "=&r" (tmp), "+r" (p), "+r" (_cmpval), "+r" (newval)
 	    : : "cc", "memory");


More information about the svn-src-head mailing list