From 7987a711e8f13c0543e87a0211981f4b40ef6d94 Mon Sep 17 00:00:00 2001 From: Samuel Thibault Date: Fri, 16 Apr 2010 01:09:23 +0200 Subject: Add memory clobbers to segment selector loaders * i386/i386/seg.h (lldt): Add memory clobber to lldt asm snippet. * i386/i386/tss.h (ltr): Add memory clobber to ltr asm snippet. --- i386/i386/seg.h | 2 +- i386/i386/tss.h | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) (limited to 'i386') diff --git a/i386/i386/seg.h b/i386/i386/seg.h index 7f12cc0..a7f6573 100644 --- a/i386/i386/seg.h +++ b/i386/i386/seg.h @@ -146,7 +146,7 @@ MACH_INLINE void lidt(struct pseudo_descriptor *pdesc) } MACH_INLINE void lldt(unsigned short ldt_selector) { - __asm volatile("lldt %w0" : : "r" (ldt_selector)); + __asm volatile("lldt %w0" : : "r" (ldt_selector) : "memory"); } #ifdef CODE16 diff --git a/i386/i386/tss.h b/i386/i386/tss.h index ee0d612..ff25f21 100644 --- a/i386/i386/tss.h +++ b/i386/i386/tss.h @@ -83,7 +83,7 @@ struct task_tss MACH_INLINE void ltr(unsigned short segment) { - __asm volatile("ltr %0" : : "r" (segment)); + __asm volatile("ltr %0" : : "r" (segment) : "memory"); } #endif /* _I386_TSS_H_ */ -- cgit v1.2.3