Gerd Hoffmann (kraxel@redhat.com) just uploaded a new patch set to gerrit, which you can find at http://review.coreboot.org/4033
-gerrit
commit 18f6ebfa4ebcdc10654cdd356bbba773b8153188 Author: Gerd Hoffmann kraxel@redhat.com Date: Thu Nov 7 16:51:24 2013 +0100
add memory clobber to ins{b,w,l}
Change-Id: Ia710eb59f23a52afba2a8ef6e0ff2b2306107245 Signed-off-by: Gerd Hoffmann kraxel@redhat.com --- src/arch/x86/include/arch/io.h | 3 +++ 1 file changed, 3 insertions(+)
diff --git a/src/arch/x86/include/arch/io.h b/src/arch/x86/include/arch/io.h index 50264f6..955d8e2 100644 --- a/src/arch/x86/include/arch/io.h +++ b/src/arch/x86/include/arch/io.h @@ -113,6 +113,7 @@ static inline void insb(uint16_t port, void *addr, unsigned long count) "cld ; rep ; insb " : "=D" (addr), "=c" (count) : "d"(port), "0"(addr), "1" (count) + : "memory" ); }
@@ -122,6 +123,7 @@ static inline void insw(uint16_t port, void *addr, unsigned long count) "cld ; rep ; insw " : "=D" (addr), "=c" (count) : "d"(port), "0"(addr), "1" (count) + : "memory" ); }
@@ -131,6 +133,7 @@ static inline void insl(uint16_t port, void *addr, unsigned long count) "cld ; rep ; insl " : "=D" (addr), "=c" (count) : "d"(port), "0"(addr), "1" (count) + : "memory" ); }