From d28c79853ec28eb3ce84675a6a59caba10c39c35 Mon Sep 17 00:00:00 2001 From: Paolo Bonzini Date: Tue, 26 May 2015 15:15:32 +0200 Subject: use = for input/output operands The input side is already handled by the duplicate constraints, and clang rejects usage of "+". Reported-by: David Halls (via github) Signed-off-by: Paolo Bonzini --- include/ioport.h | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'include') diff --git a/include/ioport.h b/include/ioport.h index bbec982..208be41 100644 --- a/include/ioport.h +++ b/include/ioport.h @@ -3,12 +3,12 @@ static inline void outsb(unsigned short port, void *buf, int len) { - asm volatile("rep outsb %%ds:(%0), %3" : "+S" (buf), "+c" (len) : "m"(buf), "Nd"(port), "0" (buf), "1" (len)); + asm volatile("rep outsb %%ds:(%0), %3" : "=S" (buf), "=c" (len) : "m"(buf), "Nd"(port), "0" (buf), "1" (len)); } static inline void insb(void *buf, unsigned short port, int len) { - asm volatile("rep insb %3, %%es:(%0)" : "+D" (buf), "+c" (len), "=m"(buf) : "Nd"(port), "0" (buf), "1" (len)); + asm volatile("rep insb %3, %%es:(%0)" : "=D" (buf), "=c" (len), "=m"(buf) : "Nd"(port), "0" (buf), "1" (len)); } static inline unsigned char inb(unsigned short port) -- cgit v1.1