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)
_______________________________________________
[email protected] mailing list
http://lists.freebsd.org/mailman/listinfo/svn-src-all
To unsubscribe, send any mail to "[email protected]"

Reply via email to