Author: dgorbachev
Date: Wed Dec 3 16:24:29 2008
New Revision: 37840
URL:
http://svn.reactos.org/svn/reactos?rev=37840&view=rev
Log:
Fix Ke386Get(Global|Local|Interrupt)DescriptorTable, Ke386GetTr.
Modified:
trunk/reactos/ntoskrnl/include/internal/i386/intrin_i.h
Modified: trunk/reactos/ntoskrnl/include/internal/i386/intrin_i.h
URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/ntoskrnl/include/internal/…
==============================================================================
--- trunk/reactos/ntoskrnl/include/internal/i386/intrin_i.h [iso-8859-1] (original)
+++ trunk/reactos/ntoskrnl/include/internal/i386/intrin_i.h [iso-8859-1] Wed Dec 3
16:24:29 2008
@@ -16,8 +16,7 @@
#define Ke386GetInterruptDescriptorTable(X) \
__asm__("sidt %0\n\t" \
- : /* no outputs */ \
- : "m" (X));
+ : "=m" (X));
#define Ke386SetGlobalDescriptorTable(X) \
__asm__("lgdt %0\n\t" \
@@ -26,13 +25,11 @@
#define Ke386GetGlobalDescriptorTable(X) \
__asm__("sgdt %0\n\t" \
- : /* no outputs */ \
- : "m" (X));
+ : "=m" (X));
#define Ke386GetLocalDescriptorTable(X) \
__asm__("sldt %0\n\t" \
- : /* no outputs */ \
- : "m" (X));
+ : "=m" (X));
#define Ke386SetLocalDescriptorTable(X) \
__asm__("lldt %w0\n\t" \
@@ -43,8 +40,7 @@
#define Ke386GetTr(X) \
__asm__("str %0\n\t" \
- : /* no outputs */ \
- : "m" (X));
+ : "=m" (X));
#define Ke386SaveFlags(x) __asm__ __volatile__("pushfl ; popl
%0":"=g" (x): /* no input */)
#define Ke386RestoreFlags(x) __asm__ __volatile__("pushl %0 ; popfl": /* no
output */ :"g" (x):"memory")