svn commit: r194110 - head/sys/i386/include

Ed Schouten ed at FreeBSD.org
Sat Jun 13 13:56:07 UTC 2009


Author: ed
Date: Sat Jun 13 13:56:06 2009
New Revision: 194110
URL: http://svn.freebsd.org/changeset/base/194110

Log:
  Simplify the inline assembler (and correct potential error) of pte_load_store().
  
  Submitted by:	Christoph Mallon

Modified:
  head/sys/i386/include/pmap.h

Modified: head/sys/i386/include/pmap.h
==============================================================================
--- head/sys/i386/include/pmap.h	Sat Jun 13 13:54:03 2009	(r194109)
+++ head/sys/i386/include/pmap.h	Sat Jun 13 13:56:06 2009	(r194110)
@@ -362,15 +362,8 @@ pte_load(pt_entry_t *ptep)
 static __inline pt_entry_t
 pte_load_store(pt_entry_t *ptep, pt_entry_t pte)
 {
-	pt_entry_t r;
-
-	__asm __volatile(
-	    "xchgl %0,%1"
-	    : "=m" (*ptep),
-	      "=r" (r)
-	    : "1" (pte),
-	      "m" (*ptep));
-	return (r);
+	__asm volatile("xchgl %0, %1" : "+m" (*ptep), "+r" (pte));
+	return (pte);
 }
 
 #define	pte_load_clear(pte)	atomic_readandclear_int(pte)


More information about the svn-src-all mailing list